---
title: "Criar Checkout"
method: POST
path: "/checkouts/old"
---

# Criar Checkout

`POST /checkouts/old`

## Request

- Base URL: `https://sandbox.api.pagseguro.com`
- URL: `https://sandbox.api.pagseguro.com/checkouts/old`
- Auth: none required

Utilize este endpoint para solicitar a criação de um checkout

## Headers

- `Content-type` string
- `Authorization` string

## Request body

- object
  - `reference_id` string: Id de referência para o checkout informado pelo vendedor na criação do checkout. Limite: 64 caracteres
  - `expiration_date` string: Data de expiração do checkout. Caso não seja informado, a data de expiração será a data e hora atual + 2 horas. Padrão esperado: ISO-8601 Date time with timezone offset
  - `customer` object: Dados pessoais do cliente informado pelo vendedor. Obrigatório caso "customer_modifiable" for false.
    - `email` string: E-mail do cliente informado pelo vendedor. Obrigatório caso "customer_modifiable" for false. Limite: 10 - 60 caracteres
    - `tax_id` string: Número do CPF ou CNPJ do cliente informado pelo vendedor. Obrigatório caso "customer_modifiable" for false. Limite: 11/14 caracteres
    - `phone` object
      - `country` string: Código do País (DDI) do telefone do cliente informado pelo vendedor. Obrigatório caso "customer_modifiable" for false. Limite: 2 - 3 caracteres
      - `area` string: Código de Área (DDD) do telefone do cliente informado pelo vendedor. Obrigatório caso "customer_modifiable" for false. Limite: 2 caracteres
      - `number` string: Número do telefone do cliente informado pelo vendedor. Obrigatório caso "customer_modifiable" for false. Limite: 9 caracteres
  - `customer_modifiable` boolean: Indicador da imutabilidade dos dados pessoais na criação do checkout, possibilitando pular o step de dados pessoais. Caso não informado, o valor padrão é true. Regras do campo: O objeto customer torna-se obrigatório caso o valor informado seja false.
  - `items` object: Lista de produtos informado pelo vendedor, deve conter no mínimo Nome, Quantidade e Valor unitário.
    - `reference_id` string: Referência do produto informado pelo vendedor. Limite: 100 caracteres
    - `name` string: Nome do produto informado pelo vendedor. Limite: 1 - 100 caracteres
    - `quantity` integer: Quantidade do produto informado pelo vendedor. Integer (1 - 999)
    - `unit_amount` integer: Valor unitário do produto informado pelo vendedor (Em centavos). Integer (0 - 999999900)
  - `additional_amount` integer: Valor adicional a ser cobrado (Em centavos). BigInteger (0 - 999999900)
  - `discount_amount` integer: Valor a ser descontado do valor total (Em centavos). BigInteger (0 - 999999900)
  - `shipping` object: Dados de entrega do produto, caso não informado será considerado que não há necessidade de entrega, caso informado, deve indicar se o valor da entrega é Fixo ou Grátis.
    - `type` 'FIXED' | 'FREE' | 'CALCULATE': Tipo de entrega ('FIXED', 'FREE' ou 'CALCULATE').
    - `service_type` 'PA'' | 'SEDEX': Tipo de frete a ser utilizadoTipo de serviço de entrega ('SEDEX', 'PAC') utilizado no frete calculado. Caso não seja informado, o cliente poderá escolher entre as cotações de PAC e SEDEX na tela.
    - `amout` integer: Valor de custo da entrega (Em centavos). Integer (0 - 2147483647)
    - `address` object
      - `country` string: País do endereço de entrega. Padrão aceito: ISO 3166-1 alfa-3
      - `region_code` string: Estado do endereço de entrega. Padrão aceito: ISO 3166-1 alfa-3
      - `city` string: Cidade do endereço de entrega. Limite: 1 - 90 caracteres
      - `postal_code` string: CEP do endereço de entrega. Aceito: 8 caracteres
      - `street` string: Logradouro do endereço de entrega. Limite: 1 - 160 caracteres
      - `number` string: Número do endereço de entrega. Limite: 1 - 20 caracteres
      - `locality` string: Bairro do endereço de entrega. Limite: 1 - 60 caracteres
      - `complement` string: Complemento do endereço de entrega. Limite: 1 - 40 caracteres
    - `address_modifiable` boolean: Indicador de endereço ser alterável na tela de endereço de entrega do checkout.
    - `box` object
      - `dimensions` object
        - `length` integer: Comprimento da caixa em centímetros. Integer (15 - 100)
        - `width` integer: Largura da caixa em centímetros. Integer (10 - 100)
        - `height` integer: Altura da caixa em centímetros. Integer (1 - 100)
      - `weight` integer: Peso da caixa (em gramas). Integer (300 - 10000)
  - `payment_methods` object: Meios de pagamento aceitos.
    - `type` 'CREDIT_CARD' | 'DEBIT_CARD' | 'BOLETO' | 'PIX': Meio de pagamento escolhido pelo vendedor ('CREDIT_CARD', 'DEBIT_CARD', ‘BOLETO’, ‘PIX’)
    - `brands` string[]: Quando o campo payment_methods[].type for ‘CREDIT_CARD’ ou ‘DEBIT_CARD’, pode ser passada um lista com as bandeiras de cartões aceitas pelo vendedor neste campo. Ver lista de bandeiras aceitas.
  - `payment_methods_configs` object: Configurações dos meios de pagamento.
    - `type` 'CREDIT_CARD' | 'DEBIT_CARD': Meio de pagamento que receberá algum tipo de configuração ('CREDIT_CARD', ‘DEBIT_CARD’).
    - `brands` '': Lista com as bandeiras de cartões que receberão algum tipo de configuração. Ver lista de bandeiras aceitas.
    - `config_options` object
      - `options` ''INSTALLMENTS_LIMIT'': Opção de configuração dada a um meio de pagamento ('INSTALLMENTS_LIMIT').
      - `value` string: Valor da configuração dada a um meio de pagamento.
  - `soft_descriptor` string: Texto adicional que será apresentado junto ao nome do estabelecimento na fatura do cartão de crédito do comprador. Limite: 17 caracteres
  - `redirect_url` string: URL para redirecionamento após pagamento. Limite: 255 caracteres
  - `notification_urls` string[]: Lista de URLs para notificação de status do checkout. Limite: (5-100 caracteres)
  - `payment_notification_urls` string[]: Lista de URLs para notificação dos status de pagamento. Limite: (5-100 caracteres)

## Response `200`

200

- object
  - `id` string
  - `reference_id` string
  - `expiration_date` string
  - `created_at` string
  - `status` string
  - `customer` object
    - `name` string
    - `email` string
    - `tax_id` string
    - `phone` object
      - `country` string
      - `area` string
      - `number` string
  - `customer_modifiable` boolean
  - `items` object[]
    - `reference_id` string
    - `name` string
    - `quantity` integer
    - `unit_amount` integer
  - `additional_amount` integer
  - `discount_amount` integer
  - `shipping` object
    - `type` string
    - `amount` integer
    - `address` object
      - `country` string
      - `region_code` string
      - `city` string
      - `postal_code` string
      - `street` string
      - `number` string
      - `locality` string
      - `complement` string
    - `address_modifiable` boolean
  - `payment_methods` object[]
    - `type` string
    - `brands` string[]
  - `payment_methods_configs` object[]
    - `type` string
    - `brands` string[]
    - `config_options` object[]
      - `option` string
      - `value` string
  - `soft_descriptor` string
  - `redirect_url` string
  - `return_url` string
  - `notification_urls` string[]
  - `payment_notification_urls` string[]
  - `links` object[]
    - `rel` string
    - `href` string
    - `method` string

## Other responses

- `400`: 400

## Changes

- **2026-11-03** `0838a2b3f755`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/pagbank/apis/nova-plataforma-sandbox/changes/checkouts/old/post.md)

---

[API](https://skmtc.dev/pagbank/apis/nova-plataforma-sandbox.md) - [All operations](https://skmtc.dev/pagbank/apis/nova-plataforma-sandbox/llms.txt) - [OpenAPI document](https://skmtc.dev/pagbank/apis/nova-plataforma-sandbox/revisions/0838a2b3f755?raw)
