---
title: "Balance statement: ledger entries or grouped operations"
method: GET
path: "/saldo/extrato"
tags: ["Conta"]
---

# Balance statement: ledger entries or grouped operations

`GET /saldo/extrato`

## Request

- Base URL: `https://api.luniumpay.com`
- URL: `https://api.luniumpay.com/saldo/extrato`
- Auth: API key in header `X-API-Key`

Use visao=operacoes for end-user activity: one signed total per operation and a single nested fee (tipo=servico, descricao=Taxa), including the PIX tariff and all fee components. Refunds remain separate. Group before pagination and deduplicate notifications by origem_id and tipo, never by accounting fee entries. Never present debits/fees as income or subtract fees again. Projects configured for consolidated presentation also receive this view by default; visao=movimentos explicitly selects the accounting view for backend reconciliation. Other projects retain individual accounting entries by default. Sandbox follows the same behavior. Internal fee ownership and component fields must not be forwarded to end-user notifications. See https://docs.luniumpay.com/en/manual.html#extrato-por-operacao.

## Query parameters

- `customer_ref` string
- `limit` integer
- `visao` 'lancamentos' | 'operacoes'
- `before` string

## Response `200`

OK

- object
  - `movimentos` object[]
    - `id` string
    - `valor_cents` integer: Signed total effect on BRL balance in cents. Negative debit, positive credit. Grouped view already includes fees.
    - `sentido` 'credito' | 'debito'
    - `tipo` 'cashin' | 'payout' | 'cashout' | 'estorno' | 'ajuste' | 'transfer_in' | 'transfer_out'
    - `origem_tipo` string, nullable
    - `origem_id` string, nullable
    - `disponivel_em` string, date-time
    - `disponivel` boolean
    - `descricao` string, nullable
    - `criado_em` string, date-time
    - `customer_ref` string, nullable
    - `valor_operacao_cents` integer: Grouped view: signed principal. Zero for an orphan fee adjustment.
    - `taxas_cents` integer: Grouped view: absolute sum of included fee entries, not an additional debit.
    - `taxas` object[]: Customer fee breakdown: fixed PIX tariff and combined service fee only. Partner markup is included in servico.
      - `tipo` 'servico', required
      - `descricao` string, required
      - `valor_cents` integer, required
      - `efeito_saldo_cents` integer, required
    - `status` string, nullable
    - `status_label` string, nullable: Stored state at query time. Labels are Portuguese.
    - `settlement_status` string, nullable
    - `movimentos_ids` string[]: Grouped view: original ledger IDs for reconciliation, not extra activity rows.
    - `atualizado_em` string, date-time, nullable
  - `proxima_pagina` string, nullable
  - `visao` 'operacoes': Only present for grouped view.
  - `has_more` boolean: Grouped view: whether another page exists. Cursor is null on the last page.

## Other responses

- `400`: Grouped view: malformed limit or before cursor.
- `401`: Missing or invalid key

---

[API](https://skmtc.dev/luniumpay/apis/lunium-crypto-pix-settlement-brazil.md) · [All operations](https://skmtc.dev/luniumpay/apis/lunium-crypto-pix-settlement-brazil/llms.txt) · [OpenAPI document](https://skmtc.dev/luniumpay/apis/lunium-crypto-pix-settlement-brazil/revisions/0b5a340fa9dd?raw)
