What the person is doing
The user needs to pay a known fee, invoice, balance, tax, application charge, renewal, subscription, donation, deposit, or service request.
Application · lesson 16 of 23 · Task And Workflow Patterns
Underlying principle: A workflow joins actions across time, people, and systems. Each step gives the person enough context to continue, review, pause, or recover.
Use a payment collection flow that anchors every attempt to a stable amount and reference, delegates sensitive credential capture to an appropriate provider surface, exposes lifecycle status, guards duplicate submission, preserves context through failure or redirects, and hands successful payments to a receipt or confirmation page.
A workflow joins actions across time, people, and systems. Each step gives the person enough context to continue, review, pause, or recover.
The user needs to pay a known fee, invoice, balance, tax, application charge, renewal, subscription, donation, deposit, or service request.
Use a payment collection flow that anchors every attempt to a stable amount and reference, delegates sensitive credential capture to an appropriate provider surface, exposes lifecycle status, guards duplicate submission, preserves context through failure or redirects, and hands successful payments to a receipt or confirmation page.
Payment request state with amount, currency, reference, description, payer context, accepted methods, and secure provider handoff.
What amount, currency, reference, and service outcome is this payment tied to?
Every payment attempt is tied to a stable service reference, amount, currency, and payer context that remains visible before and after provider handoff.
The user needs to pay a known fee, invoice, balance, tax, application charge, renewal, subscription, donation, deposit, or service request.
Open the working example, try its controls, and compare the behavior against the decision guidance.
The user needs to pay a known fee, invoice, balance, tax, application charge, renewal, subscription, donation, deposit, or service request.
Use a payment collection flow that anchors every attempt to a stable amount and reference, delegates sensitive credential capture to an appropriate provider surface, exposes lifecycle status, guards duplicate submission, preserves context through failure or redirects, and hands successful payments to a receipt or confirmation page.
Payment request state with amount, currency, reference, description, payer context, accepted methods, and secure provider handoff.
A payment status is uncertain and users retry, creating a duplicate charge.
Use headings that name the payment task and amount, such as Pay application fee or Pay invoice INV-1482.
GOV.UK Pay - checked
GOV.UK Pay supports references, amount, description, return URL, hosted payment pages, API-created payments, and payment links.
GOV.UK Pay - checked
GOV.UK Pay supports payment statuses, payment events, refunds, provider rejection, authorisation failures, and reconciliation data.
Stripe - checked
Stripe supports payment lifecycle states for retry, required action, processing, success, cancellation, capture, and decline recovery.
Stripe - checked
Stripe supports collecting many payment methods through a validated payment component with error handling.
Stripe - checked
Stripe supports idempotency keys to avoid duplicate effects during payment retries.
PCI Security Standards Council - checked
PCI DSS supports protecting payment card data when systems store, process, or transmit cardholder data.
Source trail checked: