O Link de pagamento não é a compraO link é o molde reutilizável da oferta. Cada comprador que abre a URL gera uma
Checkout Session própria, com dados, prazo, status e pagamento independentes.
Mil acessos ao mesmo link podem gerar mil sessões diferentes.
Para cobrar uma fatura existente, use
invoice.hosted_invoice_url. Essa URL
pertence a uma única invoice e continua mostrando a fatura depois do pagamento
ou cancelamento. Links de pagamento são para ofertas reutilizáveis que criam
Checkout Sessions novas.Antes de começar
Para criar pelo Dashboard, você precisa ter pelo menos um produto com preço cadastrado. O preço define se o link cobra uma única vez ou inicia uma assinatura.
O valor sempre parte de um preço configurado por você. O comprador pode alterar
a quantidade quando essa opção estiver ativa, mas não digita livremente quanto
quer pagar.
Para criar pela API, você também precisa de uma API key do ambiente
test ou
live. Mantenha essa credencial somente no backend.
Criar pelo Dashboard
Abrir Links de pagamento
Entre no Dashboard, escolha a organização e abra Links de pagamento.

Lista de Links de pagamento no Dashboard, com filtros, ações rápidas e acesso à criação de um novo link.
1
Abra Links de pagamento
No Dashboard, escolha a organização e acesse Links de pagamento. Clique
em Novo link de pagamento.
2
Escolha o que será vendido
Selecione um produto ou assinatura do catálogo e defina a quantidade
inicial. Se necessário, permita que o comprador ajuste essa quantidade no
checkout.
3
Configure o link
Defina o nome interno, desconto pré-aplicado, aceitação de códigos de
desconto, repasse de tarifa e URLs de sucesso ou cancelamento. Em links
recorrentes, você também pode configurar avaliação gratuita.
4
Crie e compartilhe
Clique em Criar link de pagamento. Na página do link, copie a URL ou
gere o QR Code para compartilhar com os compradores.

Criação de um Link de pagamento com produto, quantidade e configurações ao lado da prévia do checkout.
Cores, fonte, métodos de pagamento, campos obrigatórios, parcelamento e
template vêm da configuração atual da organização no Checkout
Builder.
Como o link gera compras
A cada acesso à URL, a Chargefy copia os
line_items e o metadata do link para uma sessão nova, emite checkout.session.created e redireciona o comprador para o checkout hospedado. As sessões são independentes do link: desativar o link não afeta sessões já materializadas.
Anatomia do link
O schema público completo está em Objeto payment_link.
A aparência e o comportamento da página são definidos no
Checkout Builder, não no objeto do link.
Criar pela API
Crie pela API comPOST /v1/payment-links. Só line_items é obrigatório; o resto da configuração tem defaults sensatos.
url. Essa é a URL que você compartilha.
line_items
Cada item aponta para um preço do catálogo (price_id) ou descreve um preço inline (price_data) — exatamente um dos dois. Três formas válidas, da mais idiomática à mais ad-hoc.
Restrições aplicadas a todo o array: todos os itens usam a mesma
currency; e ou todos são recorrentes ou nenhum é (não pode
misturar recorrente com cobrança única no mesmo link).(a) Preço do catálogo
Caminho mais curto. Resolve produto, valor e recorrência automaticamente a partir doprice_id. Quando o preço referenciado é recurring, as sessões geradas nascem em modo subscription sem nenhum campo extra.
(b) Produto do catálogo + preço ad-hoc
Reusa nome e descrição do produto cadastrado, mas com um valor único pra esse link. Útil pra promoção pontual sem criar preço novo no catálogo. Adicionerecurring em price_data para tornar o item recorrente.
(c) Produto e preço ad-hoc
Nada vem do catálogo — útil pra integrações headless que não cadastram produto.price_data e recurring, está em Criar link de pagamento.
Compartilhar o link
O mesmo endereço pode ser compartilhado quantas vezes forem necessárias e em mais de um canal ao mesmo tempo. Cada pessoa que o abre recebe uma Checkout Session independente.Copiar no Dashboard ou na API
Na lista de Links de pagamento, use a ação de copiar ao lado do link. Você também pode abrir a página de detalhe, copiar a URL exibida no topo ou abrir o checkout em uma nova aba para revisá-lo antes de publicar. Quando o link é criado pela API, compartilhe o campourl da resposta. Não
compartilhe a URL de uma Checkout Session gerada a partir dele: essa sessão é
temporária e pertence a uma única tentativa de compra.
Escolher onde publicar
Usar em um botão do seu site
Qualquer botão ou link do seu site pode abrir a URL hospedada pela Chargefy. O exemplo abaixo usa um link HTML comum:Gerar um QR Code
Abra a página de detalhe do link e clique em QR Code. Você pode copiar a imagem ou baixar o arquivo PNG para usar em materiais impressos, balcões, eventos ou embalagens. O QR Code aponta para a URL do link e não expira por conta própria. Se você editar a oferta, ele continua levando aos dados atuais do mesmo link. Se o link for desativado, novos acessos deixam de abrir o checkout; ao reativá-lo, o mesmo QR Code volta a funcionar.Metadata e atribuição
Ometadata do link é copiado para cada sessão gerada. Use-o para
correlacionar a venda com entidades do seu sistema, como um ID interno ou a
versão da oferta.
Parâmetros de campanha anexados à URL são capturados separadamente como
atribuição da checkout session criada naquele clique:
utm_id,utm_source,utm_medium,utm_campaign,utm_termeutm_content;utm_source_platform,utm_creative_formateutm_marketing_tactic;fbclid,gclid,gbraid,wbraid,ttclidemsclkid;fbcefbp, quando sua integração já dispõe desses identificadores.
A atribuição não é mesclada em
metadata. O primeiro snapshot normalizado
aparece em marketing_attribution na checkout session criada e nos webhooks
checkout.session.*. Pré-preenchimento de e-mail, cupom e idioma tem
transporte próprio — veja Parâmetros de URL.Parâmetros de URL
Além da atribuição de campanha, a URL do link aceita parâmetros de pré-preenchimento e contexto. Eles valem para aquele compartilhamento: o mesmo link circula em quantas variações de URL você quiser, e cada clique absorve os parâmetros na checkout session criada.
Valor inválido é descartado em silêncio e a página continua funcionando
normalmente — um parâmetro malformado nunca quebra o checkout.
Atualizar um link
O update é merge viaPOST /v1/payment-links/{id}: você envia só os campos
que mudam. Dá para editar label, URLs de retorno, discount_id,
allow_discount_codes, has_surcharge, metadata, is_active e substituir os
line_items inteiros.
Reenviar
line_items substitui o conjunto inteiro — os itens antigos são
arquivados e os novos passam a valer. Sessões já materializadas mantêm os
itens que copiaram no momento do clique; só os cliques futuros usam a nova
configuração.Desativar e remover
DELETE /v1/payment-links/{id} expressa “tirar de circulação”. O efeito depende do histórico:
Link que nunca gerou sessão
Link que nunca gerou sessão
É removido de fato. A resposta é
{ "id": "plink_Ps4zFCbVKhBwMoeJ", "object": "payment_link", "deleted": true }.Link que já materializou sessões
Link que já materializou sessões
Não pode sumir sem quebrar histórico, então é desativado (
is_active = false) e a resposta é o objeto completo atualizado. Novos cliques na URL passam a retornar 404; as sessões já materializadas seguem vivas e independentes.POST /v1/payment-links/{id} enviando is_active: false, sem tentar a remoção.
Eventos de webhook
O próprio objetopayment_link dispara:
Cada clique no link materializa uma sessão e dispara
checkout.session.created. Daí em diante, acompanhe o ciclo da sessão — não do link — para liberar produto e conciliar pagamento. Esses eventos estão documentados em Checkout Sessions.
Próximos passos
Objeto payment_link
Schema público completo e campos retornados.
Criar via API
Contrato do
POST /v1/payment-links com as três variantes de line_items.Entender Checkout Sessions
O que cada clique materializa e como acompanhar o pagamento.
Após receber com um Link de pagamento
Confirme o resultado, entregue o produto e cuide da experiência pós-compra.
Produtos, preços e descontos
Modele o catálogo que alimenta os
line_items.
