What the person is doing
The product has already collected a phone number and must decide whether number format, dialability, SMS capability, or actual access must be proven.
Application · lesson 14 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 short-lived phone-code loop only when phone access matters; show the destination and channel when safe, support paste and OTP autofill, explain expiry and retry limits, provide resend, change-number, voice or support recovery, and store verified-phone state separately from number syntax and authentication strength.
A workflow joins actions across time, people, and systems. Each step gives the person enough context to continue, review, pause, or recover.
The product has already collected a phone number and must decide whether number format, dialability, SMS capability, or actual access must be proven.
Use a short-lived phone-code loop only when phone access matters; show the destination and channel when safe, support paste and OTP autofill, explain expiry and retry limits, provide resend, change-number, voice or support recovery, and store verified-phone state separately from number syntax and authentication strength.
Sent-code state with target phone number when safe, channel, purpose, code length, expiry, resend, and change-number or support action.
Why does this flow need proof of phone access rather than only a phone number field and review?
The confirmation page states why phone access is required, what channel was used, and what phone number is being confirmed when disclosure is safe.
The product has already collected a phone number and must decide whether number format, dialability, SMS capability, or actual access must be proven.
Open the working example, try its controls, and compare the behavior against the decision guidance.
The product has already collected a phone number and must decide whether number format, dialability, SMS capability, or actual access must be proven.
Use a short-lived phone-code loop only when phone access matters; show the destination and channel when safe, support paste and OTP autofill, explain expiry and retry limits, provide resend, change-number, voice or support recovery, and store verified-phone state separately from number syntax and authentication strength.
Sent-code state with target phone number when safe, channel, purpose, code length, expiry, resend, and change-number or support action.
Old codes confirm a new or changed phone number incorrectly.
Use a clear heading such as Check your phone and label the code input as a security code or phone confirmation code.
GOV.UK Design System - checked
GOV.UK supports text-message security codes, one-time-code autocomplete, numeric input, familiar formatting, 15-minute expiry, new-code request, change-number recovery, no-phone support, and repeated-failure controls.
GOV.UK Design System - checked
GOV.UK phone-number guidance supports collecting phone details only when needed and separates phone entry from access confirmation.
National Institute of Standards and Technology - checked
NIST supports treating PSTN out-of-band authentication as restricted and requiring alternatives, notice, and risk acceptance when SMS or voice is used for authentication.
MDN Web Docs - checked
MDN supports SMS OTP retrieval behavior and one-time-code autocomplete for phone-code confirmation fields.
MDN Web Docs - checked
MDN documents one-time-code as an autocomplete token for short-lived code entry.
Source trail checked: