Sitemap

Paystation Payment Gateway Integration with PHP Application

2 min readJun 20, 2023

xenon/paystation is a php library for Bangladeshi payment gateway provider. You can integrate this in your php application and get customer payment using mfs, credit card and so on

Press enter or click to view image in full size

Installation

composer require xenon/paystation

Step:1 Create Payment and Redirect to Payment Url

use Xenon\Paystation\Exception\PaystationPaymentParameterException;
use Xenon\Paystation\Paystation;

require 'vendor/autoload.php';

try {
$config = [
'merchantId' => 'xxx',
'password' => 'xxxx'
];
$pay = new Paystation($config);
$pay->setPaymentParams([
'invoice_number' => 'XXXXXXXXXXXX',
'currency' => "BDT",
'payment_amount' => 1,
'reference' => "102030",
'cust_name' => "Jhon Max",
'cust_phone' => "01700000001",
'cust_email' => "max@gmail.com",
'cust_address' => "Dhaka, Bangladesh",
'callback_url' => "http://www.yourdomain.com/success.php",
// 'checkout_items' => "orderItems"
]);
$pay->payNow(); //will automatically redirect to gateway payment page
} catch (Exception $e) {
var_dump($e->getMessage());
}

Step:2 Verify Payment

$config = [
'merchantId' => 'xxx',
'password' => 'xxxx'
];
$pay = new Paystation($config);
$status = $pay->verifyPayment("invoice_number","trx_id"); //this will retrieve response as json

sample json response for transaction verification(Failed)

{
"status_code": "1006",
"status": "failed",
"message": "Transaction not found in system"
}

sample json response for transaction verification(Success)

{
"status_code": "200",
"status": "success",
"message": "Transaction found",
"data": {
"invoice_number": "ddsf648feebc415138XXXXX",
"trx_status": "Success",
"trx_id": "AFJ7IXXX",
"payment_amount": 1,
"order_date_time": "2023-06-19 11:57:04",
"payer_mobile_no": "01750XXXX",
"payment_method": "bKash",
"reference": "102030",
"checkout_items": null,
"cust_phone": "01700000001"
}
}

Important Methods

  • setPaymentParams()
  • payNow()
  • verifyPayment()

This library is still in beta version and if you are interested to contribute this , we highly encourage you. Make a fork of this repository and give send a pull request. If you face any issues or error during development or after deployment, you should crate an issue

--

--

Ariful Islam
Ariful Islam

Written by Ariful Islam

Working on PHP, Laravel, CI, CakePHP, API. Open Source contributor, Cloud Expert, Project Consultant, Technical Writer. Owner at https://programmingmindset.com

No responses yet