> ## Documentation Index
> Fetch the complete documentation index at: https://pedirgasdocs.supergasbras.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Criar um pedido completo via APIs Supergasbras

> Passo a passo completo para criar um pedido usando as APIs Cart e Checkout da Supergasbras: do carrinho à entrega, pagamento e confirmação da compra.

Este guia mostra como criar um pedido completo na plataforma Supergasbras usando as APIs Cart e Checkout. Você vai configurar o carrinho, iniciar o checkout, definir a entrega e concluir o pedido.

## Pré-requisitos

* Token de autenticação válido
* `customerId` do cliente que está realizando a compra
* Identificador único para a sessão (`sessionId`) — pode ser um UUID

## Passo 1: Criar a sessão de carrinho

Crie ou atualize a sessão de carrinho com os dados do cliente:

```bash theme={null}
curl -X PUT "https://cart-ms.supergasbras.app/v1/sessions/f47ac10b-58cc-4372-a567-0e02b2c3d479" \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{
    "customerId": "c9b1d2e3-f4a5-6789-bcde-f01234567890"
  }'
```

## Passo 2: Agendar a entrega (opcional)

Se o cliente deseja agendar um horário específico de entrega:

```bash theme={null}
curl -X PUT "https://cart-ms.supergasbras.app/v1/sessions/f47ac10b-58cc-4372-a567-0e02b2c3d479/schedule" \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{
    "scheduledDate": "2024-12-20",
    "scheduledTime": "10:00"
  }'
```

## Passo 3: Criar a sessão de checkout

Inicie o processo de checkout vinculando a sessão de carrinho:

```bash theme={null}
curl -X POST "https://checkout-ms.supergasbras.app/v1/sessions" \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{
    "cartSessionId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "customerId": "c9b1d2e3-f4a5-6789-bcde-f01234567890"
  }'
```

Guarde o `sessionId` retornado para usar nos próximos passos.

## Passo 4: Definir o endereço de entrega

```bash theme={null}
curl -X PUT "https://checkout-ms.supergasbras.app/v1/sessions/a1b2c3d4-e5f6-7890-abcd-ef1234567890/delivery" \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{
    "address": {
      "street": "Av. Paulista",
      "number": "1000",
      "complement": "Apto 42",
      "neighborhood": "Bela Vista",
      "city": "São Paulo",
      "state": "SP",
      "zipCode": "01310-100"
    }
  }'
```

## Passo 5: Consultar métodos de pagamento

Liste os métodos disponíveis para a sessão:

```bash theme={null}
curl -X GET "https://checkout-ms.supergasbras.app/v1/sessions/a1b2c3d4-e5f6-7890-abcd-ef1234567890/payments/methods" \
  -H "Authorization: Bearer SEU_TOKEN_AQUI"
```

## Passo 6: Iniciar o pagamento

Com o método de pagamento escolhido, inicie a cobrança:

```bash theme={null}
curl -X POST "https://checkout-ms.supergasbras.app/v1/sessions/a1b2c3d4-e5f6-7890-abcd-ef1234567890/payments" \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{
    "paymentMethod": "CREDIT_CARD",
    "paymentData": {}
  }'
```

## Passo 7: Completar o pedido

Após a confirmação do pagamento, finalize o pedido:

```bash theme={null}
curl -X POST "https://checkout-ms.supergasbras.app/v1/sessions/a1b2c3d4-e5f6-7890-abcd-ef1234567890/complete" \
  -H "Authorization: Bearer SEU_TOKEN_AQUI"
```

Uma resposta de sucesso confirma que o pedido foi registrado.

<Note>
  Para verificar o estado de qualquer sessão a qualquer momento, use `GET /v1/sessions/{sessionId}` na Checkout API.
</Note>
