Skip to main content

Cash-in (domínio)

Além de PENDING, PAID, EXPIRED e FAILED, o sistema pode transitar por estados intermediários ou não conclusivos quando o retorno do parceiro não é imediato ou há falha de rede.
StatusSignificado
PENDINGAguardando pagamento ou confirmação.
PAIDRecebimento confirmado (sucesso financeiro usual para “pedido pago”).
EXPIREDQR/cobrança expirou sem pagamento.
FAILEDFalha definitiva (conforme mapeamento do webhook do parceiro).
PROVIDER_RESULT_UNKNOWNResposta ambígua (ex.: timeout); sujeito a reconciliação.
RECONCILIATION_REQUIREDEm análise após tentativas; ainda pode convergir a PAID ou FAILED.
Mapeamento CashIn (webhook de parceiro) → status interno de cash-in (documento de origem):
status no webhookStatus interno cash-in
CONFIRMEDPAID
FAILED, CANCELLED, REJECTED, ERRORFAILED
Integração prática: trate PAID como sucesso de recebimento para liberar o pedido; monitore PENDING prolongado e estados não terminais (boas práticas).

Cash-out (domínio)

O fluxo completo envolve reserva, despacho e liquidação.
StatusSignificado resumido
CREATED / RESERVED / DISPATCH_PENDINGPipeline interno até aceite do parceiro.
DISPATCHEDParceiro aceitou o envio; aguarda webhook final.
CONFIRMEDTransferência confirmada (término de sucesso usual).
FAILEDFalha definitiva; reserva liberada conforme regras.
RELEASEDReserva liberada após falha.
PROVIDER_RESULT_UNKNOWNResultado ambíguo na chamada ao parceiro.
RECONCILIATION_REQUIREDRequer intervenção ou consulta de status.
REVERSEDDevolução após confirmação (pós-CONFIRMED).
PENDINGLegado; mantido para compatibilidade com fluxos antigos.
Mapeamento CashOut (webhook de parceiro) → status interno (origem):
status no webhookStatus interno
CONFIRMEDCONFIRMED
FAILED, …FAILED
A resposta imediata do POST pode refletir o estado no momento do commit (não necessariamente apenas a palavra PENDING).

Refund-in (domínio)

StatusDescrição
PENDINGSolicitação aceita; aguarda webhook.
CONFIRMEDDevolução confirmada.
FAILEDDevolução rejeitada.
PROVIDER_RESULT_UNKNOWNAmbiguidade; a reconciliação pode aplicar resultado.
RECONCILIATION_REQUIREDEsgotadas tentativas automáticas sem conclusão clara.

Terminalidade (orientação prática)

  • Tendencialmente terminais de negócio: PAID, EXPIRED, FAILED (cash-in); CONFIRMED, FAILED, REVERSED (cash-out); CONFIRMED, FAILED (refund) — ajuste conforme a sua política de REVERSED e conciliação.
  • Não trate como concluso: PROVIDER_RESULT_UNKNOWN e RECONCILIATION_REQUIRED (e pipeline intermediário de cash-out) — use consultas, webhooks e reconciliação.

Ver também