Skip to main content

Evento checkout.session.created

Disparado quando uma checkout.session é criada e fica disponível para o comprador iniciar o checkout. Use este evento para registrar a tentativa de compra e armazenar os dados de correlação antes de redirecionar ou acompanhar o comprador. data.object usa o mesmo shape de PublicCheckoutSession em todos os eventos checkout.session.*. Neste ponto a sessão normalmente ainda está open, com payment_status: "unpaid" e payment_data: null.
Este evento não significa pagamento confirmado. A sessão acabou de nascer; o comprador ainda precisa abrir a página hospedada, preencher o formulário e confirmar a escolha do método de pagamento.

Quando acontece

Como processar

  • Registre o id do evento (evt_*) para processar o webhook de forma idempotente.
  • Salve data.object.id como a chave da checkout session no seu sistema.
  • Salve metadata e line_items para correlacionar com o pedido ou carrinho.
  • Redirecione ou acompanhe o comprador pela url da sessão quando o fluxo exigir.
  • Não marque o pedido como pago; aguarde checkout.session.completed e, para PIX ou boleto, o evento assíncrono de sucesso.

Campos importantes

Exemplo de payload