Ir para o conteúdo
A AmunPay API PixVersão 3.38 · atualizada em Páginas

Extrato

Três leituras do que se moveu: o extrato de um dia encerrado, as transações de agora e o resumo de um período. Todas com escopo ex.extrato.read.

Extrato do dia #

GET /v2/ex/extrato/{data}

Só para dia encerrado. data é o dia contábil em America/Sao_Paulo.

GET /v2/ex/extrato/2026-09-17
→ 200
{
  "data": "2026-09-17",
  "conciliado": false,
  "geradoEm": "2026-09-18T12:00:00.786679Z",
  "totais": {
    "creditos": "650.00",
    "debitos": "0.00",
    "emAberto": { "creditos": "0.00", "debitos": "0.00", "quantidade": 0 }
  },
  "transacoes": [
    {
      "data": "2026-09-17T13:05:00Z",
      "tipo": "DEPOSITO",
      "sentido": "CREDITO",
      "valor": "150.00",
      "referencia": "FIN02J1ZK7M9QW3ERT5TY6UI8O",
      "endToEndId": "E12345678202609181200000000000001",
      "status": "CREDITADO",
      "efetivado": true
    },
    {
      "data": "2026-09-17T13:00:00Z",
      "tipo": "DEPOSITO",
      "sentido": "CREDITO",
      "valor": "500.00",
      "referencia": "FIN01J1ZK7M9QW3ERT5TY6UI8O",
      "endToEndId": "E12345678202609181200000000000002",
      "status": "CREDITADO",
      "efetivado": true
    }
  ],
  "cursor": { "proximo": "", "temMais": false }
}
Campo Tipo Descrição
totais.creditos, totais.debitos string Soma do dia inteiro, não da página, das linhas daquele dia que já efetivaram. A linha é do dia em que nasceu, menos a do saque e a da devolução que saíram, que são do dia em que o dinheiro saiu: o saque pedido num dia e liquidado no seguinte fica no primeiro, em aberto, enquanto não sai, e passa ao segundo quando sai. Se uma linha efetivar depois no mesmo dia, o total daquele dia muda. O depósito conta no dia em que entrou, também se depois voltar ao pagador ou for retido: a devolução e a retenção são linhas próprias, na data delas. Créditos menos débitos de um dia é quanto o seu disponivel variou nele, fora a parte que o split leva.
totais.emAberto objeto O que ficou em aberto: saque não liquidado, depósito que volta ao pagador sem ter virado saldo.
conciliado booleano true quando o dia já foi fechado e conferido do nosso lado. false não invalida as linhas.
geradoEm string Quando o extrato foi lido. Duas leituras do mesmo dia podem diferir nas linhas em aberto.
transacoes[].tipo string DEPOSITO, CREDITO_DE_DEPOSITO (o crédito de um depósito que estava em devolução e foi creditado depois, no dia em que virou saldo), SAQUE, PREMIO, COMISSAO (saque de parceiro de split), DEVOLUCAO, DEVOLUCAO_DE_SAQUE (o que o banco do favorecido devolveu de um saque já realizado), BLOQUEIO (saldo retido por contestação, ordem judicial ou análise de risco), DESBLOQUEIO (o retido que voltou ao saldo), TARIFA, PENALIDADE (a penalidade prevista no contrato, lançada pela instituição) ou CREDITO_AVULSO (um crédito lançado pela instituição, como uma bonificação). Um tipo que você não conhece, trate pelo sentido.
transacoes[].sentido string CREDITO ou DEBITO.
transacoes[].efetivado booleano true se a linha é dinheiro que mudou de mão.
transacoes[].referencia string O txid no depósito, credito:<txid> no crédito de um depósito, o idEnvio no saque, endToEndId:id na devolução, idEnvio:rtrId na volta de um saque, tarifa:<meio>:<referência> na tarifa e bloqueio:<tipo>:<id> ou desbloqueio:<tipo>:<id> na retenção, com o tipo dela (MED, JUDICIAL ou CAUTELAR), e lancamento:<id> na penalidade e no crédito da instituição. A retenção inteira está em GET /v2/ex/bloqueios.
transacoes[].idEnvio string Só nas linhas de um saque que a instituição dividiu em vários Pix (o saque de cada Pix, a tarifa dele e a volta dele): o idEnvio do saque que você pediu. A referência dessas linhas é o idEnvio, um hífen e a parte, como SAQ01J1ZK7M9QW3ERT5TY6UI8O-002.
transacoes[].parte inteiro Só nessas linhas: a posição do Pix no saque, a mesma de pix[].parte em Consultar saque.

O extrato do dia pagina como as listagens: passe cursor.proximo em ?cursor= enquanto cursor.temMais for true.

GET /v2/ex/extrato/{data}/arquivo devolve o mesmo dia em CSV, com o SHA-256 do conteúdo no trailer x-conteudo-sha256. Com ?formato=zip, vem um zip com o mesmo CSV dentro, uns cinco vezes menor, e o trailer continua sendo o SHA-256 do CSV. Outro valor em formato é 400 formato_invalido.

Transações de agora #

GET /v2/ex/transacoes

A janela é de instantes RFC 3339: de entra, ate não. Sem um dos dois, ela fica aberta daquele lado. Depósitos aparecem ao serem creditados; saques e devoluções, ao serem pedidos, com o status do momento, e passam ao instante em que o dinheiro saiu quando saem: confira efetivado.

Para listar só um tipo ou uma situação, passe tipo e situacao: cada um aceita vários valores, separados por vírgula. Um valor que não existe é 400.

GET /v2/ex/transacoes?de=2026-09-18T00:00:00Z&ate=2026-09-18T23:59:59Z&limite=2
→ 200
{
  "transacoes": [
    {
      "data": "2026-09-18T12:00:03.779747Z",
      "tipo": "DEVOLUCAO",
      "sentido": "DEBITO",
      "valor": "50.00",
      "referencia": "E12345678202609181200000000000001:DEV01J1ZK7M9QW3ERT5TY6UI8O",
      "endToEndId": "E12345678202609181200000000000001",
      "status": "EM_PROCESSAMENTO",
      "efetivado": false
    },
    {
      "data": "2026-09-18T12:00:02.774316Z",
      "tipo": "SAQUE",
      "sentido": "DEBITO",
      "valor": "300.00",
      "referencia": "SAQ01J1ZK7M9QW3ERT5TY6UI8O",
      "endToEndId": "E12345678202609181200000000000003",
      "status": "EM_PROCESSAMENTO",
      "efetivado": false
    }
  ],
  "cursor": { "proximo": "MTc4OTcyMzIyMzc2NDAzMH5GSU4w...", "temMais": true }
}

Para o mesmo recorte num arquivo, use GET /v2/ex/transacoes/arquivo com de e ate (obrigatórios, até 31 dias), tipo e situacao. Vem um CSV para planilha, separado por ponto e vírgula, com as mesmas linhas e na mesma ordem; com ?formato=zip, o mesmo CSV num zip. O trailer x-linhas diz quantas transações vieram. Ele não leva o SHA-256: para conciliar, use o arquivo do dia encerrado.

Resumo do período #

GET /v2/ex/resumo

Soma os dias encerrados entre de e ate, ambos AAAA-MM-DD, até 366 dias. Se ate inclui o dia corrente, atePedido diz o que foi pedido e ate o que foi somado.

GET /v2/ex/resumo?de=2026-08-19&ate=2026-09-18
→ 200
{
  "de": "2026-08-19",
  "ate": "2026-09-17",
  "atePedido": "2026-09-18",
  "geradoEm": "2026-09-18T12:00:00.792600Z",
  "totais": {
    "creditos": "650.00",
    "debitos": "0.00",
    "operacoesCredito": 2,
    "operacoesDebito": 0,
    "ticketMedio": "325.00"
  },
  "porDia": [
    { "dia": "2026-09-17", "creditos": "650.00", "debitos": "0.00", "operacoes": 2 }
  ],
  "porTipo": [
    { "tipo": "DEPOSITO", "creditos": "650.00", "debitos": "0.00", "operacoes": 2 }
  ]
}

Dia sem movimento não aparece em porDia. ticketMedio é creditos dividido por operacoesCredito.

Com incluirHoje=true a soma inclui o dia corrente, até o instante da consulta. A resposta traz parcialAte, o instante até onde o dia de hoje foi somado, e ate passa a ser o último dia somado. Esse número muda até a virada do dia.

Achar uma operação por qualquer id #

GET /v2/ex/transacoes/mapear

Recebe em ref um txid, idEnvio, endToEndId, rtrId, a sua referência externa ou o id de uma retenção (o mesmo que GET /v2/ex/bloqueios lista), e diz onde achou. A lista procuradas da resposta é onde o servidor procurou, e inclui domínios internos.

GET /v2/ex/transacoes/mapear?ref=SAQ01J1ZK7M9QW3ERT5TY6UI8O
→ 200
{
  "ref": "SAQ01J1ZK7M9QW3ERT5TY6UI8O",
  "achados": [
    {
      "dominio": "payout",
      "campo": "id_envio",
      "id": "SAQ01J1ZK7M9QW3ERT5TY6UI8O",
      "situacao": "EM_PROCESSAMENTO",
      "valor": "300.00",
      "quando": "2026-09-18T12:00:02Z"
    }
  ],
  "procuradas": ["cobranca", "payout", "devolucao", "devolucao_recebida", "contingencia", "devolvido_pela_parceira", "venda_cartao", "boleto", "infracao", "bloqueio"],
  "naoProcuradas": []
}

Erros #

Status title Quando
400 data_invalida data fora de AAAA-MM-DD.
400 periodo_obrigatorio Resumo sem de ou sem ate.
400 periodo_invalido de ou ate fora do formato, ou de depois de ate.
400 ref_obrigatoria mapear sem ref.
400 ref_invalida ref com mais de 140 caracteres.
422 dia_nao_encerrado Extrato do dia corrente ou futuro. Use as transações.
422 periodo_nao_encerrado Nenhum dia do período encerrou ainda.
422 periodo_longo_demais Resumo acima de 366 dias.