Checkout
O checkout é uma cobrança única com URL própria, hospedada pela Avexus. Em vez de montar a tela de pagamento, você cria o checkout e manda o pagador para a nossa página: ele informa os dados, gera o Pix ali e vê a confirmação.
Como funciona
Seção intitulada “Como funciona”-
Você cria o checkout com valor, descrição e — opcionalmente — os dados do pagador que já conhece.
-
A Avexus devolve a URL da página pública, com um token não enumerável no lugar do id.
-
O pagador abre a página, confirma os dados e pede o Pix.
-
O Pix é gerado só aí — o checkout nasce
PENDINGsem código Pix. Isso evita gerar QR code de cobrança que ninguém vai abrir. -
Você recebe o webhook
transactioncomCONFIRMEDquando o pagamento compensa, igual a qualquer cobrança.
Criar um checkout
Seção intitulada “Criar um checkout”POST /checkouts TODO(contrato)
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
amount |
number | Sim | Valor em BRL, maior que zero |
description |
string | Não | Descrição exibida na página |
external_ref |
string | Não | A sua referência (id do pedido) |
expires_in_hours |
number | Não | Expiração em horas (legado: padrão 24, máximo 720) |
customer.name |
string | Não | Nome do pagador, se você já souber |
customer.email |
string | Não | E-mail do pagador |
customer.document |
string | Não | CPF do pagador (validado com dígito verificador) |
curl --request POST \ --url https://api.avexus.app/checkouts \ --header 'Content-Type: application/json' \ --header 'x-api-key: <API_KEY>' \ --header 'x-token: <TOKEN>' \ --header 'idempotency-key: <UNIQUE_KEY>' \ --data '{ "amount": 197.00, "description": "Mentoria Pro — plano trimestral", "external_ref": "pedido_1042", "expires_in_hours": 24, "customer": { "name": "Maria Souza", "email": "maria@example.com", "document": "12468239008" } }'{ "checkout": { "id": "0f2c9a41-6c58-4d0e-9a3f-6d5a1c7b2e88", "url": "https://avexus.app/pay/c/8xK2mQ7pRvN4tL9wZ3cB6hD1", "amount": 197.0, "status": "PENDING", "expiresAt": "2026-07-25T18:38:26.703Z" }}Listar checkouts
Seção intitulada “Listar checkouts”GET /checkouts TODO(contrato)
Devolve os checkouts da sua loja, do mais recente para o mais antigo, com o
status, a url e se o Pix já foi gerado.
curl --request GET \ --url https://api.avexus.app/checkouts \ --header 'x-api-key: <API_KEY>' \ --header 'x-token: <TOKEN>'Rotas públicas do pagador
Seção intitulada “Rotas públicas do pagador”Estas rotas não são autenticadas: quem chama é a página do pagador, não a sua aplicação. Você só precisa delas se resolver hospedar a própria tela em vez de usar a da Avexus.
| Método | Endpoint | Descrição |
|---|---|---|
GET |
/checkout/{token} |
Dados públicos do checkout (valor, descrição, nome do lojista, status) |
POST |
/checkout/{token}/pay |
O pagador informa nome, e-mail e CPF; a Avexus gera o Pix |
Geração do Pix é idempotente
Seção intitulada “Geração do Pix é idempotente”POST /checkout/{token}/pay chamado duas vezes devolve o mesmo código Pix —
o segundo responde 200 com o código já gerado, em vez de criar outra cobrança
no adquirente.
Guardas de disponibilidade
Seção intitulada “Guardas de disponibilidade”Tanto a leitura quanto a geração do Pix passam pelas mesmas verificações — o
legado as centraliza em checkoutAvailability justamente para não divergirem:
| Situação | Resposta |
|---|---|
| Não é um checkout (é cobrança de link de pagamento) | Checkout indisponível |
| Conta do lojista não está ativa | Vendedor indisponível para cobrança |
Passou de expires_at |
Checkout expirado |
| Já foi pago | A página exibe a confirmação; gerar Pix responde Este checkout já foi pago |
Veja também
Seção intitulada “Veja também”- Integração de checkout — o passo a passo de ponta a ponta.
- Links de pagamento — a versão reutilizável do checkout.
- Cobranças — a API direta, quando você monta a própria tela.
