Skip to main content
Este guia descreve como consultar ordens e payouts de Split de Pagamentos e como solicitar o processamento forçado ou o cancelamento de um payout.

Conceitos

  • Ordem de split: registra a divisão associada a um cash-in recebido. Uma ordem pode conter um ou mais payouts.
  • Payout: valor destinado a um beneficiário, com uma instrução de transferência e um estado próprio.
  • Origem das instruções: em cash-ins PIX, as instruções do QR Code são usadas quando presentes. Se não houver instruções no QR Code, o sistema consulta a configuração de split da conta recebedora. Sem instrução e sem configuração, não é gerada uma ordem de split para aquele fluxo.
  • Base do split: valor bruto do cash-in menos a tarifa, quando a cobrança da tarifa antes do split estiver habilitada.
Payouts com data de pagamento futura ficam agendados. Payouts elegíveis para a data corrente podem seguir para processamento sem uma chamada manual. A API permite consultar o andamento e, quando aplicável, solicitar novamente o processamento ou cancelar a operação.
Payouts só podem ser agendados através das instruções de split na criação do qr code.

Endpoints

Prefixo comum: /baas/api/v1/split-payments

Consultar ordens

Use GET /orders para buscar uma ordem específica ou listar as ordens da conta. id e transactionId são mutuamente exclusivos. Quando nenhum dos dois é informado, a resposta será uma listagem paginada.
A consulta individual retorna HTTP 200 e uma ordem com seus payouts. Se a ordem não existir ou não pertencer à conta da credencial, a API retorna 404. Informar id e transactionId juntos retorna 400. A listagem também retorna HTTP 200; por padrão, o corpo é um array. Para receber metadados de paginação no corpo, use include=metadata. Nesse formato, os itens ficam em data e os metadados em metadata.

Consultar payouts

Use GET /payouts para consultar payouts da conta vinculada à credencial, com filtros opcionais.
Cada payout pode incluir campos como id, splitOrderId, beneficiary, transferType, instructionType, instructionAmount, amount, paymentDate, status, transactionId, endToEndId, errorMessage, cancellationDetails, paidAt, createdAt e updatedAt. A resposta também pode incluir um resumo da ordem em splitOrder. Os estados representam:
  • PENDING: aguardando processamento;
  • PROCESSING: em processamento;
  • SUCCESS: concluído;
  • ERROR: falha;
  • SCHEDULED: agendado;
  • CANCELED: cancelado.
Use o campo status.name ou status.description quando precisar identificar o estado da operação. O valor numérico do enum não é o identificador mais legível para a lógica de integração.

Solicitar processamento

Use POST /payouts/process para reenviar um ou mais payouts para processamento quando eles estiverem elegíveis.
Payouts elegíveis para solicitação de processamento podem estar nos estados PENDING, SCHEDULED e ERROR. A resposta 202 Accepted confirma que a solicitação foi recebida, mas não que a transferência foi concluída. Consulte GET /payouts para acompanhar a evolução do estado.
Envie apenas IDs pertencentes à conta autenticada. IDs inexistentes, de outra conta ou em estados não elegíveis podem ser ignorados sem rejeição individual na resposta.

Cancelar payout

Use PATCH /payouts/cancel para solicitar o cancelamento de um payout em SCHEDULED ou ERROR.
splitPayoutId identifica o payout; reason registra o motivo e canceledBy identifica quem solicitou o cancelamento. Se canceledBy não for informado, a API registra Não informado. Em caso de sucesso, a resposta é 202 Accepted; o estado passa para CANCELED e os dados ficam disponíveis em cancellationDetails na consulta de payouts.

Fluxo de alto nível

Boas práticas de integração

  1. Guarde transactionOriginalId e id da ordem para conciliar os payouts com o cash-in.
  2. Use GET /orders?transactionId=... para localizar a ordem pela transação original e GET /payouts para acompanhar cada beneficiário.
  3. Trate o processamento como assíncrono: após uma resposta 202, consulte novamente o payout até obter o estado final.
  4. Solicite cancelamento apenas para payouts em SCHEDULED ou ERROR; pagamentos já em processamento ou concluídos não são cancelados por esta rota.
  5. Solicite o processamento forçado apenas quando o payout ficou travado em PENDING, quando houver erro elegível para reprocessamento ou quando for necessário antecipar um payout agendado.

Referência da API

Consultar Ordens de Split

GET /baas/api/v1/split-payments/orders

Consultar Split Payouts

GET /baas/api/v1/split-payments/payouts

Cancelar Split Payout

PATCH /baas/api/v1/split-payments/payouts/cancel