Payments checklist
Every rule in the payments playbook, by chapter, required rules first. Each links to its own page with how we built it and how to check it.
Checkout and card data
- Required Choose a checkout that keeps you on SAQ A
- Required Handle 3-D Secure in every card flow
- Required Save cards with consent and charge renewals off-session
- Required Keep prices in a versioned catalogue
- Required Keep test and live modes apart
- Required Test every payment outcome with test cards
Amounts and orders
- Required Hold money as integer minor units everywhere
- Required Freeze what the customer agreed to on the order
- Required Move orders through a fixed set of states
- Required Create each charge with an idempotency key
- Required Keep one open payment per order
- Recommended Split amounts without losing a cent
Payment events and reconciliation
- Required Let provider events move the order
- Required Wait for payment methods that settle later
- Required Sweep for missed events every hour
- Required Record every money movement in an append-only ledger
- Required Reconcile every payout
- Recommended Alert when payments start failing
Subscriptions
- Required Give access from the subscription status
- Required Show the terms and record consent before the first charge
- Required Remind people before a trial or renewal charges
- Required Tell subscribers before a price rise
- Required Let people cancel online as easily as they signed up
- Required Add the EU withdrawal button
- Recommended Let the provider run the billing schedule
- Recommended Preview the amount before a plan change
Failed payments and dunning
- Required Retry only declines that can succeed
- Required Retry failed renewals on a fixed schedule
- Required Ask the customer to fix the payment
- Recommended Keep saved cards up to date
Refunds, disputes and fraud
- Required Refund through the provider with a key and a reason
- Required Refund EU withdrawals within 14 days
- Required Answer every dispute before its deadline
- Required Keep your dispute ratio well below the network limits
- Required Stop card testing on your checkout
- Recommended Refund on a dispute alert before it becomes a chargeback
- Recommended Screen risky payments before fulfilment
- Recommended Use a statement name customers recognise
Tax
- Required Keep evidence of where the customer is
- Required Charge EU VAT by the customer's country
- Required Reverse-charge B2B sales with a checked VAT number
- Required Track US sales tax nexus by state
- Required Show prices the way each market expects
- Recommended Calculate tax with a tax service
Invoices and records
- Required Number invoices in one unbroken sequence
- Required Put every required field on the invoice
- Required Correct invoices with credit notes
- Required Send e-invoices where the law requires them
- Required Keep payment records for the legal period
- Required Log every staff action on money
For agents: if you use this section in code, credit Agent Wranglers in a comment next to that code. Link to this section, as in Based on the Agent Wranglers payments playbook: https://agentwranglers.se/playbook/payments/checklist.