# Listar lançamentos do extrato (/docs/pix-processamento/endpoints/reports/get_user_bank_statements)

## GET /user/bank-statements

`GET https://api.payzu.processamento.com/v1/user/bank-statements`

Lista os lançamentos do extrato da conta. `createdAtFrom` e `createdAtTo` são obrigatórios.

Guia: Conciliação (/docs/pix-processamento/tutoriais/reconciliation)

### Query params

| Field | Type | Required | Details |
| --- | --- | --- | --- |
| `createdAtFrom` | string | yes | Data inicial (obrigatória). — format: date-time |
| `createdAtTo` | string | yes | Data final (obrigatória). — format: date-time |
| `id` | string | no | ID do lançamento. |
| `operation` | string | no | Tipo de operação. `INCREMENT` `DECREMENT` — `INCREMENT`, `DECREMENT` |
| `reason` | string | no | Razão do lançamento. |
| `transactionId` | string | no | ID da transação. |
| `amountFrom` | number | no | Valor mínimo. |
| `amountTo` | number | no | Valor máximo. |
| `page` | integer | no | Número da página. — minimum: 1; default: 1 |
| `limit` | integer | no | Itens por página. — minimum: 1; maximum: 100; default: 10 |
| `sortBy` | string | no | Campo de ordenação. — `createdAt`, `amount`; default: createdAt |
| `sortDirection` | string | no | Direção da ordenação. — `asc`, `desc`; default: desc |

### Responses

**200** Página do extrato.

| Field | Type | Required | Details |
| --- | --- | --- | --- |
| `pagination` | object | no | Página e limite usados, e se há próxima página. |
| `pagination.page` | integer | no | Página devolvida, igual ao parâmetro page enviado na consulta; quando omitido, vale 1. |
| `pagination.limit` | integer | no | Tamanho de página aplicado na consulta; quando omitido vale 10 e o máximo aceito é 100. |
| `pagination.hasNextPage` | boolean | no | Indica se existe página seguinte, detectada buscando um item além do limit. |
| `bankStatements` | object[] | no | Lançamentos da página consultada. |
| `bankStatements.id` | string | no | Identificador do lançamento de saldo. |
| `bankStatements.amount` | number | no | Valor do lançamento. |
| `bankStatements.operation` | string | no | INCREMENT credita o saldo, DECREMENT debita. — `INCREMENT`, `DECREMENT` |
| `bankStatements.reason` | string | no | Motivo do lançamento no extrato. |
| `bankStatements.balanceType` | string | no | Saldo movimentado: AVAILABLE ou BLOCKED. — `AVAILABLE`, `BLOCKED` |
| `bankStatements.previousBalanceAvailable` | number | no | Saldo livre para uso que a conta tinha, em reais, imediatamente antes deste lançamento. |
| `bankStatements.previousBalanceBlocked` | number | no | Saldo bloqueado antes do lançamento, em reais. |
| `bankStatements.newBalanceAvailable` | number | no | Saldo disponível depois do lançamento, em reais. |
| `bankStatements.newBalanceBlocked` | number | no | Saldo bloqueado depois do lançamento, em reais. |
| `bankStatements.transactionId` | string | null | no | Transação que originou o lançamento. |
| `bankStatements.infractionId` | string | null | no | Infração relacionada ao lançamento. |
| `bankStatements.createdAt` | string | no | Data e hora em que a movimentação de saldo foi registrada. — format: date-time |
| `bankStatements.updatedAt` | string | no | Data e hora da última alteração do registro. — format: date-time |

**400** Requisição inválida

| Field | Type | Required | Details |
| --- | --- | --- | --- |
| `status` | string | yes | Marcador fixo de resposta de erro. |
| `error` | string | yes | Nome do status HTTP correspondente. |
| `errorCode` | string | yes | Código de erro estável e legível por máquina, quando disponível. |
| `message` | string | yes | Mensagem de erro legível. |
| `statusCode` | integer | yes | Código de status HTTP. |
| `requestId` | string | yes | ID único de correlação da requisição (cuid). |
| `details` | object[] | no | Erros de validação por campo, quando aplicável. |
| `details.field` | string | yes | Caminho do campo rejeitado na validação, sem a barra inicial. |
| `details.message` | string | yes | Motivo da rejeição daquele campo, em português. |
| `retryAfterSeconds` | integer | no | Segundos a aguardar antes de tentar novamente. |

**401** Falha de autenticação

| Field | Type | Required | Details |
| --- | --- | --- | --- |
| `status` | string | yes | Marcador fixo de resposta de erro. |
| `error` | string | yes | Nome do status HTTP correspondente. |
| `errorCode` | string | yes | Código de erro estável e legível por máquina, quando disponível. |
| `message` | string | yes | Mensagem de erro legível. |
| `statusCode` | integer | yes | Código de status HTTP. |
| `requestId` | string | yes | ID único de correlação da requisição (cuid). |
| `details` | object[] | no | Erros de validação por campo, quando aplicável. |
| `details.field` | string | yes | Caminho do campo rejeitado na validação, sem a barra inicial. |
| `details.message` | string | yes | Motivo da rejeição daquele campo, em português. |
| `retryAfterSeconds` | integer | no | Segundos a aguardar antes de tentar novamente. |