When verification codes stop arriving, signups stall within minutes, and the person who understands the SMS setup is often asleep, travelling or no longer at the company. Teams then lose hours rediscovering which gateway serves which country and who holds the sender ID registration.
This guide shows how to capture that knowledge in a runbook: what to include, how to structure diagnosis for the incidents that actually happen, where test numbers fit, and how to keep the document accurate as routes and providers change over time.
Why verification needs a runbook, not tribal knowledge
In most teams, SMS verification knowledge lives in one engineer's head: which gateway routes to which country, what to check when Nigeria stops converting, who owns the sender ID registration in France. That works until the engineer is asleep, on holiday, or gone. A runbook converts the knowledge into a document any on-call responder can execute at 3 a.m. — and writing it takes an afternoon, most of which is admitting what the current process actually is.
What goes in it
- System map (one page): gateway providers and fallbacks, which countries route where, sender IDs and their registration status per market, template IDs, and where the OTP logs and dashboards live. Links, not prose.
- Diagnosis trees for the three standard incidents: (a) one country degraded — check provider status page, DLR trend, then reproduce with a virtual number from that country before touching anything; (b) all countries degraded — provider outage or your own deploy: check release timeline, roll back first, ask questions after; (c) costs spiking without conversions — SMS-pumping fraud: identify the target ranges in logs, tighten per-number and per-IP rate limits, block the abused prefixes.
- Reproduction kit: exactly how to rent a test number in a target country and run the real flow — tool, account credentials location, expected timings. A failure you can reproduce in five minutes is half-solved; this section is why virtual numbers belong in the on-call toolkit.
- Escalation and rollback: provider support contacts with account IDs, the feature flag that switches to the fallback gateway or email verification, and who decides to flip it.
- Post-incident: what to log in the retro, and a standing item — did the runbook itself work, and what was missing?
Keeping it alive
Runbooks rot in exactly two ways: routes change without the doc changing, and nobody rehearses. Assign the runbook an owner, gate provider/route changes on updating it, and run one game-day per quarter where an engineer who didn't write it resolves a simulated country outage using only the document. Every stumble in the rehearsal is a bug in the runbook, found for free instead of during a real incident with signups failing.
A template for the first page of the runbook
The first page is the one a responder reads while alerts are firing, so it should fit on one screen and answer triage questions without scrolling into detail. A useful layout:
Below the triage block, record the incident timeline as you go: when the alert fired, what was checked and what changed. That log becomes the retrospective without extra effort.
Keep the rest of the runbook behind links. Detail belongs in the diagnosis trees; the first page exists to get a stressed responder to the right tree in under two minutes. When a rehearsal shows someone took longer, shorten the page rather than adding to it.
- Symptom check: a link to the OTP conversion dashboard with the normal range for each major country written beside it, so a responder knows what bad looks like.
- First question: is the drop in one country, several, or everywhere? Each answer links to its own diagnosis tree.
- Recent changes: links to the deploy log and the provider change log, with a reminder to roll back a recent release before investigating further.
- Fallback switch: the exact flag name, where it lives, what it does, and who can approve flipping it.
- Contacts: provider support with account IDs, the internal owner of sender registrations, and the product owner who decides on user messaging.
- Status message: a pre-approved short notice telling users that codes may be delayed, with an alternative sign-in route if one exists.
Lawful SMS verification only. Follow each platform’s terms. Ucode is not for bulk account farming or ban evasion.
Key takeaways
- Write it down: move verification knowledge out of one person's head and into a document any responder can follow.
- Cover the three incidents: one country degraded, all countries degraded, and costs rising without conversions.
- Rehearse it: a quarterly game day finds gaps before a real outage does.
In short
An SMS verification runbook turns tribal knowledge into steps an on-call engineer can follow at any hour. Keep a one-page system map, diagnosis trees for common incidents, a reproduction kit, clear escalation and a fallback switch, and test it regularly.