Run below code after upgrading the ExtensionPHP:composer require twilio/sdk
New Features:
Improvements:
- WhatsApp messaging channel via Twilio WhatsApp API
- Single "Send Notifications Via" dropdown: SMS Only, WhatsApp Only, or Both SMS & WhatsApp
- Dedicated WhatsApp Number field (falls back to SMS number if empty)
- All automatic notifications now send via the selected channel(s)
- Simplified extension settings page
- Removed cluttered section headers
- Channel selection is now a single dropdown instead of two separate checkboxes
- Event toggles grouped together as compact checkboxes
- Message templates moved to their own section at the bottom
- Reduced visual noise( removed redundant descriptions and helper text)
- Backward compatible: existing installs default to SMS if no channel is explicitly set
Technical:
- New sendMessage() method in TwilioSmsService (unified entry point that routes to SMS, WhatsApp, or both)
- New sendWhatsApp() method - sends via Twilio with whatsapp: prefix on from/to numbers
- SMS logs now prefixed with [SMS] or [WHATSAPP] to identify the channel used
- Legacy enable_sms_channel / enable_whatsapp_channel checkbox config still supported for backward compatibility
v1.2.0 - Automatic SMS Notifications
Run below code after updating the plugin to get the latest twilio SDK
New FeaturesPHP:composer require twilio/sdk
Improvements
- Automatic SMS on invoice creation
- Automatic SMS when invoice is marked as paid
- Automatic SMS on new user registration (welcome message)
- Automatic SMS when a service is activated/provisioned
- Automatic SMS when a service is suspended (non-payment)
- Automatic SMS when a service cancellation is requested
- Automatic SMS to customer when admin replies to their support ticket
- Admin SMS notifications for new support tickets
- Admin SMS notifications for cancellation requests
- Configurable SMS templates for each event type with variable placeholders
- Per-event enable/disable toggles in admin settings
- Admin phone number field for receiving admin-level notifications
- Cleaned up boot() method (removed debug logging and redundant DB query listeners)
- Idempotency checks on all listeners to prevent duplicate SMS
- Phone number lookup now checks multiple sources (properties table with phone and phone_number keys, user model)
- Cleaned up routes file( removed test/debug routes, kept only production endpoints)
- Better error logging with context (user ID, invoice ID, event class)
- Added Automatic SMS when an invoice is generated.
- Added Automatic SMS when an invoice is marked as paid.
- SMS on user creation and registration - Pending
![]()
