1. Intenção de Pagamento
Brasil Cash API
v3
  • main
  • v3
  • Gateway
    • Autenticação
      • Recebendo um token de acesso
    • Conta
      • Dados da conta
      • Listar transactions
      • Visualizar saldo na conta
    • Intenção de Pagamento
      • API de Pagamentos — Intenção de Pagamento (Payment Intent)
      • Iniciando TEF
        POST
      • Iniciando TED
        POST
      • Iniciando PIX Chave
        POST
      • Iniciando PIX QRCode
        POST
      • Iniciando PIX Manual
        POST
      • Confirmando Intenção de Pagamento
        PUT
      • Lendo dados QRCode
        POST
      • Listando Intenção de Pagamentos
        GET
      • Detalhe de uma Intenção de Pagamento
        GET
    • QRCode
      • Criando um QRCode PIX
      • Static QRCODE
      • Detalhe de um QRCode
      • Inativando um QRCode
    • PIX Dict
      • Listando Chaves PIX
      • Criando Chave PIX
      • Cancelamento de Chave PIX
    • MED
    • Webhooks
  • BaaS
    • BrasilCash BaaS — API do Parceiro (v1)
    • Onboardings
      • Listar Onboardings
      • Criar link de onboarding
    • Contas
      • Listar Contas
      • Detalhar Conta
      • Criar credencial para uma conta
  • Esquemas
    • PIX
      • ReceiverPayer
      • Pix Initiate
      • Pix Consulta
      • Paginação
    • Pagador/Recebedor
    • ApplicationError
  1. Intenção de Pagamento

API de Pagamentos — Intenção de Pagamento (Payment Intent)

Visão geral#

A intenção de pagamento (payment intent) é o registro que você cria antes de mover dinheiro: ela guarda o que será pago, passa por aprovação e autorização e só então é enviada para liquidação.
TipoQuando usar
PIXPagamento instantâneo, por chave, por QR Code ou com dados bancários informados manualmente
TEDTransferência para conta em outro banco, com dados bancários completos
TEFTransferência entre contas da mesma instituição
Todos os valores são inteiros em centavos: R$ 150,75 é enviado como 15075. A taxa é calculada na criação, de acordo com o plano da conta, e devolvida em feeAmount. O campo totalAmount é sempre amount + feeAmount.
O fluxo, do início ao fim:

Fluxo de pagamento#

O fluxo de pagamentos PIX ocorre de acordo com os passos abaixo:
1
Iniciação ou Intenção de pagamento PIX
A iniciação do PIX é responsável por validar os dados da transação e gerar uma solicitação de pagamento. O destinatário pode ser identificado por meio de chave PIX, QR Code ou dados bancários. Após a validação, a transação será criada com status inicial de pendente (pending) de confirmação.
2
Confirmação do PIX
A confirmação do PIX autoriza a liquidação financeira da transação. Após a confirmação, o valor será debitado da conta de origem e enviado para processamento pela instituição financeira responsável. O status da transação será atualizado até sua conclusão, recusa ou eventual devolução.
Essa etapa pode ser assíncrona e a confirmação será recebida via webhook.
3
Recebimento do resultado via Webhook
Receber o resultado por webhook, ou consultar a intenção a qualquer momento.

Webhooks#

A BrasilCash avisa o seu sistema por HTTP POST quando uma operação muda de estado, e o customerRef informado na criação volta no evento para você identificar o pedido.
Para cadastrar um webhook, chame POST /api-keys/{apiKeyId}/webhooks com a url e a lista eventTypes. A resposta traz o secret (formato whsec_...) uma única vez. Guarde-o: ele é a base da validação descrita abaixo.
EventoSignificado
pix.outPIX enviado pela sua conta
ted.outTED enviada pela sua conta
tef.outTEF enviada pela sua conta
pix.inPIX recebido na sua conta
ted.inTED recebida na sua conta
tef.inTEF recebida na sua conta

Validar a origem#

Cada envio inclui o header X-Signature, com o hash SHA-256, em hexadecimal minúsculo, do secret do webhook. Para validar, calcule o SHA-256 do secret que você guardou e compare com o header em tempo constante, nunca com ==.
Se a validação falhar, responda 401 e não processe o evento. Responda 2xx o mais rápido possível quando o evento for válido e faça o processamento pesado depois.
A assinatura é a mesma em todos os envios do mesmo webhook, porque não depende do corpo da mensagem. Ela confirma que o evento veio da BrasilCash, mas não detecta alteração do conteúdo no caminho, por isso use sempre uma URL HTTPS. Se o secret vazar ou for perdido, gere um novo em POST /api-keys/{apiKeyId}/webhooks/{id}/regenerate-secret; o anterior deixa de valer.

Erros e boas práticas#

A maioria dos erros vem de dados inválidos ou de uma ação fora do momento certo do ciclo de vida, e a API responde com um status HTTP e uma mensagem.
StatusQuando acontece
400 Bad RequestDado inválido ou regra violada: valor zero, senha transacional inválida ou expirada, intenção expirada, ação que o status atual não permite
401 UnauthorizedCredenciais inválidas, token ausente ou expirado
403 ForbiddenChave autenticada, mas sem permissão para a operação
404 Not FoundIntenção inexistente

Boas práticas#

Envie idempotencyKey em toda criação e reutilize a mesma chave ao repetir uma chamada que deu timeout. Sem ela, uma nova tentativa pode gerar um pagamento duplicado.
Use customerRef para ligar a intenção ao pedido do seu sistema. Ele volta nos webhooks e no comprovante.
Trate cada webhook como se pudesse chegar mais de uma vez, e confirme o estado com GET /payments/{id} se um evento não chegar.
Crie uma intenção nova quando a anterior expirar: ela fica expired após 24 horas sem aprovação ou 5 minutos sem autorização.
Guarde clientSecret, password e o secret do webhook em um cofre de segredos, nunca no código-fonte.

Status da Intenção de Pagamento#

As transações PIX podem assumir os seguintes status durante seu ciclo de vida:
StatusDescrição
AuthorizedPIX iniciado e aguardando confirmação do pagamento.
ProcessingPIX enviado para processamento junto à instituição financeira.
CompletedPagamento PIX realizado com sucesso.
FailedPagamento PIX recusado pela instituição financeira.
RefundedValor do PIX devolvido ao pagador.

Fluxo de status#

Modificado em 2026-10-20 16:28:17
Página anterior
Visualizar saldo na conta
Próxima página
Iniciando TEF
Built with