Engineering
How money movement actually behaves
Notes from building the routing layer. Retry semantics when the leg that timed out may have already moved money. Why the rate settles when the pay-in lands, not when you asked. Why a hundred million dollars is a count problem, not a notional one.
Written for the engineer wiring up collections and payouts, not for a buyer.
- What actually happens during a payoutOne movement, five stages, and the machinery between them.
- Idempotency keys, and what they cannot save you fromThe header is the easy part. The hard part is the leg you do not control.
- Reconciling payouts you don't controlOne ledger in dollars, delivery in local currency, and no shared clock.
- Settlement float is a design decisionCollect in local currency. Settled in dollars, at the moment the money confirms.
- Two directions, one primitiveOn-ramp, off-ramp, and the balance that makes them composable.
- One payment or every paymentThe pay-in choice you make once and live with.
- Verify the bytes, not the objectThe order of operations that makes a public endpoint safe.
- A status pill is not a state machineRead the stages. Do not compute the status.
- A quote is not a lockPriced before you commit. Settled when the money arrives.
- Why $100M is hundreds of thousands of payoutsCount, not notional. The number that actually sizes the system.