Evento payment.intent.updated
Disparado quando um campo público ou um estado intermediário de um
payment_intent muda. Isso inclui tanto alterações feitas por
POST /v1/payment-intents/:id quanto
mudanças produzidas por ações de lifecycle, como a confirmação de um PIX.
data.object traz o estado atual completo.
data.previous_attributes traz apenas os campos alterados, com os valores
anteriores.
Use este evento para manter cache, pedido e conciliação em sincronia enquanto o
intent ainda não chegou a um desfecho. A resposta direta da operação não traz
diff; o diff aparece aqui, no webhook.
Quando a confirmação de um PIX muda o status de
requires_confirmation para
pending, payment.intent.updated é emitido. Nesse caso,
data.previous_attributes.status vem como requires_confirmation,
data.object.status vem como pending e data.object.next_action contém o
PIX que deve ser apresentado ao comprador.data.previous_attributes é histórico. Para atualizar seu banco, use sempre o
objeto completo em data.object como fonte do estado atual.Quando acontece
Como processar
- Registre o
iddo evento (evt_*) para processar o webhook de forma idempotente. - Atualize o registro local usando
data.object.id(pi_*) e o objeto completo dedata.object. - Use
data.previous_attributespara auditoria, logs e notificações condicionais. - Recalcule totais locais quando
amount_detailsoupayment_method_optionsaparecerem no diff. - Não libere pedido apenas por
payment.intent.updated; usepayment.intent.succeededpara conclusão. - Use
metadata,customereinvoicepara localizar o pedido ou fatura correspondente.
Campos importantes
Transições e status
payment.intent.updated pode representar uma mudança de campos ou uma transição
intermediária de status. Quando status não aparece em
data.previous_attributes, considere que o estado do intent não mudou.
Exemplo: confirmação de PIX
Páginas relacionadas
Objeto Payment Intent
Contrato completo de
data.object.Atualizar Payment Intent
Campos editáveis e estados permitidos.
Formato dos eventos
Envelope, objeto completo e regras de
previous_attributes.Implementar Payment Intents
Como sincronizar mudanças sem concluir a operação cedo demais.

