Design provider routing, payment intents, tokenisation, authentication, retries, failover, settlement, and payment-method abstraction.