> ## 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.

# Criar um checkout

> Na Cakto, criar um produto já cria o checkout. Veja o fluxo completo via API.

<Note>
  **Não existe um endpoint "criar checkout".** O checkout é a vitrine de um produto: ao criar o produto, a Cakto já gera automaticamente a **oferta padrão**, o **checkout** e o **link de pagamento** (`https://pay.cakto.com.br/{id_da_oferta}`).

  Em resumo: **criou o produto = criou o checkout.**
</Note>

## Pré-requisitos

* Uma conta ativa na Cakto. [Cadastre-se aqui](https://app.cakto.com.br/auth/register).
* Suas chaves de API (`client_id` e `client_secret`) com os escopos `write products` e `write offers`. Veja o [guia de autenticação](/authentication).

## Passo a passo

<Steps>
  <Step title="Autentique-se">
    Troque suas credenciais por um token de acesso. Detalhes em [Autenticação](/authentication).

    ```bash curl icon=terminal theme={null}
    curl -X POST https://api.cakto.com.br/public_api/token/ \
      -H "Content-Type: application/x-www-form-urlencoded" \
      -d "client_id=SEU_CLIENT_ID" \
      -d "client_secret=SEU_CLIENT_SECRET"
    ```

    A resposta traz o `access_token`, que você usará no header `Authorization: Bearer {access_token}` das próximas requisições.
  </Step>

  <Step title="Crie o produto (isso já cria o checkout)">
    Envie um `POST` para `/products/`. Os campos obrigatórios são `name`, `description`, `price`, `type` e `salesPage`.

    ```bash curl icon=terminal theme={null}
    curl -X POST https://api.cakto.com.br/public_api/products/ \
      -H "Authorization: Bearer SEU_ACCESS_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "Curso de Fotografia",
        "description": "Curso completo de fotografia para iniciantes",
        "price": 197.00,
        "type": "unique",
        "salesPage": "https://meusite.com.br/curso-fotografia"
      }'
    ```

    <Tip>
      Use `"type": "unique"` para venda única ou `"type": "subscription"` para assinatura. A lista completa de campos está na referência [Criar Produto](/api-reference/products/create).
    </Tip>

    Nesse único passo, a Cakto cria o produto **e** a oferta padrão, o checkout e o link de pagamento. A resposta retorna o produto criado, incluindo seu `id` e `short_id`.
  </Step>

  <Step title="Obtenha o link do checkout">
    Liste os checkouts do produto para encontrar o checkout padrão (`default: true`):

    ```bash curl icon=terminal theme={null}
    curl https://api.cakto.com.br/public_api/products/{id_do_produto}/checkouts/ \
      -H "Authorization: Bearer SEU_ACCESS_TOKEN"
    ```

    Abra o detalhe do checkout para ver a oferta vinculada (campo `offers`):

    ```bash curl icon=terminal theme={null}
    curl https://api.cakto.com.br/public_api/products/{id_do_produto}/checkouts/{id_do_checkout}/ \
      -H "Authorization: Bearer SEU_ACCESS_TOKEN"
    ```

    O link público do checkout segue o formato:

    ```
    https://pay.cakto.com.br/{id_da_oferta}
    ```

    Pronto — é só compartilhar esse link com seus compradores.
  </Step>
</Steps>

## Vender vários itens num único checkout

Hoje cada checkout exibe uma oferta principal. Para oferecer itens adicionais no **mesmo fechamento**, use **order bumps**: produtos complementares que o comprador adiciona com um clique antes de pagar.

```bash curl icon=terminal theme={null}
curl -X POST https://api.cakto.com.br/public_api/products/{id_do_produto}/bumps/ \
  -H "Authorization: Bearer SEU_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "bump_product_id": "ID_DO_PRODUTO_COMPLEMENTAR" }'
```

Veja todas as opções em [Order Bumps](/api-reference/order-bumps/create).

## Personalizar o checkout

Você pode ajustar a aparência e a configuração do checkout pelo campo `config`. Veja [Atualizar Checkout](/api-reference/checkouts/update).

## Próximos passos

<CardGroup cols={2}>
  <Card title="Criar Produto" icon="box" href="/api-reference/products/create">
    Referência completa dos campos de criação de produto
  </Card>

  <Card title="Ofertas" icon="tag" href="/api-reference/offers/create">
    Crie ofertas adicionais para o mesmo produto
  </Card>

  <Card title="Order Bumps" icon="cart-plus" href="/api-reference/order-bumps/create">
    Ofereça itens complementares no checkout
  </Card>

  <Card title="Webhooks" icon="bell" href="/api-reference/webhooks/create">
    Receba eventos de venda em tempo real
  </Card>
</CardGroup>
