Skip to main content
POST

Authorizations

Authorization
string
header
required

A chave de API usada para autenticar a requisição e identificar a sua conta.

Exemplo: Authorization: ApiKey my-secure-key

Path Parameters

invoice_id
string
required

ID único da fatura a ser cobrada, no formato TypeID com prefixo in_.

Pattern: ^in_[0-9a-z]{26}$
Example:

"in_01h455vb4pex5vsknk084sn02q"

Body

application/json

Dados do método de pagamento.

Para payment_method_type: pix: não requer campos adicionais. Para payment_method_type: card: requer os objetos card e billing_details, e aceita installments dentro do limite definido pelo preço do primeiro item da fatura.

Dados para gerar a cobrança da fatura.

Tipos suportados:

  • pix: gera um QR code PIX — não requer campos adicionais.
  • card: cartão de crédito — requer card e billing_details, aceita installments.

Cobrança no cartão:

  • A cobrança é síncrona: se aprovada, a fatura já retorna com status paid.
  • Se houver um QR code PIX em aberto para a fatura, ele é expirado antes da cobrança — sem risco de pagamento duplicado.
  • O limite de parcelas é definido pelo preço do primeiro item da fatura.
payment_method_type
enum<string>
required

Tipo do método de pagamento: - pix: Pagamento instantâneo via PIX (QR Code). - card: Cartão de crédito.

Available options:
pix,
card
Example:

"pix"

installments
integer
default:1

Quantidade de parcelas para cobrança no cartão de crédito.

Use apenas quando payment_method_type for card. O limite de parcelas é definido pelo preço do primeiro item da fatura. Para pix, o backend sempre considera 1.

Required range: 1 <= x <= 12
Example:

3

card
object

Dados do cartão de crédito para processamento do pagamento.

Segurança: Os dados do cartão são tokenizados e nunca armazenados em texto claro. Apenas os últimos 4 dígitos e a bandeira são mantidos para referência.

billing_details
object

Informações do titular do cartão para validação e prevenção de fraude.

O nome e documento são obrigatórios. O endereço é opcional mas recomendado para aumentar a taxa de aprovação das transações.

Response

Cobrança realizada com sucesso.

Para PIX: o response inclui a fatura e o QR code para pagamento. A fatura permanece open até a confirmação do pagamento via webhook. Para cartão: a cobrança é processada imediatamente e a fatura já retorna com status paid.

Resposta do checkout bem-sucedido contendo a fatura e os detalhes do método de pagamento utilizado.

  • pix: inclui o QR code gerado; a fatura permanece open até a confirmação do pagamento via webhook.
  • card: a cobrança é síncrona; quando aprovada, a fatura já retorna com status paid.
id
string
required
read-only

ID único da fatura, no formato TypeID com prefixo in_.

Pattern: ^in_[0-9a-z]{26}$
Example:

"in_01h455vb4pex5vsknk084sn02q"

object
enum<string>
required

Tipo do objeto. Sempre 'invoice'.

Available options:
invoice
Example:

"invoice"

amount_due
integer
required

Valor a pagar em centavos. R$ 99,90 = 9990.

Example:

9990

created
integer<int64>
required
read-only

Timestamp Unix da criação da fatura.

Example:

1704672000

currency
enum<string>
required

Moeda do valor. Sempre 'brl' (Real brasileiro).

Available options:
brl
Example:

"brl"

customer
string
required

ID do cliente associado à fatura, no formato TypeID com prefixo cus_.

Pattern: ^cus_[0-9a-z]{26}$
Example:

"cus_01h455vb4pex5vsknk084sn02p"

live_mode
boolean
required

Indica ambiente de produção (true) ou sandbox (false). Dados de sandbox são limpos periodicamente.

Example:

true

status
enum<string>
required

Status atual da fatura.

  • draft: Rascunho, ainda não finalizada.
  • open: Aberta, aguardando pagamento.
  • paid: Paga.
  • uncollectible: Marcada como incobrável.
  • void: Cancelada.
Available options:
draft,
open,
paid,
uncollectible,
void
Example:

"open"

total
integer
required

Valor total da fatura em centavos. R$ 99,90 = 9990.

Example:

9990

payment_method
object
required

Método de pagamento utilizado na cobrança da fatura.

amount_paid
integer

Valor já pago em centavos. R$ 99,90 = 9990.

Example:

0

amount_refunded
integer

Valor estornado em centavos. Permanece separado de status: uma fatura paga continua com status: paid depois de um estorno total ou parcial.

Example:

0

amount_remaining
integer

Valor restante a pagar em centavos. R$ 99,90 = 9990.

Example:

9990

customer_email
string | null

E-mail do cliente.

Example:

"joao.silva@exemplo.com"

customer_name
string | null

Nome do cliente.

Example:

"João Silva"

external_code
string | null

Código externo para integração com outros sistemas. Único por conta.

Example:

"PEDIDO-123"

paid
boolean

Indica se a fatura foi paga.

Example:

false

payment_intent
string | null

ID da cobrança associada à fatura, no formato TypeID com prefixo pi_. null enquanto a fatura ainda não tem cobrança gerada.

Example:

"pi_01h455vb4pex5vsknk084sn02r"

status_transitions
object

Timestamps de quando a fatura mudou de status. Campos são null se a transição ainda não ocorreu.

subscription
string | null

ID da assinatura associada (se aplicável), no formato TypeID com prefixo sub_.

Example:

"sub_01h455vb4pex5vsknk084sn02s"