pk_test_ por pk_live_, percorra esta checklist.
Verificação funcional
Referência EMIS → onPending
onPending recebe os dados da referência (data.payment?.data?.paymentReference e entity.number); a página /pendente mostra-os ao cliente.Verificação do webhook
| # | Cenário | Esperado |
|---|---|---|
| 1 | Assinatura válida | Estado da ordem muda na BD. |
| 2 | Assinatura inválida | 401; a BD não muda. |
| 3 | Webhook duplicado (mesmo paymentId + paymentStatus) | 200, sem reprocessar. |
| 4 | Fallback paymentByExternalTransaction | Devolve o mesmo estado da BD após o webhook. |
Produção
Robustez
- Total recalculado no servidor em todas as ordens.
- Idempotência: localize a ordem por
externalTransactionId, deduplique porpaymentId+paymentStatus. - Tarefas pesadas (emails, ERP, faturação) fora do caminho do webhook (fila/background),
para responder
200em < 5s. - Avise o utilizador para permitir popups do seu site.
- Polling de fallback na página
/pendente(a cada 5–10s) caso o webhook atrase.