Cross-post. Original: stellarbytecapital.com/blog/payment-system-security

A payment system is a target from the first day it touches real money. Attackers don't need a clever zero-day; they'll happily take a missing authorization check, a replayable request, or a leaked API key. And the damage isn't measured in downtime — it's measured in dollars that leave and don't come back. Security here isn't a feature you add later; it's a property the system either has structurally or doesn't.

This is the security layer on top of the correctness core (ledger, idempotency, reconciliation) covered in designing a cross-border payment system.

Authorization on every money move — no exceptions

The most common and most expensive payment bug isn't exotic: an endpoint that moves money without properly checking who is asking and whether they may.