shiftechafrica / smsales-php-sdk
Library for Smsales Api Triggers. Use this to send bulk sms.
Installs: 638
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/shiftechafrica/smsales-php-sdk
Requires
- guzzlehttp/guzzle: ^7.5
README
π Introduction
SMSALES PHP SDK provides a simple, developer-friendly interface for interacting with the SMSALES API β a powerful platform for sending and managing SMS communications.
This SDK enables seamless integration of SMS services into your Laravel or standalone PHP applications, helping you to:
- π€ Send single or bulk SMS messages effortlessly
- π° Retrieve account and sender ID balances
- π Receive delivery callbacks and monitor message status
- βοΈ Automate messaging workflows with scheduling and webhooks
With SMSALES, you can focus on communication β while the SDK handles the complexity of SMS API interactions.
π Official Documentation: https://docs.smsales.co.ke
βοΈ Installation
Install the package using Composer:
composer require shiftechafrica/smsales-php-sdk
Update to the latest stable version:
composer update shiftechafrica/smsales-php-sdk --lock
If the package isnβt automatically discovered, run:
composer dump-autoload
Publish the configuration file:
php artisan vendor:publish --provider="SMSALES\SMSALEServiceProvider"
This will create the configuration file at:
config/smsales.php
Environment Setup
Add your API token in the .env
file:
# Your SMSALES API token SMSALES_API_TOKEN=your_api_token_here
π§© Usage
The SDK provides a clean and consistent interface for interacting with the SMSALES API.
Example: Sending SMS and Checking Balances
<?php use SMSALES\API\Trigger; /** * ---------------------------------------- * SMSALES SDK Usage Examples * ---------------------------------------- * Demonstrates how to interact with the * SMSALES API for sending and tracking SMS. */ /** * Fetch latest sent messages */ (new Trigger())->index(); /** * Get account SMS balance */ (new Trigger())->accountSmsBalance(); /** * Get sender ID SMS balance */ (new Trigger())->senderIDSmsBalance(); /** * Send bulk SMS */ (new Trigger())->send([ "api_sender" => "shiftech", // Required β must match your registered Sender ID "message" => "Hello from SMSALES!", // Required "phone_numbers" => ["2547XXXXXXXX", "2541XXXXXXXX", "2547XXXXXXXX"], // Required "scheduled_at" => "2025-12-01 10:00:00", // Optional (Y-m-d H:i:s format) "callback_url" => "https://yourdomain.com/sms/callback" // Optional (POST endpoint) ]);
π¬ API Responses
β Successful Bulk SMS Request
{ "data": { "message": "Accepted for dispatch..." } }
π‘ Callback Report Example
{ "sent": true, "sender": "SHIFTECH", "apiSender": "shiftech", "phoneNumbers": [ "254XXXXXXXXX", "254XXXXXXXXX", "254XXXXXXXXX" ], "batch": "1CRVD1GEXE", "account": { "smsBalance": "663", "smsUsage": "24" } }
π§ Version Guidance
Version | Status | Packagist | Namespace | Release |
---|---|---|---|---|
1.x | β Latest | shiftechafrica/smsales-php-sdk |
SMSALES |
v1.2.0 |
π‘οΈ Security Vulnerabilities
If you discover any security vulnerabilities, please contact:
π§ Bugs
π License
This package is open-source software licensed under the
MIT License