Skip to main content
O Payment representa o pagamento de um Order. Cada Order pertence a uma única empresa e possui exatamente um Payment. O status evolui conforme o processamento avança no provedor de pagamento.

State Machine

PaymentStatus

O PaymentStatus espelha o ciclo de vida da cobrança no provedor (default PENDING). Os estados operacionais principais:
StatusDescrição
PENDINGPagamento criado, aguardando processamento
PROCESSINGEm processamento no provedor
PAIDPagamento confirmado
PAYMENT_FAILEDRecusado ou falhou
REFUNDEDEstornado após confirmação
CHARGEDBACKSofreu chargeback
O ciclo também contempla estados de antifraude e divergência de valor, como ANTIFRAUD_*, UNDERPAID, OVERPAID, PARTIAL_CANCELED e CANCELED. A lista completa está em data-modelling/Payment.

PaymentMethod

MétodoDescrição
CASHDinheiro
PIXTransferência instantânea via PIX
CREDIT_CARDCartão de crédito
DEBIT_CARDCartão de débito
Boleto não faz parte dos métodos aceitos no modelo atual.

PaymentChannel

CanalDescrição
ONLINEPagamento criado no canal digital
POSPagamento criado em venda presencial ou guichê

Criação e confirmação

O Payment pode nascer já confirmado (registro de um pagamento já efetuado) ou pendente (cobrança criada no provedor, confirmada depois). A confirmação assíncrona chega via webhook.
  • A confirmação assíncrona atualiza status, paidAt, canceledAt e overdueAt quando esses dados chegam pelo provider.
  • A integração financeira ocorre via Billing Provider.
  • Em venda POS, o pagamento continua 1:1 com Order. Pagamentos em dinheiro podem nascer confirmados; PIX e cartões seguem confirmação do gateway.
Um Payment com status PAYMENT_FAILED não cancela o Order automaticamente; o status pode ser reprocessado.

External Provider Tracking

CampoDescrição
organizationIdOrganização da empresa beneficiária
companyIdEmpresa beneficiária
externalProviderIdentificador do provider externo
externalProviderIdID da transação no provedor
channelCanal do pagamento: ONLINE ou POS
O par externalProvider + externalProviderId identifica a transação externa e evita duplicidade de processamento.

Method-Specific Fields

Os campos card e pix armazenam metadados específicos do método:
CampoQuando usado
cardDados do cartão (bandeira, últimos 4 dígitos, parcelas)
pixDados do PIX (QR code, txid)

Lifecycle Fields

CampoQuando preenchido
issuedAtMomento da criação do pagamento
dueDateData limite para pagamento (ex: PIX)
paidAtMomento da confirmação
overdueAtQuando venceu sem confirmação
canceledAtMomento do cancelamento/estorno
canceledByUsuário que executou o cancelamento/estorno interno, quando aplicável

Refund Flow

O estorno interno registra status = REFUNDED, canceledAt e canceledBy. Estornos originados no provedor chegam como atualização de pagamento com status REFUNDED ou CHARGEDBACK.
Não há cancelamento de recebíveis disparado pelo estorno. Os recebíveis refletem o estado reportado pelo provedor na próxima sincronização.

Recebíveis

Os recebíveis são sincronizados quando uma cobrança é confirmada e também pela rotina periódica de conciliação. Veja Receivables.

Relação com Order

Quando o webhook reporta cobrança paga (PAYMENT_PAID), o DEVMOB atualiza Payment, Order e recebíveis no mesmo fluxo financeiro.