smodav / ipay
iPay Africa PHP package for transaction handling
Installs: 1 889
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 2
Forks: 10
Open Issues: 1
Requires
- php: >=5.6
- guzzlehttp/guzzle: ^6.2
Requires (Dev)
- mockery/mockery: dev-master
- phpunit/phpunit: 4.*
This package is auto-updated.
Last update: 2024-10-24 18:40:03 UTC
README
This is a PHP package for iPay Africa Web based integration. The API allows a merchant to initiate C2B transaction and receive payments from the customers.
Installation
Pull in the package through Composer.
composer require smodav/ipay
Usage
To make a request is simple. Just initiate the Cashier
and finalize the transaction:
use SmoDav\iPay\Cashier; require "vendor/autoload.php"; $cashier = new Cashier(); $response = $cashier ->usingVendorId('your vendor id', 'your vendor secret') ->withCallback('http://yourcallback.com') ->withCustomer('0722000000', 'demo@example.com', false) ->transact(10, 'your order id', 'your order secret');
The $response
variable will hold the html response from iPay. Just render it to the page and
the process would be complete.
Payment Channels
By default, you are able to transact with multiple channels. The package default are:
- MPesa
- Airtel Money
- Equity
- Credit Card
- Debit Card
In order to use other channels, you can call the usingChannels()
method with a channel array.
The currently available channels are:
- Cashier::CHANNEL_MPESA
- Cashier::CHANNEL_AIRTEL
- Cashier::CHANNEL_EQUITY
- Cashier::CHANNEL_MOBILE_BANKING
- Cashier::CHANNEL_DEBIT_CARD
- Cashier::CHANNEL_CREDIT_CARD
- Cashier::CHANNEL_MKOPO_RAHISI
- Cashier::CHANNEL_SAIDA
For example:
use SmoDav\iPay\Cashier; require "vendor/autoload.php"; $cashier = new Cashier(); $transactChannels = [ Cashier::CHANNEL_MPESA, Cashier::CHANNEL_AIRTEL, ]; $response = $cashier ->usingChannels($transactChannels) ->usingVendorId('your vendor id', 'your vendor secret') ->withCallback('http://yourcallback.com') ->withCustomer('0722000000', 'demo@example.com', false) ->transact(10, 'your order id', 'your order secret');
Disclaimer
The iPay API has a bug of displaying channels that have not been enabled and vice versa.
License
The M-Pesa Package is open-sourced software licensed under the MIT license.