Key Takeaways
- Salon and clinic booking OTP must jump the queue ahead of “book again” promos.
- Priority is a device-and-queue policy, not a hope that HTTP finished first.
- Priced by devices and SMS send volume. You use your own phone and operator SMS credit. Free is 300 SMS lifetime on 1 device.
- T-2h reminders are transactional; win-back SMS is promotional with STOP.
- A single radio cannot be both a 2FA pipe and a Saturday blast.
- Canary staff logins before you open online booking to the city.
Summary
Appointment businesses lose the booking when the login code sits behind a win-back campaign. Priority queues on an Android SMS gateway are device pools plus drain order. Service pricing is based on device count and total SMS sent through the gateway. You need a working Android phone with a SIM and SMS credit from your mobile operator. Operator message costs are yours—we do not sell carrier SMS balance.
If the only policy is “await sendSms() in the checkout controller,” you do not have a priority queue. You have a hope. Pin OTP to a radio that marketing cannot touch.
You keep the salon or studio MSISDN. Aggregators rent numbers and bill per message — contrast Twilio vs Android SMS gateway.
Key takeaways
- Salon and clinic booking OTP must jump the queue ahead of “book again” promos.
- Priority is a device-and-queue policy, not a hope that HTTP finished first.
- Priced by devices and SMS send volume. You use your own phone and operator SMS credit. Free is 300 SMS lifetime on 1 device.
- T-2h reminders are transactional; win-back SMS is promotional with STOP.
- A single radio cannot be both a 2FA pipe and a Saturday blast.
- Canary staff logins before you open online booking to the city.
Related reading
transactional SMS for orders and alerts, OTP and 2FA SMS, how an Android SMS gateway works, FCC unwanted-text guidance.
Context
Salons, dentists, tutors, and studios collect a mobile at booking. OTP protects the customer portal. Reminders protect the chair. Promos fill Tuesday afternoons. Those three jobs fight for one modem unless you split them.
Free (300 SMS lifetime, 300 contacts) proves the path for one chair, not a franchise Saturday.
Core scenario guidance
Implement P0–P3 as separate queues or at least separate deviceIds. Drain P0 to empty before releasing P3. Hold promos during the first hour after you open online booking each morning.
Cancel reminders when the appointment is deleted. A T-2h text for a cancelled color slot is how you earn a STOP on a number you still need for OTP.
Quiet hours belong on promo and often on non-urgent reminders. OTP can fire when the customer is mid-checkout — that is the point.
Priority queue lanes
| Lane | Expected wait | Rule |
|---|---|---|
| P0 login / deposit OTP | Seconds if the radio is free | Dedicated SIM; never behind CSV |
| P1 T-2h appointment reminder | After OTP drain | Cancel if booking deleted |
| P2 T-24h reminder | Daytime window, after P1 | Transactional tone, no upsell paragraph |
| P3 win-back / promo | Held during peak booking hours | STOP + consent; other pool |
Cost and ownership
Priced by devices and SMS send volume. You use your own phone and operator SMS credit. A second phone for OTP is a device on the plan, not a hidden fee. Promo retries still burn operator credit.
Franchisees must not share one prepaid SIM across cities. Name who tops up each shop.
Operations
Watch queue depth by lane, not a single “SMS backlog” number. After OEM updates, canary OTP first.
On-call during the first online-booking hour. Rollback is pause P3, drain P0, leave checkout alive.
Security and compliance
Do not log full OTP in the salon Slack. Rotate keys when a booking-widget vendor is fired. Promo needs STOP; do not auto-reply into the OTP thread.
Deposit links in SMS should be HTTPS you control. A mistyped shortener is a fraud vector on a trusted MSISDN.
Decision guide
Ship when P0 has its own radio and cancelled bookings drain reminders. Delay if marketing can enqueue CSV to the same deviceIds. If you refuse handset ops, put OTP on CPaaS and keep Android for reminders only — still isolate them.
Checklist
- P0 deviceIds pinned.
- P3 held during peak checkout.
- Cancelled appointments dequeue T-2h.
- STOP on win-back copy.
- Airtime on OTP SIM separate from promo.
- Staff canary of login SMS.
- Queue depth alert per lane.
- On-call for opening hour.
- Keys rotated after vendor change.
- Developer Center checked for campaign vs messages APIs.
Next steps
Compare device and SMS volume pricing, follow device setup, confirm SMS API documentation.
Deep dive: production hardening
Dual-SIM shop phones remap after reboot. OTP must stay on the slot you documented.
MMS “style lookbook” attachments hit APN limits. Prefer links on promo; never attach to OTP.
Spare charged phone at the front desk. Brochure SLA will not send a 2FA when the only handset is in a drawer.
OEM rate ceilings: raise them for reminder bursts; fair-use still applies. Do not market this as unlimited carrier SMS.
Deep dive: scaling and failure modes
Three locations means three reminder radios or an honest single-queue delay. Device caps on Starter (2) and Professional (5) are the scale lever.
A viral Instagram booking night is an OTP storm. Hold P3 automatically when P0 wait exceeds your threshold.
Timezones: a chain with two cities cannot share one cron labeled “9am.”
Deep dive: integration discipline
Idempotency on booking_id + purpose (otp|remind-2h|promo). Widget retries are normal.
Feature-flag win-back. Canary 20 opted-in regulars before a 5,000-row reactivation.
Priced by devices and SMS send volume. You use your own phone and operator SMS credit. Developer Center owns live fields.
Opening-hour drill
Ten minutes before online booking opens, confirm P0 depth is zero, OTP handset is paired, and P3 is held. If marketing “needs the blast out at 9,” they wait until P0 has been quiet for a threshold you wrote down.
Widget retries are not unique customers. Idempotency on booking_id plus purpose stops three OTPs from one double-click. Customers who get three codes pick the wrong one and call the desk.
Deposits: if the SMS contains a pay link, it is a phishing magnet on a trusted FROM. Use your domain, expire the link, and never put the full card flow in the SMS body.
Stylists cancel from a WhatsApp group. If that cancel never reaches the scheduler, the T-2h SMS still fires. Wire cancel from the source of truth, not from memory.
Win-back lists from two years ago are not consented forever. Re-permission or do not send. STOP is not optional because the chair is empty on Tuesdays.
Franchise: each shop’s OTP SIM stays in that shop. A regional “efficiency” phone in a manager’s apartment is a single point of failure dressed as a strategy.
Instagram-fueled nights: auto-hold P3 when P0 wait crosses N seconds. Write N before the viral Reel, not during it.
Quiet hours on promo are not quiet hours on OTP. A customer checking out at 21:40 still needs the code. A win-back at 21:40 needs to wait.
Free is 300 SMS lifetime — prove the three lanes on one chair. A Saturday franchise is devices plus airtime. Platform volume on paid mid-tier plans is not extra handsets.
After a vendor change on the booking widget, rotate keys the same day. Old widgets in a leftover iframe will keep sending if the key still works.
Train front-of-house: “queued” is not “the client got it.” If OTP is late, they offer a voice code path you already designed — not a second CSV dump.
Abort: pause P3, drain P0, leave checkout. If marketing can unblock P3 without ops, you do not have a priority queue.
Related product pages
Jump to the live product docs for this topic—not another long-form article.
- OTP and 2FA SMS on AndroidAuthentication flows
- multi-device and dual SIM routingCapacity and failover
- SMS delivery reports (DLR)Delivery status tracking
- SMS API documentationLive endpoint reference





