🚀 Send SMS, OTP & DLT Messages in Laravel with Fast2SMS (Open Source Package)

Shakil AlamShakil Alam
3 min read

In 2025, SMS is still a powerful way to reach users. Whether it’s for one-time passwords (OTPs), transaction alerts, delivery updates, or marketing campaigns, SMS remains one of the most reliable communication channels—especially in India, where mobile penetration is massive.

But as a Laravel developer, integrating SMS isn’t always straightforward. Most SMS providers only give you raw REST APIs, which means:

  • Writing repetitive boilerplate code.

  • Manually handling queues, retries, and scheduling.

  • Struggling to keep things clean and Laravel-native.

That’s where Laravel Fast2SMS comes in. 🎉


⚡ Meet Laravel Fast2SMS

Laravel Fast2SMS is an open-source Laravel package that integrates seamlessly with the Fast2SMS API.

It’s designed to make SMS sending simple, fluent, and Laravel-friendly—so you can focus on your app, not SMS plumbing.

✨ Key Features

  • 🔑 Simple & Fluent API → Expressive, chainable syntax for clean code.

  • Laravel-Ready → Works out of the box with queues, jobs, and config.

  • 📦 Lightweight → No unnecessary dependencies.

  • 🛡️ DLT-Compliant → Send template-based SMS for marketing campaigns.

  • 🔔 Balance Check → Track SMS credits inside your app.


🚀 What Can You Do with It?

This package is ideal for:

  • Authentication Systems → OTP-based login and 2FA.

  • E-commerce Stores → Send order confirmations, delivery updates.

  • FinTech Apps → Push transaction alerts instantly.

  • SaaS Platforms → Scheduled reminders, automated notifications.

Basically, if your app targets Indian users, this package will save you hours of integration work.


🛠️ Quick Start in 5 Steps

  1. Install via Composer

     composer require itxshakil/laravel-fast2sms
    
  2. Add your API key in .env

     FAST2SMS_API_KEY="YOUR_API_KEY"
     FAST2SMS_DEFAULT_SENDER_ID="FSTSMS"
     FAST2SMS_DEFAULT_ROUTE="dlt"
    
  3. Use in your Controller/Service

     use Shakil\Fast2sms\Facades\Fast2sms;
    
     Fast2sms::dlt(
         numbers: '9999999999',
         templateId: 'YOUR_TEMPLATE_ID',
         variablesValues: ['John Doe'],
         senderId: 'YOUR_SENDER_ID'
     );
    
  4. Queue for scale
    Works perfectly with Laravel’s job + queue system for high-volume apps.

  5. Done 🎉
    You’re now sending SMS in Laravel the Laravel way!


🌍 Open Source & Community

This package is MIT-licensed and free.

  • 📖 GitHub Repo: Laravel Fast2SMS

  • 🐛 Bug reports, feature requests, and PRs are always welcome.

  • ⭐ Star the repo if you find it useful—this helps more Laravel devs discover it!


🔮 Roadmap

Here’s what’s coming next:

  • ✅ PHP 8.5 support (once released)

  • ✅ Webhook handling for delivery receipts


🎯 Final Thoughts

If you’re building a Laravel app for Indian users, SMS is still mission-critical. Instead of reinventing the wheel with raw APIs, Laravel Fast2SMS lets you:

  • Write less code

  • Stay compliant with DLT

  • Scale with queues

👉 Give it a try today:

composer require itxshakil/laravel-fast2sms

And don’t forget to ⭐ the repo—it really helps support open-source development!

0
Subscribe to my newsletter

Read articles from Shakil Alam directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Shakil Alam
Shakil Alam