SMS Task¶
Overview¶
The SMS Task sends text messages to mobile phones. Use it for order confirmations, appointment reminders, delivery notifications, verification codes, alerts, or any time-sensitive communication.
When to use this task:
- Send order/booking confirmations
- Appointment reminders
- Delivery status updates
- Two-factor authentication codes
- Payment reminders
- Emergency alerts
- Promotional campaigns
- Follow-up messages
Key Features:
- Send to one or several numbers
- International numbers, with their country code
- Personalisation with
{{variables}} - Sent from the account's own SMS numbers, as the CRM sends
- A rate-limited send is rescheduled, not failed

Quick Start¶
- Add SMS task
- Input recipient phone number (E.164 format)
- Write message (160 char recommended)
- Test with your number
- Save
Simple Example:
To: {{task_24001_phone_number_output}}
Message: Hi {{task_49001_first_name}}, your order #{{task_46001_order_id}} has been confirmed!
Result: SMS sent to +15551234567
Configuration¶
Builder fields¶
The Field column is the label as it appears in the task builder; Key is the name the value is stored under and referenced by.
| Field | Key | Type | Default | Notes |
|---|---|---|---|---|
| Client | Client ID |
text | – | |
| To (phone number) | to |
text | – | |
| Message | message |
textarea | – |
Recipient Number¶
Must be in E.164 format: +\[country code\]\[number\]
Examples:
- US:
+15551234567 - UK:
+447911123456 - South Africa:
+27821234567
From Phone Formatter:
Static number:
Multiple recipients:
Message Content¶
Plain text only (no HTML)
Character limits:
- Single SMS: 160 characters
- Longer messages: Split into multiple (costs more)
- With Unicode: 70 characters per message
Best practices:
- Keep under 160 characters
- Include essential info only
- Add opt-out instructions for marketing
- Use shortened URLs for links
Message Examples¶
Order confirmation:
Hi {{first_name}}! Order {{order_id}} confirmed.
Total: ${{total}}.
Est. delivery: {{delivery_date}}.
Track: {{link}}
Appointment reminder:
Reminder: Appointment tomorrow at {{time}} with {{provider}}.
Reply CONFIRM or call {{phone}} to reschedule.
Delivery notification:
Payment reminder:
Payment of ${{amount}} due {{due_date}}.
Pay now: {{payment_link}}
Questions? Reply to this message.
Outputs¶
| Field | Type | Example | Notes |
|---|---|---|---|
sms_to |
string | +27825550111,+27825550112 |
The recipients the message was sent to, comma-separated. |
sms_count |
number | 2 |
How many recipients. |
sms_body |
string | Your order is ready |
The message body as sent, after variables were resolved. |
run |
boolean | true |
|
run_text |
string | SMS sent successfully. |
Carries the failure reason when run is false. |
Delivery is not confirmed here
These fields report what was submitted to the provider. A rate-limited send is rescheduled and retried automatically rather than failed.
Real-World Examples¶
Confirm a form submission by text¶
Remind a client the day before¶
Alert an agent to an urgent message¶
SMS Marketing Compliance¶
Legal Requirements¶
Must include:
- Opt-out option - "Reply STOP to unsubscribe"
- Sender identification - Company name
- Purpose - What message is about
Example compliant message:
ACME Shop: Flash sale! 20% off today only.
Shop now: [link]
Reply STOP to opt out. Msg&data rates may apply.
Best Practices¶
- Get consent - Explicit opt-in required
- Respect opt-outs - Honor STOP requests immediately
- Timing - Don't send late night/early morning
- Frequency - Limit to 2-4 per month for marketing
- Value - Provide useful information
Opt-Out Handling¶
Handle "STOP" replies with an inbound SMS workflow:
Text Message Received
└─ If Statement {{task_62001_message}} Exactly matches STOP
└─ Match to Client contact_cell_number: {{task_62001_from_number}}
└─ Edit Client set your opted-out custom field
Character Limits & Encoding¶
Standard SMS (GSM-7)¶
160 characters per message
Allowed characters:
- Letters: A-Z, a-z
- Numbers: 0-9
- Common symbols: .,!?'"-()@£$¥
Example (140 chars):
Hi John! Your appointment is tomorrow at 2:30 PM at 123 Main St. Reply YES to confirm or NO to reschedule. Questions? Call 555-1234.
Unicode SMS¶
70 characters per message
Used when message contains:
- Emojis 😊
- Special characters: €, ñ, ü
- Non-Latin scripts: 中文, العربية, עברית
Example (65 chars with emoji):
Multi-Part Messages¶
Long messages split automatically:
- 160 chars = 1 SMS
- 161-306 chars = 2 SMS (153 chars each)
- 307-459 chars = 3 SMS (153 chars each)
Note: Costs multiply with parts. Keep important info early.
Best Practices¶
Message Content¶
- Be concise - Essential info only
- Clear action - What should recipient do?
- Include name - Personalize when possible
- Add context - What is this about?
- Provide alternatives - Phone number or email
Timing¶
- Respect time zones - Send during business hours
- Consider urgency - Immediate vs scheduled
- Frequency limits - Don't spam
- Test timing - Find best delivery times
- Emergency only - Late night/early morning
Phone Numbers¶
- Always use E.164 - +[country code][number]
- Validate before send - Use Phone Formatter
- Handle failures - Log invalid numbers
- Update records - Remove bounced numbers
- Multiple numbers - Try alternate if primary fails
Cost Management¶
- Keep messages short - Under 160 chars
- Avoid Unicode - Use standard characters
- Batch appropriately - Don't over-send
- Track delivery - Monitor success rates
- Clean lists - Remove invalid numbers
Troubleshooting¶
SMS Not Delivered¶
Check:
- Number in E.164 format?
- Number valid and active?
- Country supported?
- Message within limits?
- Account has credits?
Debug: open the run in the workflow's Records — the task's message says what the provider answered.
Invalid Number Error¶
Issue: "Phone number invalid"
Solutions:
- Use Phone Formatter task first
- Verify number includes country code
- Check number is mobile (not landline)
Message Truncated¶
Issue: Message cut off
Cause: Exceeded 160 chars
Solutions:
- Shorten message
- Remove unnecessary words
- Use shortened URLs
- Accept multi-part message cost
Unicode Issues¶
Issue: Message shows as 70 chars
Cause: Contains Unicode characters
Solutions:
- Remove emojis
- Replace special characters
- Use standard punctuation
High Costs¶
Issue: SMS costs too high
Check:
- Messages too long? (multi-part)
- Sending too frequently?
- Sending to wrong numbers?
- Using Unicode unnecessarily?
Optimize:
- Keep under 160 chars
- Batch send strategically
- Clean invalid numbers
- Use standard characters
Frequently Asked Questions¶
What countries are supported?¶
Most countries worldwide. Check with BaseCloud support for specific countries.
Can I send bulk SMS?¶
Yes, use Loop task to send to multiple recipients. Monitor sending rate.
Can recipients reply?¶
Yes, replies can trigger Webhook In or dedicated SMS reply trigger.
How much does SMS cost?¶
Each message uses your account's SMS credit.
Can I schedule SMS?¶
Yes, use Schedule Trigger to send at specific times.
Can I use custom sender ID?¶
Depends on country. US uses phone number. Some countries allow alphanumeric sender.
How to track delivery?¶
The task reports what was handed to the provider (sms_to, sms_count); delivery is not confirmed in
its output.
Related Tasks¶
- Phone Formatter - Format numbers for SMS
- Email - Alternative communication
- Loop - Send to multiple recipients
- Timer Trigger - Schedule SMS campaigns
- If Statement - Conditional SMS sending