laravel-notification-channels/touch-sms
A Laravel notification channel for sending SMS through Touch SMS. Connect the Touch SMS gateway to Laravel's notification system and deliver messages from any notification class using a dedicated channel and simple configuration. Useful for transactional messages and alerts.
Illuminate\Notifications system with a toTouchSms() method or an on-demand route. That makes "add SMS OTP / transactional alerts / appointment reminders" a thin, shippable feature rather than a platform project — realistically days, not a sprint, assuming TouchSMS is already an approved vendor.Notifiable contract, notifications stay provider-agnostic. That supports a product-level hedge: pick TouchSMS now, keep the option to swap providers later without rewriting notification classes.Adopt when:
Illuminate\Notifications; the integration is idiomatic and low-ceremony.Look elsewhere when:
To executives: This is a small, MIT-licensed connector that lets us send SMS through our existing Laravel notification system without building or operating new infrastructure. It converts "add SMS alerts/OTP" from a platform project into a scoped feature — roughly days of engineering, no new vendor platform to run. The latest release (2.1.0) is a maintenance update that adds Laravel 12 support, so it stays compatible as we upgrade the framework — no new functionality, no migration work. The trade-off stands: it's a low-adoption package, so we treat it as a convenience wrapper and keep our notification code provider-agnostic so we are not locked in.
To engineering: It's a NotificationChannel implementation plus a bound HTTP client — nothing exotic. Version 2.1.0 is a non-breaking compatibility bump adding Laravel 12.x support; pin it and upgrade alongside the framework. We'll wrap it behind our own thin interface so notification classes never reference TouchSMS directly, and add a second provider behind that interface for anything security-critical (OTP, account alerts). The main risks remain single-maintainer/small-community exposure and provider-side API changes; both are contained by the wrapper and a fallback path.
How can I help you explore Laravel packages today?