Simular pagamentos
Referência
Pagar em sandbox simula a confirmação bancária de uma cobrança pendente criada em ambiente sandbox, sem esperar por um pagamento real. É a forma de testar de ponta a ponta o fluxo de confirmação (mudança de status da cobrança e o webhook payment.success) sem sair do sandbox.
chargeId de uma cobrança de uma conta de produção (accountNumber que não começa com SANDBOX_) é recusado com 400 NOT_SANDBOX_ACCOUNT.Como funciona
POST /v1/wallet/pay/:chargeId, sem corpo. O chargeId é o identificador retornado na criação da cobrança.
A API busca a cobrança pelo chargeId. Se não existir, responde 404 CHARGE_NOT_FOUND.
Se a cobrança já estiver paga, responde 200 de forma idempotente, sem gerar nenhum evento novo.
Se a conta dona da cobrança não for sandbox, responde 400 NOT_SANDBOX_ACCOUNT.
Caso contrário, monta um evento de PIX recebido no mesmo formato que a Celcoin envia em produção (com dados fictícios) e o processa pelo mesmo pipeline interno de webhooks usado para pagamentos reais.
Responde imediatamente 200 com status: "PROCESSING". A confirmação definitiva (cobrança PAID e o webhook payment.success) acontece de forma assíncrona, igual a um pagamento de verdade.
Respostas possíveis
| Situação | HTTP | Corpo |
|---|---|---|
| chargeId não existe | 404 | error.code: CHARGE_NOT_FOUND |
| Conta da cobrança não é sandbox | 400 | error.code: NOT_SANDBOX_ACCOUNT |
| Cobrança já estava paga | 200 | message, chargeId, status: "PAID" |
| Simulação disparada com sucesso | 200 | chargeId, status: "PROCESSING", message |
{
"chargeId": "cha_1774530966959_frgj3ptax",
"status": "PROCESSING",
"message": "Evento enviado para processamento"
}{
"message": "Cobranca ja foi paga",
"chargeId": "cha_1774530966959_frgj3ptax",
"status": "PAID"
}Erros seguem o envelope padrão da API:
{
"error": {
"message": "simulatePayment disponivel apenas para contas sandbox",
"code": "NOT_SANDBOX_ACCOUNT",
"details": null,
"timestamp": "2026-07-14T21:39:36.322Z"
}
}Para quais cobranças funciona
- •Funciona com cobranças
PENDINGde pix e pix_automatico geradas pelo Checkout Transparente, e também com a cobrança PIX de Cobrança Imediata: são os casos em que a cobrança fica aguardando confirmação bancária. - •Também confirma uma cobrança de boleto sandbox pendente, porque a simulação localiza a cobrança pelo identificador interno da transação, não pelo método de pagamento originalmente escolhido.
- •Cobrança de cartão não se beneficia disso: no sandbox, o cartão já nasce aprovado na criação da cobrança. Chamar este endpoint nela apenas confirma o que já é verdade, retornando o efeito idempotente "Cobranca ja foi paga".