shiftechafrica / smsales-php-sdk
Library for Smsales Api Triggers. Use this to send bulk sms.
Installs: 647
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
