unityarray / payscel
payscel's payment sdk for stk payment initiation and query
v1
2024-03-21 18:45 UTC
Requires
- php: >=7.3
README
This library provides a simple interface for interacting with the Payscel payment gateway in your PHP applications.
Installation Using Composer:
composer require unityarray/payscel
Usage
Instantiate the Payscel class:
require_once 'vendor/autoload.php'; use UnityArray\Payscel\Payscel; $apiKey = 'YOUR_API_KEY'; $linkId = 'YOUR_LINK_ID'; $payscel = new Payscel($apiKey, $linkId);
Initiate a payment:
$msisdn = '254712345678'; // Phone number without the leading '+' $amount = 10; // Amount in kes $callback = 'https://your-website.com/callback'; // Your callback URL $response = $payscel->initiate($msisdn, $amount, $callback); // Handle the response (usually a JSON object containing checkout details) // { // +"MerchantRequestID": "db57-40e1-af85-2424fab5a2e697902622" // +"CheckoutRequestID": "ws_CO_21032024215003724757869730" // +"ResponseCode": "0" // +"ResponseDescription": "Success. Request accepted for processing" // +"CustomerMessage": "Success. Request accepted for processing" // } // example echo $response->ResponseDescription; // Success. Request accepted for processing
Query the status of a payment:
$checkoutId = 'CHECKOUT_ID_FROM_INITIATE_RESPONSE'; $response = $payscel->query($checkoutId); // Handle the response (usually a JSON object containing payment status) // { // +"ResponseCode": "0" // +"ResponseDescription": "The service request has been accepted successsfully" // +"MerchantRequestID": "847c-4573-85db-96a68dacad1992169467" // +"CheckoutRequestID": "ws_CO_21032024213641597757869730" // +"ResultCode": "1037" // +"ResultDesc": "DS timeout user cannot be reached" // } // example echo $response->ResultDesc; // DS timeout user cannot be reached
Methods
- initiate($msisdn, $amount, $callback): Initiates a payment.
- query($checkoutId): Queries the status of a payment.
Examples
Please see the examples directory for more detailed usage examples.
Contributing
We welcome contributions! Please see the CONTRIBUTING.md file for more information.
License
This library is licensed under the MIT License. See the LICENSE file for more information.