Visit matscode/paystack for v1.9.1
and below of this SDK
- Transaction (
Initialize
,List
,Verify
) - Bank (
List
,Resolve account
)
More resources would be added in time
Customers
Plans
Subscription
Transfers
others...
This SDK communicates with Paystack API. You need to have a paystack merchant account and paystack secret key to use this SDK.
Development is actively ongoing while releases are Stable.
If you find a BUG/Security Issue, do be kind to open an issue or email Me.
- GuzzleHttp
composer require matscode/paystack-php-sdk
require_once __DIR__ . "/vendor/autoload.php";
- Download the archive
- Extract into your project
- And lastly
require_once __DIR__ . "/vendor/autoload.php";
use Matscode\Paystack\Paystack;
$paystackSecret = 'sk_test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$Paystack = new Paystack($paystackSecret);
$response = $Paystack->transaction->initialize([
'email' => 'customer.email@gmail.com',
'amount' => 500000, // amount is in kobo
'callback_url' => 'https://www.app.local/paystack/transaction/verify'
]);
OR
// Set data to post using this method
$response = $Paystack->transaction
->setCallbackUrl('https://www.app.local/paystack/transaction/verify')
->setEmail('customer.email@gmail.com')
->setAmount(75000) // amount is treated in Naira while using this setAmount() method
->initialize();
Now do a redirect to payment page (using authorization_url)
Recommended to check if authorization_url
is set, and save your transaction reference code. useful to verify Transaction status
// recommend to save Transaction reference in database and do a redirect
header('Location: ' . $response->data->authorization_url);
$reference_code = $_GET['reference']
$response = $Paystack->transaction->verify($reference_code);
OR
// This method does the check for you and return `(bool) true|false`
$response = $Paystack->transaction->isSuccessful($reference_code);
$response = $Paystack->bank->list();
$bank_code='0000';
$account_number='0987654321'
$response = $Paystack->bank->resolve($bank_code, $account_number);
//result: returns account information is found, throws exception otherwise