You can install the package via composer:
composer require alphaolomi/swahilies-phpuse Alphaolomi\Swahilies\Swahilies;
$swahilies = new Swahilies([]);
// Or
$swahilies = Swahilies::create([
'apiKey' => 'csdheruvhhjdhvjadmvjehrve',
'username' => 'Company name',
'isLive' => false, // ie. sandbox mode
]);
$response = $swahilies->payments()->request([
// TZS by default
'amount' => 50000,
// 255 is country code for Tanzania, Only Tanzania is supported for now
'orderId' => $order->id,
'phoneNumber' => "255783262616",
'cancelUrl' => "https://yoursite.com/cancel",
'webhookUrl' => "https://yoursite.com/response",
'successUrl' => "https://yoursite.com/success",
'metadata' => [],
]);
print_r($response);
// Output:
// [
// "payment_url" => "https://swahiliespay.invict.site/make-payment-1.html?order=jdhvjadmvjehrve"
// ]// Webhooks
// You can use the following code to verify the webhook signature
$requestBody = /** get the request body from the webhook request **/;
$isValid = $swahilies->webhooks()
->verify($request->getContent()); // true/falseall()- Get all payment transactionsdirectRequest($data)- Make a direct Push USSD from your apprequest($data)- Make a payment requestfind($id)- Get payment transaction information
🚧 Work in progress
getDisget($data)- Generate requery body digestverify($data)- Verify request body
Using PestPHP for testing.
composer testPlease see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.