> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cakto.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Tokenização de Cartão

> Troque os dados do cartão por um token de uso único, sem trafegar o cartão pelo seu servidor.

## O que é tokenização?

Tokenização substitui os dados do cartão (número, CVV, validade) por um token de uso único gerado pela Cakto. O seu backend recebe e processa apenas esse token, nunca os dados reais do cartão.

Isso reduz o risco de exposição de dados sensíveis e simplifica a conformidade com PCI DSS, já que o número do cartão nunca trafega pelo seu servidor.

## Pré-requisitos

* SDK instalado e inicializado. Veja [Instalação](/sdk/visao-geral#instalação).

## Como tokenizar

Passe os dados do cartão para `createToken`. O retorno traz o `cardToken`, válido por uso único.

```ts theme={null}
const card = {
  holderName: "João da Silva",
  cardNumber: "4111111111111111",
  cvv: "123",
  expMonth: "12",
  expYear: "30",
};

const { cardToken } = await caktoSdk.createToken(card);
```

| Campo        | Descrição                                 |
| ------------ | ----------------------------------------- |
| `holderName` | Nome impresso no cartão.                  |
| `cardNumber` | Número do cartão, só dígitos.             |
| `cvv`        | Código de segurança.                      |
| `expMonth`   | Mês de expiração, dois dígitos.           |
| `expYear`    | Ano de expiração, dois ou quatro dígitos. |

<Warning>
  Nunca logue nem envie ao seu backend o `cardNumber` ou o `cvv`. Use apenas o
  `cardToken`.
</Warning>

## Próximo passo

O `cardToken` sozinho não cobra. Para pagamentos por cartão, siga para o 3D Secure, que autentica o portador e fecha a cobrança.

<Card title="3D Secure" icon="shield-halved" href="/sdk/3ds">
  Autentique o portador e processe o pagamento por cartão.
</Card>
