CaktoDevelopers
Referência

Campos da Resposta

Referência completa dos campos retornados pelo endpoint de checkout.

Campos da Resposta

Campos de status

CampoTipoDescrição
idstring (UUID)ID único do pagamento na Cakto
statusstringStatus atual — ver tabela abaixo
amountfloatValor cobrado em reais
paidAmountfloatValor efetivamente pago
liquidAmountfloatValor líquido após taxas
feefloatValor total das taxas
refundedAmountfloatValor devolvido (em reembolso)
installmentsintegerNúmero de parcelas
tidstringID da transação no adquirente
return_codestringCódigo ABECS do adquirente — ver tabela abaixo
merchant_advice_codestringCódigo de orientação para retry
reasonstringMotivo de recusa em linguagem legível
acquirerTypestringAdquirente usado: "cielo", "worldpay", etc.
currencystringCódigo da moeda ("BRL")
exIdstringSeu ID externo, se enviado

Valores de status

StatusSignificadoAção recomendada
paid✅ AprovadoLiberar acesso ao produto/serviço
declined❌ Recusado pelo emissorExibir mensagem genérica, sugerir outro cartão
refused❌ Recusado por regra internaExibir mensagem genérica
pending⏳ Em processamentoAguardar webhook no postbackUrl
blocked🚫 Bloqueado por fraudeNão revelar motivo — mensagem genérica
expired⌛ ExpiradoCriar nova transação
refunded💰 ReembolsadoConfirmação do reembolso
chargedback⚠️ ChargebackDisputa em andamento
canceled✖️ CanceladoTransação cancelada

Para status: "blocked", nunca revele ao usuário que foi fraude. Exiba uma mensagem genérica como "Não foi possível processar o pagamento. Tente outro cartão."

Objeto card na resposta

Retornado sem dados sensíveis (sem PAN completo).

CampoDescrição
lastDigitsÚltimos 4 dígitos do cartão
holderNameNome no cartão
brandBandeira: "visa", "master", "elo", "amex", "hipercard"
tokenToken para cobranças futuras (se saveCard: true foi enviado)

Objeto threeDs na resposta

Presente somente quando paymentMethod: "threeDs".

CampoDescrição
eciECI da transação
cavvCriptograma usado
versionVersão do protocolo
liability_shifttrue se chargeback por não-reconhecimento é responsabilidade do emissor

Códigos return_code comuns (ABECS)

CódigoMensagem recomendada ao usuário
4 / 00(Aprovado — não exibir mensagem de erro)
03 / 05"Transação não autorizada. Entre em contato com seu banco."
51"Saldo ou limite insuficiente."
54"Cartão vencido. Verifique a data de validade."
55"Senha incorreta."
57"Transação não permitida para este cartão."
59"Transação suspeita. Entre em contato com seu banco."
62"Cartão com restrição. Use outro cartão."
78"Cartão bloqueado. Entre em contato com seu banco."
91 / 96"Falha temporária. Tente novamente em alguns minutos."

Exiba mensagens ao usuário baseadas no código, não no campo reason. O campo reason é para logs internos — pode conter informações operacionais não adequadas para exibição ao cliente.