Skip to main content
Cada ordem passa por uma sequência determinística de estados. Webhooks são emitidos em cada transição relevante.

Estados

StatusSignificado
PENDINGOrdem criada, aguardando confirmação interna antes de gerar instrução de pagamento.
AWAITING_PAYMENTQR Code PIX gerado — aguardando pagamento do receiver (payin).
PAYMENT_RECEIVEDPIX confirmado; plataforma inicia conversão.
SWAPPINGSwap on-chain em andamento (Jupiter DEX).
TRANSFERRINGTransferência de crypto para a wallet destino em andamento.
AWAITING_DEPOSITEndereço de depósito gerado — aguardando crypto do receiver (payout).
DEPOSIT_RECEIVEDDepósito on-chain confirmado; plataforma inicia envio do PIX.
PIX_SENDINGPIX outbound sendo enviado via 3xPay.
PIX_SENT_UNCONFIRMEDPIX enviado, confirmação final pendente (reconciliação manual possível).
COMPLETEDFluxo concluído com sucesso.
FAILEDErro irrecuperável; consulte failureReason.
EXPIREDOrdem expirou sem ação do receiver.
REFUNDINGEstorno em andamento.
REFUNDEDEstorno concluído (PIX devolvido ao receiver).

Fluxo Payin (BRL → Crypto)

PENDING ──► AWAITING_PAYMENT ──► PAYMENT_RECEIVED ──► SWAPPING ──► TRANSFERRING ──► COMPLETED
                │                       │                                │
                └──► EXPIRED            └──► REFUNDING ◄────────────────┘

                                           REFUNDED
PAYMENT_RECEIVED → TRANSFERRING ocorre quando o token destino é USDC (sem swap necessário).

Fluxo Payout (Crypto → BRL)

PENDING ──► AWAITING_DEPOSIT ──► DEPOSIT_RECEIVED ──► PIX_SENDING ──► COMPLETED
                │                       │                   │
                └──► EXPIRED            └──► REFUNDING      └──► PIX_SENT_UNCONFIRMED ──► COMPLETED

                                           REFUNDED
DEPOSIT_RECEIVED → SWAPPING → PIX_SENDING quando o depósito não é em USDC e precisa de swap antes do PIX.

Timing

  • Payin PIX: confirmação em segundos após o pagamento.
  • Swap on-chain: ~10–30 s na rede Solana.
  • PIX outbound (payout): segundos no horário comercial; pode levar alguns minutos fora.

Webhooks emitidos

EventoTipoTransição
order.payment_receivedPAYINAWAITING_PAYMENTPAYMENT_RECEIVED
order.processingPAYOUTDepósito aceito; PIX de saída enfileirado
order.deposit_receivedPAYOUTAWAITING_DEPOSITDEPOSIT_RECEIVED
order.pix_sendingPAYOUTPIX submetido ao provedor
order.completedPAYIN / PAYOUTCOMPLETED
order.failedPAYIN / PAYOUTFAILED
order.refundingPAYINREFUNDING
order.refundedPAYINREFUNDED
Consulte Eventos de webhook para payloads completos.