2-Way SMS lets customers reply to the texts you send. Unlike one-way “blasts,” it creates a live, back-and-forth channel for support, confirmations, surveys, and more.
Step | What happens |
1 | Your system sends an outbound SMS from a long code (10-digit number) or short code (5–6 digits). |
2 | The recipient replies to that number. |
3 | The carrier routes the inbound message back to your SMS gateway. |
4 | Your app, CRM (Customer Relationship Management system), or help-desk can: |
Alt-text: Diagram showing: Outbound SMS → Customer Reply → Carrier → Gateway → CRM/Agent.
Use-case | Example |
Customer support | “Text us your order ID for quick help.” |
Appointment confirmations | “Reply YES to confirm your visit tomorrow 3 p.m.” |
Two-factor auth (2FA) | User texts back the OTP (One-Time Password) sent by the app. |
Surveys & polls | “Rate us 1–5 and add a comment.” |
Flash promotions | “Want 20% off? Reply CODE.” |
Screenshot (example):
Caption: Threaded view of inbound and outbound SMS in the dashboard.
Send outbound SMS (specifying 2-Way enabled sender ID):curl -X POST https://api.example.com/v1/messages \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "sender_id": "LONGCODE1234", "to": ["+14155550101"], "text": "Hi , reply YES to confirm your booking." }'
Sample inbound webhook payload (reply received):{ "from": "+14155550101", "to": "LONGCODE1234", "text": "YES", "timestamp": "2025-09-01T12:34:56Z", "conversation_id": "conv_4567"}
Symptom | Likely cause | Fix |
Replies not received | Inbound routing not enabled | Activate inbound routing on number. |
Messages delayed | Carrier congestion or TPS (Transactions per Second) limit | Use short code or higher TPS long code. |
Replies dropped overseas | Some countries block foreign long codes | Use localized sender IDs or VMNs (Virtual Mobile Numbers). |
Opt-outs not honored | Missing STOP/HELP handling | Enable compliance keywords in automation. |