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

# Confirmar Sessão de Checkout

> Confirma e processa o pagamento de uma sessão de checkout

Confirma a sessão e processa o pagamento com o cliente e método de pagamento informados. O ID da sessão vai na URL (`checkoutSessionId`); o `accountId` é resolvido pelo servidor a partir da autenticação.

## Endpoint

```bash cURL theme={null}
curl -X POST https://api.billing.upag.io/v1/checkout-sessions/cs_abc123xyz/confirm \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{
    "customer": "cus_ahwDXrgYvur89iPs",
    "paymentMethod": "pm_abc123xyz",
    "installments": 1,
    "bumps": []
  }'
```

## Parâmetros

<ParamField path="checkoutSessionId" type="string" required>
  ID da sessão (`cs_...`), mesmo valor usado na URL do checkout.
</ParamField>

<ParamField body="customer" type="string" required>
  ID do cliente (`cus_...`) que está concluindo o pagamento.
</ParamField>

<ParamField body="paymentMethod" type="string" required>
  ID do método de pagamento (`pm_...`) utilizado na cobrança.
</ParamField>

<ParamField body="installments" type="integer" required>
  Número de parcelas (mínimo `1`).
</ParamField>

<ParamField body="bumps" type="string[]">
  Opcional. Lista de IDs de bumps/order bumps aceitos pelo fluxo. Padrão: `[]`.
</ParamField>

## Resposta

`200 OK` — sessão confirmada com objetos aninhados:

```json Response theme={null}
{
  "id": "cs_abc123xyz",
  "status": "complete",
  "customerId": "cus_ahwDXrgYvur89iPs",
  "url": "https://checkout.upag.io/cs_abc123xyz",
  "successUrl": "https://example.com/success",
  "cancelUrl": "https://example.com/cancel",
  "expiresAt": "2024-11-16T10:00:00.000Z",
  "createdAt": "2024-11-15T10:00:00.000Z",
  "updatedAt": "2024-11-15T10:05:00.000Z",
  "customer": {
    "id": "cus_ahwDXrgYvur89iPs",
    "name": "John Doe",
    "email": "john.doe@example.com"
  },
  "paymentMethod": {
    "id": "pm_abc123xyz",
    "type": "credit_card",
    "brand": "visa",
    "last4": "4242"
  },
  "invoice": {
    "id": "inv_abc123xyz",
    "status": "paid",
    "amountDue": 9900,
    "currency": "BRL"
  }
}
```

Campos completos de cada objeto: [Clientes](../customers/reference), [Métodos de pagamento](../payment-methods/reference), [Faturas](../invoices/reference) e [Buscar sessão](./get).
