Pesapal driver for the Omnipay PHP payment processing library
Omnipay is a framework agnostic, multi-gateway payment processing library for PHP. This package implements Pesapal support for Omnipay. https://www.pesapal.com/ refer to the API docs here: http://developer.pesapal.com/
Via Composer
$ composer require oneafricamedia/omnipay-pesapal
use Omnipay\Omnipay;
$url = Omnipay::create('Pesapal')
->setCredentials(
'your_key',
'your_secret'
)
->setCallbackUrl('https://example.com/callback')
->getUrl(
'test@example.com',
'my_reference',
'description',
100
);
- configure & setup an endpoint to receive the ipn message from pesapal
- listen for the message and use
getTransactionStatus
(please handle the http GET vars accordingly)
use Omnipay\Omnipay;
$status = Omnipay::create('Pesapal')
->setCredentials(
'your_key',
'your_secret'
)
->getTransactionStatus(
$_GET['pesapal_notification_type'],
$_GET['pesapal_transaction_tracking_id'],
$_GET['pesapal_merchant_reference']
);
$status
will be eitherPENDING
,COMPLETED
,FAILED
orINVALID
. Handle these statuses in your application workflow accordingly.
- Test coverage
- add
QueryPaymentStatusByMerchantRef
support - add
QueryPaymentDetails
support