---
updatedAt: 2026-04-06T17:17:20.000Z
agentTools:
  projectIndex: https://docs.pagar.me/v4/llms.txt
---

# Extrato

O extrato é a representação detalhada do saldo Pagar.me, apresentando valores recebidos, descontados e à receber, dessa maneira extrato nada mais é do que um compilado dos [recebíveis](https://docs.pagar.me/docs/receb%C3%ADveis) e das [operações de saldo](https://docs.pagar.me/docs/opera%C3%A7%C3%B5es-de-saldo). O extrato é dividido em dois, sendo um deles o atual, ou seja todos os valores já liquidados, e o outro o à receber. Ambos os extratos possuem informações referentes às movimentações de saldo separadas dia-a-dia, exibindo cada valor positivo, cada valor negativo e o saldo final do dia.

## Extraindo o extrato através da API

**Extrato atual**

Para reconstruir o extrato atual é necessário utilizar as informações contidas na rota [/balance\_operations](https://docs.pagar.me/reference#hist%C3%B3rico-das-opera%C3%A7%C3%B5es) que se refere as [operações de saldo](https://docs.pagar.me/docs/opera%C3%A7%C3%B5es-de-saldo).

O primeiro passo é buscar as operações referentes ao período que deseja reconstruir através de um GET informando a data de início (start\_date) e de fim (end\_date), ambas no formato timestamp com milissegundos.

```json
{
    "api_key": "CHAVE_DE_API",
    "start_date":"1598335908000",
    "end_date":"1601014308000"
}
```

> 🚧 Atenção
>
> A API irá retornar apenas 10 itens por vez caso parâmetro "count" não seja informado, sendo que o mesmo tem o limite de 1000 itens por busca. Para paginar os resultados é necessário utilizar o parâmetro "page".

O retorno dessa busca será um vetor de objetos.

```json Balance_Operations
[
    {
        "object": "balance_operation",
        "id": 12979989,
        "status": "available",
        "balance_amount": 0,
        "balance_old_amount": null,
        "type": "payable",
        "amount": 10000,
        "fee": 380,
        "date_created": "2020-09-01T18:27:29.016Z",
        "movement_object": {
            "object": "payable",
            "id": 11491515,
            "status": "paid",
            "amount": 10000,
            "fee": 380,
            "anticipation_fee": 0,
            "fraud_coverage_fee": 0,
            "installment": null,
            "transaction_id": 9646500,
            "split_rule_id": null,
            "bulk_anticipation_id": null,
            "recipient_id": "re_cjsklmm5k00qu2j6exqej7tss",
            "originator_model": null,
            "originator_model_id": null,
            "payment_date": "2020-09-01T03:00:00.325Z",
            "original_payment_date": null,
            "type": "credit",
            "payment_method": "boleto",
            "accrual_date": null,
            "date_created": "2020-09-01T18:27:28.358Z"
        }
    },
    {
        "object": "balance_operation",
        "id": 12904870,
        "status": "available",
        "balance_amount": 0,
        "balance_old_amount": null,
        "type": "payable",
        "amount": 10000,
        "fee": 380,
        "date_created": "2020-08-26T15:00:46.115Z",
        "movement_object": {
            "object": "payable",
            "id": 11418966,
            "status": "paid",
            "amount": 10000,
            "fee": 380,
            "anticipation_fee": 0,
            "fraud_coverage_fee": 0,
            "installment": null,
            "transaction_id": 9592696,
            "split_rule_id": null,
            "bulk_anticipation_id": null,
            "recipient_id": "re_cjsklmm5k00qu2j6exqej7tss",
            "originator_model": null,
            "originator_model_id": null,
            "payment_date": "2020-08-26T03:00:00.892Z",
            "original_payment_date": null,
            "type": "credit",
            "payment_method": "boleto",
            "accrual_date": null,
            "date_created": "2020-08-26T15:00:45.928Z"
        }
    }
]
```

Após buscar todas as operações do período desejado, é necessário filtrar por recebedor (movement\_object.recipient\_id) as informações que irão compor o extrato, no caso da dashboard essas informações seriam: valor (amount), taxa (fee), data de criação (date\_created), tipo de movimentação (movement\_object.payment\_method ou movement\_object.type) e id da transação (movement\_object.transaction\_id ou movement\_object.id).

Todas as operações de saldo são agrupadas de acordo com a sua data de criação, sendo que cada uma é detalhada de acordo com sua origem (no caso de movientações originadas de transações o transaction\_id nos demais casos apenas id), o tipo de movimentação (payment\_method ou type), valor bruto (amount), taxa (fee), valor líquido (amount subtraindo o fee)

![1151](https://files.readme.io/3a0a592-extratoexemploreal.png "extratoexemploreal.png")

Somando todos os valores líquidos do dia temos o balanço diário.

![1148](https://files.readme.io/0a02f87-extratocollapse.png "extratocollapse.png")

**Extrato à receber**

Para reconstruir o extrato à receber é necessário utilizar as informações contidas na rota [/payables](https://docs.pagar.me/reference#retornando-receb%C3%ADveis) que se refere aos [recebíveis](link).

O primeiro passo é buscar os payables referentes ao período que deseja reconstruir através de um GET informando a data de início e de fim utilizando os operadores maior igual (>=) e menor igual (<=). É importante se atentar que o formato a ser enviado é timestamp com milissegundos.

> 📘 Requisição
>
> ```shell
> curl -X GET https://api.pagar.me/1/payables \
> -d 'api_key=CHAVE_DE_API'
> -d 'recipient_id'='re_cjsklmm5k00qu2j6exqej7tss'
> -d 'payment_date=>=1601014308000'
> -d 'payment_date=<=1603606308000'
> ```
>
> ```shell
> https://api.pagar.me/1/payables?payment_date=>=1601014308000&payment_date=<=1603606308000&recipient_id=re_cjsklmm5k00qu2j6exqej7tss&api_key=CHAVE_DE_API
> ```

> 🚧 Atenção
>
> A API irá retornar apenas 10 itens por vez caso parâmetro "count" não seja informado, sendo que o mesmo tem o limite de 1000 itens por busca. Para paginar os resultados é necessário utilizar o parâmetro "page".

O retorno dessa busca será um vetor de objetos.

```json Payables
[
    {
        "object": "payable",
        "id": 11797463,
        "status": "waiting_funds",
        "amount": 3000,
        "fee": 150,
        "anticipation_fee": 0,
        "fraud_coverage_fee": 0,
        "installment": 1,
        "transaction_id": 9831494,
        "split_rule_id": "sr_ckfee8h610fqoou6d4tjtgo9u",
        "bulk_anticipation_id": null,
        "recipient_id": "re_cjsklmm5k00qu2j6exqej7tss",
        "originator_model": null,
        "originator_model_id": null,
        "payment_date": "2020-10-23T03:00:00.000Z",
        "original_payment_date": null,
        "type": "credit",
        "payment_method": "credit_card",
        "accrual_date": "2020-09-22T20:10:53.859Z",
        "date_created": "2020-09-22T20:10:53.944Z"
    },
	{
        "object": "payable",
        "id": 11149083,
        "status": "waiting_funds",
        "amount": -100,
        "fee": -5,
        "anticipation_fee": 0,
        "fraud_coverage_fee": 0,
        "installment": 2,
        "transaction_id": 9445499,
        "split_rule_id": "sr_ckdp5xtsj01neyn6daqqn7ubw",
        "bulk_anticipation_id": null,
        "recipient_id": "re_cjsklmm5k00qu2j6exqej7tss",
        "originator_model": "refund",
        "originator_model_id": "rf_ckdp5yn28069xk13spgbkell2",
        "payment_date": "2020-10-13T03:00:00.000Z",
        "original_payment_date": null,
        "type": "refund",
        "payment_method": "credit_card",
        "accrual_date": null,
        "date_created": "2020-08-10T23:45:20.997Z"
    }
]
```

Após buscar todos os recebíveis do período desejado, é necessário selecionar as informações que irão compor o extrato, no caso da dashboard essas informações seriam: valor (amount), taxa (fee), data de pagamento (payment\_date), tipo de movimentação (type) e id da transação (transaction\_id).

Todos os recebíveis são agrupados de acordo com a sua data de pagamento, sendo que cada registro é detalhado de acordo com sua origem (transaction\_id), o tipo de movimentação (type), valor bruto (amount), taxa (fee), valor líquido (amount subtraindo o fee).

![1151](https://files.readme.io/a9f810a-extratofuturo.png "extratofuturo.png")

Somando todos os valores líquidos do dia temos o balanço diário.

![1147](https://files.readme.io/caf8b7c-extratofuturocollapse.png "extratofuturocollapse.png")