Files

702 B

Payment Module — Manual Review Checklist

High-risk module: payment changes require human confirmation for every blocker/major fix.

  • Callback idempotency: a duplicated webhook/callback does not double-charge
  • Amounts stored as fixed-point (integers/cents), never floats
  • Currency codes and precision handled correctly
  • Provider signature / HMAC verification on callbacks
  • Refund logic: correct reversal, no double-refund
  • Failure path: payment timeout, declined, retry semantics
  • Transaction boundary spans charge + order-state update
  • Sensitive data (PAN, tokens) never logged or masked on output
  • Ledger/journal entries are append-only and auditable