Evento invoice.finalized
Disparado na finalização de um rascunho, inclusive na criação finalizada por padrão pela API. Os itens, termos e dados do cliente já estão congelados. O objeto fica open ou paid quando não existe saldo a receber. Repetir a finalização não emite outro evento.
data.object usa o mesmo shape de GET /v1/invoices/:id.
O campo data.object.hosted_invoice_url é uma URL ativa da página pública
dessa invoice.
Compras avulsas seguem o fluxo de
payment_intent e não têm invoice. A
exceção é a compra por checkout criada com invoice_creation: true: a invoice
nasce depois do pagamento, e este evento já chega com ela paga.Como processar
- Registre o
iddo evento (evt_*) para processar o webhook de forma idempotente. - Use
data.object.id(inv_*) como chave da invoice no seu sistema. - Salve
status,due_date,amount_due_now,amount_remainingehosted_invoice_urlpara orientar a cobrança. - Use
line_itemscomo retrato dos itens faturados; valores e períodos já estão fixos na criação. - Use
customer,subscriptionemetadatapara correlacionar a invoice com seu cliente, assinatura ou pedido interno. - Se
payment_intentelatest_chargevieremnull, isso apenas indica que nenhuma tentativa de pagamento foi criada ainda.

