---
title: "Listar extrato"
method: GET
path: "/bank-statement/list"
---

# Listar extrato

`GET /bank-statement/list`

## Request

- Base URL: `https://api.abacatepay.com/v2`
- URL: `https://api.abacatepay.com/v2/bank-statement/list`
- Auth: HTTP bearer

Retorna as transações que movimentaram o saldo da conta, da mais recente para a mais antiga. Cada item traz as movimentações geradas pela transação, como a entrada do valor e a saída da taxa.

Sem `status`, transações `PENDING` ficam de fora. Sem `kind`, movimentações internas que não alteram o saldo disponível ficam de fora. Informar um desses filtros substitui a regra padrão correspondente.

## Query parameters

- `after` string
- `before` string
- `limit` integer
- `startDate` string, date
- `endDate` string, date
- `status` 'PENDING' | 'APPROVED' | 'EXPIRED' | 'CANCELLED' | 'COMPLETE' | 'REFUNDED' | 'REDEEMED' | 'UNDER_DISPUTE' | 'FAILED'
- `method` 'PIX' | 'PIX_QRCODE' | 'CARD' | 'BOLETO' | 'TED' | 'INTERNAL'
- `kind` string
- `search` string

## Response `200`

Extrato retornado com sucesso.

- object
  - `data` BankStatementItem[]: Transações do extrato.
    - `id` string, required: ID da transação na AbacatePay.
    - `movements` BankStatementMovement[], required: Movimentações de saldo geradas pela transação. Um pagamento recebido gera a entrada do valor e a saída da taxa.
      - `amount` integer, required: Valor em centavos, sempre positivo. O sentido vem de `balanceEffect`.
      - `kind` string, required: Tipo da movimentação (ex.: `DEPOSIT`, `WITHDRAW`, `CARD_APPROVED`).
      - `method` 'PIX' | 'PIX_QRCODE' | 'CARD' | 'BOLETO' | 'TED' | 'INTERNAL', required
      - `description` string, required: Descrição legível, a mesma exibida no dashboard.
      - `category` 'transaction' | 'withdrawal' | 'refund' | 'fee' | 'reversal', required: `transaction` para entradas e movimentações de pagamento, `withdrawal` para saques e PIX enviados, `refund` para estornos, `fee` para taxas e `reversal` para desfazimentos.
      - `balanceEffect` 'credit' | 'debit' | 'none', required: Efeito no saldo disponível. `none` aparece no recebível de cartão aprovado, que só entra no saldo disponível na liquidação.
    - `currency` string, required: Moeda da transação.
    - `createdAt` string, date-time, required: Data/hora de criação (ISO 8601).
    - `checkoutId` string, nullable, required: Checkout de origem, quando a transação veio de um pagamento. `null` em saques.
    - `paymentIntentId` string, nullable, required: Cobrança de origem, quando existe. `null` em saques.
    - `referenceId` string, nullable, required: O `externalId` informado ao criar a operação (ex.: um saque ou PIX).
    - `customer` object, nullable, required: Cliente vinculado à cobrança. Sem cliente cadastrado, traz apenas `name` e `taxId` de quem pagou. `null` quando não há nenhum dado.
      - `publicId` string: ID do cliente na AbacatePay.
      - `name` string
      - `email` string
      - `taxId` string: CPF ou CNPJ.
      - `cellphone` string
      - `zipCode` string
  - `success` boolean: Se a requisição obteve sucesso ou não.
  - `error` string, nullable
  - `pagination` PaginationCursor: Informações de paginação baseada em cursor.
    - `hasMore` boolean, required: Indica se existe uma próxima página.
    - `next` string, nullable, required: Cursor da próxima página (usar em `after`). `null` na última página.
    - `before` string, nullable, required: Cursor da página anterior (usar em `before`). `null` na primeira página.

## Other responses

- `401`: Não autorizado. Falha na autenticação.

## Changes

- **2026-09-30** `71bf4a290258`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/abacatepay/apis/api-abacatepay/changes/bank-statement/list/get.md)

---

[API](https://skmtc.dev/abacatepay/apis/api-abacatepay.md) - [All operations](https://skmtc.dev/abacatepay/apis/api-abacatepay/llms.txt) - [OpenAPI document](https://skmtc.dev/abacatepay/apis/api-abacatepay/revisions/8be803988b57?raw)
