Criar checkout link
Cria um template de cobrança reutilizável e devolve a URL pronta para divulgar.
POST /checkout/links
Faz parte do recurso Links — o conceito, a Session gerada e os estados
estão lá.
Cria o template e devolve 201 com o Link inteiro, já com a url de pagamento. São obrigatórios os
itens e os métodos de pagamento; o resto tem default ou é opcional. O Link nasce active e
passa a vender na hora — cada abertura da URL materializa uma Session nova.
select sem options é aceito, e quebra na página. A API não recusa um campo customizado do
tipo select sem opções — ele é criado e o comprador vê um dropdown vazio, sem como responder.
Confira antes de publicar.requiredFields
mesmo que você não os liste — por isso a resposta nunca traz o campo vazio —, e confere o dígito
verificador do documento. address é o único opt-in: só entra se você o listar. O nome o
comprador informa na página, mas não há como torná-lo obrigatório — name não é um valor aceito
em requiredFields.items, paymentMethods, splits e
branding no topo do corpo. Na leitura (GET /checkout/links/{id})
esses quatro voltam dentro de config. Os demais campos ficam no topo nos dois sentidos. O
detalhe importa ao
espelhar um Link numa venda rápida.code. Todo 409 de regra responde code: "CONFLICT" — o
que distingue um caso do outro é a key, com o prefixo inteiro
(errors.checkout.slug_taken). Comparar error.code === "slug_taken" nunca casa. Veja
Erros de domínio.Idempotency-Key para que um retry por timeout não crie dois Links.
Veja Convenções.Exemplo
url da resposta é o link pronto para compartilhar. Cada abertura materializa uma Session nova.Authorizations
API key unificada (z2_{live|test}{sk|pk}...) — secret (sk) para integração backend, publishable (pk) para uso no frontend público
Body
Métodos de pagamento habilitados (card/pix/boleto/combined); ao menos um enabled.
Nome do link de checkout.
255Descrição exibida no checkout.
2000Slug único global usado na URL pública /c/{slug} (a-z, 0-9 e hífen).
3 - 100^[a-z0-9-]+$'payment' (default) para pagamento único; 'subscription' exige o objeto subscription populado.
payment, subscription Moeda da cobrança. Só BRL — os gateways liquidam em real.
BRL Idioma do checkout (default 'pt-BR').
pt-BR, en-US, es-ES Itens do carrinho (unitAmount em centavos); ao menos 1 quando mode=payment.
Divisão de receita por percentual; a soma deve ser exatamente 100.
Customização visual do checkout.
Configuração de recorrência; obrigatória (e exclusiva) quando mode=subscription.
Campos do comprador exigidos no checkout (email, document, phone, address).
email, document, phone, address Campos customizados do formulário (máx. 20).
20URL de redirecionamento após pagamento aprovado.
2000URL de redirecionamento quando o comprador cancela.
2000Metadados do seller (string → string), consultáveis no próprio link. Não são propagados à Transaction; para correlacionar vendas ao link nos webhooks, use o additionalInfo.checkoutLinkId da Transaction.
Expiração da sessão em minutos (5 a 43200 = 30 dias).
5 <= x <= 43200Response
Link criado
Identificador único do registro.
Slug único global usado na URL pública /c/{slug}.
Estado atual do registro.
Modo do checkout: 'payment' (pagamento único) ou 'subscription' (assinatura).
Moeda no padrão ISO 4217 (ex.: BRL).
Idioma do checkout (ex.: pt-BR, en-US, es-ES).
Nome de exibição do registro.
Descrição exibida no checkout.
Se o Link pode vender agora. É false quando um recebedor do splits, ou o dono da conta, não está ativo no PSP — o comprador vê uma página de indisponível. Independente do status.
Snapshot da configuração do checkout (formas de pagamento, itens e personalização visual).
Campos do comprador exigidos no checkout (ex.: email, document, phone, address).
Definições dos campos personalizados solicitados no checkout.
URL de redirecionamento após o pagamento ser concluído com sucesso.
URL de redirecionamento quando o comprador cancela o checkout.
Metadados livres (pares chave-valor) para uso do integrador; não afeta o processamento.
Tempo de validade da sessão de checkout, em minutos.
Data e hora de criação do registro (ISO 8601).
Data e hora da última atualização do registro (ISO 8601).
URL pública do checkout para o comprador finalizar o pagamento.