SMS Consent Process
Effective date: 2026-04-28
This page documents how Beacon Safe (operated by Copperline Labs LLC) collects explicit opt-in consent from emergency contacts before sending SMS or automated voice-call alerts. Beacon Safe's toll-free and 10DLC numbers send zero outbound messages to a contact's phone until that contact has personally submitted an opt-in on a Beacon Safe-branded web form. There is no "consent request SMS" — the very first SMS a contact receives from us is the alert they have already opted in to.
Two independent SMS audiences, each with its own consent flow:
1. Account holders — opt in to their own SMS check-in reminders inside the app.
2. Emergency contacts — opt in via a hosted web form, after the account holder shares an invite link through their own iMessage / WhatsApp / email / in person.
Account Holder Opt-In
After creating a Beacon Safe account, users can enable SMS check-in reminders by navigating to Settings → Notifications and toggling on "SMS alerts." The toggle screen shows the following disclosure:
SMS is optional — Beacon Safe is fully usable with email-only notifications. Users can disable SMS at any time from the same settings screen, or by replying STOP to any message.
Emergency Contact Opt-In (Share-Sheet Flow)
When an account holder adds an emergency contact in the Beacon Safe app, the following consent flow runs. Beacon Safe never sends an SMS to the contact during this flow.
- Contact added in-app. The Beacon Safe user enters the name, phone number, and email of someone they have a pre-existing personal relationship with (a family member, close friend, etc.).
-
Single-use consent token generated server-side. The Beacon
Safe backend generates a random, single-use consent token and binds it to the
new contact record. The full token URL is of the form
https://beaconsafe.app/confirm/<token>, which redirects to the hosted consent form. -
Native share sheet opens on the user's device. The app opens
the iOS
UIActivityViewController/ AndroidACTION_SENDintent with a pre-composed invite message and the consent URL. The Beacon Safe user — not Beacon Safe's servers — chooses the delivery channel. Typical channels: iMessage, WhatsApp, Signal, email, or simply pasting the link in person. Beacon Safe's toll-free / 10DLC number is not involved at this step. -
(Optional) backup email. As a non-SMS fallback, Beacon Safe
sends one transactional email to the contact's email address (from
alerts@mail.beaconsafe.app, delivered via our email provider) containing the same consent URL, so the contact has an alternate path to the form if the shared link is missed. - Contact lands on a hosted, branded consent form. Tapping the link loads a Beacon Safe-branded web form that names the account holder, identifies Beacon Safe and Copperline Labs LLC as the sender, describes exactly what messages will be sent, lists STOP / HELP keywords, and links to the Privacy Policy and SMS Alert Terms.
- Two independent, unchecked TCPA opt-ins. The form presents two separate checkboxes — one for SMS safety alerts and one for automated prerecorded voice calls. Both are unchecked by default; the contact must affirmatively tick at least one to enable submission.
-
Submission writes an immutable consent log row. On submit,
Beacon Safe writes an append-only row to a
consent_logtable recording the timestamp, IP address, User-Agent, Referer, form version, privacy and terms versions, and the exact checkbox label text shown at the moment of consent. - Only now does our number become eligible to message the contact — and only on the channels the contact selected. If they checked SMS only, they will never receive a voice call. If they checked neither, no message of any kind is ever sent.
Consent Form — What the Contact Sees
Below is a representation of the consent form the emergency contact submits. Both checkboxes are unchecked by default and the submit button is disabled until at least one is selected.
I agree to receive automated SMS alerts from Beacon Safe when Daniel misses a safety check-in. Message frequency varies. Message and data rates may apply. Reply STOP to unsubscribe, HELP for help.
I agree to receive automated, prerecorded voice calls from Beacon Safe for emergency alerts about Daniel. Standard call rates may apply. I can end the call at any time.
Check at least one box to continue
Sample Alert Messages
After consent has been recorded, the contact may receive 1–3 messages per missed-check-in event (initial alert, optional follow-up, resolution). Examples:
Frequency
Messaging is strictly event-driven. A typical opted-in contact receives 0 messages per month unless the account holder fails to check in. A single missed-check-in event produces up to 3 messages.
Opt-Out
Contacts can revoke consent at any time by replying STOP to any message. STOP removes the number from all future sends and triggers one confirmation message. Replying HELP returns support contact information. Contacts can also email support@beaconsafe.app to be removed.
Evidence Retained
Each opt-in writes an append-only row to Beacon Safe's consent_log
table containing:
- UTC timestamp
- Originating IP address
- User-Agent string
- Referer URL
- Form version, privacy-policy version, terms version
- Exact checkbox label text shown to the contact
- The Beacon Safe account holder ID and contact ID the consent applies to
Records are retained for 6 years and can be produced on request to verify any individual opt-in.
Code References
Beacon Safe is closed-source, but the following modules implement this flow:
src/utils/shareConsent.ts— native share-sheet handoff in the mobile app.- the hosted consent-form server function — renders the hosted consent form, validates submissions, and writes the
consent_logrow. - the contact-notification server function — mints the single-use consent token and sends the optional backup email.
At no point in this flow does Beacon Safe call our SMS provider's messaging API for the contact's phone number. That messaging API is only invoked after a consent_log row exists for the channel being used.
Sender Numbers
Once a contact is opted in, alerts are sent from the Beacon Safe Alerts program. The current US sender numbers are:
- +1 (866) 884-5067 — toll-free, primary alert sender (in toll-free verification review).
- +1 (307) 313-2028 — US 10DLC, A2P campaign C16QQ2W (verified), used as an interim sender and long-code fallback.
Contact
Questions about this consent process or about a specific opt-in record?
Copperline Labs LLC (DBA Beacon Safe)
30 N Gould Street, Ste N, Sheridan, WY 82801
support@beaconsafe.app