{
  "id": "CON-072",
  "slug": "con-072",
  "title": "An alternative to SMS must exist where the service needs to reach the consumer",
  "statement": "A programme must not make receiving text messages the only way to sign up or to be served, with no other channel offered.",
  "rationale": "A consumer who must accept texts because the confirmation, the code or the receipt arrives no other way has not chosen SMS — they have chosen the service. The defect is invisible to the usual checks because there is often no consent control to mark optional: the coercion lives in the product design rather than in the form, and the brand reads their own flow as \"we just text people their booking\".",
  "layer": "CONSENT_FLOW",
  "layerSlug": "consent-flow",
  "object": "signup flow alternatives",
  "severity": "BLOCKING",
  "detectability": [
    "CRAWL"
  ],
  "failureClass": "TERMINAL_WEBSITE",
  "authorities": [
    "AWS",
    "FCC",
    "Twilio"
  ],
  "applicability": {
    "excludeUseCases": [
      "TWO_FACTOR_AUTH",
      "SECURITY_ALERT",
      "FRAUD_ALERT"
    ]
  },
  "applicabilityText": "Applies when the use case is NOT TWO_FACTOR_AUTH, SECURITY_ALERT and FRAUD_ALERT.",
  "universal": false,
  "remediation": "Offer at least one non-SMS route to the same outcome — email the confirmation, show it on screen, or let the customer pick a channel — and say so where the number is collected. Done when a customer who never gives a mobile number can still complete the signup and receive whatever the text would have carried.",
  "pitfalls": [
    "Offering an alternative that is worse on purpose (\"email delivery may take up to 5 days\") is the same coercion with a fig leaf, and reads that way to a reviewer.",
    "A 2FA or fraud-alert programme genuinely has no alternative channel — those use cases are excluded from this rule rather than argued out of it."
  ],
  "phase": "approval",
  "automated": true,
  "url": "https://ekas.io/rules/10dlc/consent-flow/con-072/",
  "markdown": "https://ekas.io/rules/10dlc/consent-flow/con-072.md",
  "registry": "https://ekas.io/rules/10dlc/",
  "updated": "2026-07-25",
  "licence": "CC BY 4.0 — https://creativecommons.org/licenses/by/4.0/"
}
