Docs
Referência da APITokenização

Tokenizar cartão

Troca os dados do cartão por um token reutilizável (`ctok_…`). Não cobra nada. Se o mesmo cartão já tem token ativo para o mesmo `customerId`, responde `200` com o token existente e `deduplicated: true`. Nesta rota o código de segurança é `cvv` (não `cvc`) e os erros usam o envelope `{code, message}`. Disponível no sandbox; confirme a habilitação em produção com a equipe de integração.

POST
/api/v1/card-tokens

Troca os dados do cartão por um token reutilizável (ctok_…). Não cobra nada. Se o mesmo cartão já tem token ativo para o mesmo customerId, responde 200 com o token existente e deduplicated: true.

Nesta rota o código de segurança é cvv (não cvc) e os erros usam o envelope {code, message}. Disponível no sandbox; confirme a habilitação em produção com a equipe de integração.

Autenticação

ApiKey
headerAuthorization<token>

A chave de API crua, sem prefixo: kpa_test_sk_… no sandbox e kpa_live_sk_… em produção. Use apenas no servidor.

Cabeçalhos

Idempotency-Key?string

Obrigatória (ou idempotencyKey no corpo). 8 a 255 caracteres [A-Za-z0-9_.:-]. Retenção de 24 horas.

Padrão (regex)^[A-Za-z0-9_.:-]+$
Tamanho8 <= length <= 255

Corpo da requisição

application/json
  1. body
card*
customerId?string

Identificador estável do cliente no seu sistema. Separa os cartões de clientes diferentes.

idempotencyKey?string

Alternativa ao cabeçalho. Se enviar os dois, precisam ser iguais.

Corpo da resposta

Cartão já tokenizado para o mesmo cliente. Devolve o token existente.

application/json
  1. response
cardTokenUid?string
Padrão (regex)^ctok_[0-9A-HJKMNP-TV-Z]{26}$
brand?string
Valores aceitos"VISA""MASTERCARD""ELO""HIPERCARD""AMERICAN_EXPRESS""DINERS""DISCOVER""JCB""UNSPECIFIED"
bin?string

Seis primeiros dígitos.

last4?string
expMonth?integer
expYear?integer
status?string
Valores aceitos"ACTIVE""SUSPENDED"
cvvStored?boolean
deduplicated?boolean
Exemplo de requisição
curl -X POST 'https://g6idryo27h.execute-api.us-east-1.amazonaws.com/api/v1/card-tokens' \  -H 'Content-Type: application/json' \  -d '{  "card": {    "number": "5555555555554444",    "expMonth": 12,    "expYear": 2030,    "cvv": "123",    "holderName": "MARIA SOUZA"  },  "customerId": "cliente-1001"}'
Exemplo de resposta
{  "cardTokenUid": "ctok_01M0FVG11PZK94T569VFYE4FY3",  "brand": "VISA",  "bin": "555555",  "last4": "4444",  "expMonth": 0,  "expYear": 0,  "status": "ACTIVE",  "cvvStored": true,  "deduplicated": true}