CaktoDevelopers
Referência

Campos do Request

Referência completa de todos os campos aceitos pelo endpoint POST /api/checkout/.

Campos do Request

POST /api/checkout/ — campos raiz

CampoTipoObrigatórioDescrição
paymentMethodstringSIM"credit_card" ou "threeDs"
amountstringSIMValor total em reais. Ex.: "149.90"
installmentsintegerSIMParcelas: 1 a 12
antifraud_profiling_attempt_referencestring (UUID)recomendadoUUID da sessão de fraude Nethone
threeDSecureobjectSIM se threeDsCriptograma 3DS — ver abaixo
cardobjectSIMDados do cartão — ver abaixo
customerobjectSIMDados do comprador — ver abaixo
addressobjectnão¹Endereço de cobrança — ver abaixo
itemsarraySIMMínimo 1 elemento — ver abaixo
postbackUrlstringrecomendadoURL para webhooks de status
checkoutUrlstringnãoURL da página de checkout (para logs)
exIdstringnãoSeu ID interno para correlação
feeByItembooleannãoDistribuir taxas por item. Padrão: false
splitsByItembooleannãoSplit de pagamento por item. Padrão: false
splitsarraynãoSplit de pagamento na transação
localestringnão"pt-BR" padrão
country_codestringnão"BR" padrão (ISO 3166-1 Alpha-2)

¹ address é opcional para produtos digitais (tangible: false). Recomendado incluir para melhorar análise de fraude.


Objeto threeDSecure

Somente quando paymentMethod: "threeDs". Chaves em PascalCase exatamente como retornadas pelo onSuccess do BP.MPI.

CampoTipoObrigatórioDescrição
CavvstringSIMCriptograma de autenticação (base64)
EcistringSIMElectronic Commerce Indicator. Ex.: "05", "02"
VersionstringSIMVersão do protocolo. Ex.: "2.2.0"
XidstringnãoID da transação 3DS
ReferenceIdstringnãoReference ID do BP.MPI
DataOnlybooleannãofalse na maioria dos casos

Se Cavv, Eci ou Version estiverem vazios, a API retorna HTTP 400. Não submeta o checkout se onSuccess não disparou.


Objeto card

CampoTipoObrigatórioDescrição
numberstringSIMNúmero do cartão, somente dígitos
holderNamestringSIMNome no cartão. Recomendado: maiúsculas
expMonthstringSIMMês de expiração. Ex.: "12" ou "03"
expYearstringSIMAno de expiração (2 ou 4 dígitos). Ex.: "2029" ou "29"
cvvstringSIMCódigo de segurança (3 ou 4 dígitos)
saveCardbooleannãotrue para tokenizar o cartão
tokenstringnãoToken de cobrança recorrente (substitui number/cvv)

Objeto customer

CampoTipoObrigatórioDescrição
namestringSIMNome completo do comprador
emailstringSIMEmail do comprador
phonestringSIMTelefone com DDD, somente dígitos. Ex.: "11999999999"
docTypestringSIM"cpf" ou "cnpj" (minúsculas)
docNumberstringSIMCPF ou CNPJ, somente dígitos. Ex.: "12345678900"
birthDatestringnãoData de nascimento. Formato: "YYYY-MM-DD"
ipstringnãoIPv4 ou IPv6 do comprador. Melhora análise de fraude

docType deve ser "cpf" ou "cnpj" em minúsculas. Valores como "CPF" ou "CNPJ" causam erro de validação.


Objeto address

Opcional para produtos digitais (tangible: false). Se enviado, os campos abaixo se aplicam.

CampoTipoObrigatórioDescrição
streetstringnãoNome da rua/avenida
numberstringnãoNúmero. Ex.: "123"
complementstringnãoComplemento. Ex.: "Apto 4B"
neighborhoodstringnãoBairro. Ex.: "Centro"
citystringnãoCidade. Ex.: "São Paulo"
statestringnãoUF, 2 letras maiúsculas. Ex.: "SP", "RJ", "MG"
zipcodestringnãoCEP, somente dígitos, 8 caracteres. Ex.: "01310100"
countrystringnãoCódigo ISO 3166-1 Alpha-2. Padrão: "BR"

Array items — mínimo 1 elemento

CampoTipoObrigatórioDescrição
titlestringSIMNome do produto/serviço. Máx. 255 chars
unitPricestringSIMPreço unitário em reais. Ex.: "149.90"
quantityintegernãoQuantidade. Padrão: 1
tangiblebooleannãotrue para produto físico. Padrão: false
externalRefstringnãoSKU ou ID externo do produto
exIdstringnãoSeu ID interno do item