dpsoft / saderat
Saderat bank payment
Installs: 1 089
Dependents: 1
Suggesters: 0
Security: 0
Stars: 4
Watchers: 3
Forks: 3
Open Issues: 0
Requires
- php: ^7.1|^8.0
- ext-json: *
- guzzlehttp/guzzle: ^6.0|^7.0
Requires (Dev)
- phpunit/phpunit: ^9.0
README
Mabna Cart Aria is a iranian company work at bank payment and allow you to handle checkout in your website with iranian payment cart(Saderat Bank).
Why new version every year?!
بانک صادرات هر ساله ویرایش جدیدی از آستین بیرون میاره. فقط میشه گفت شرمآوره.
Installation
composer require dpsoft/saderat
Implementation
Attention: The Saderat Bank webservice just available with IP that allowed with Saderat Bank(by contract with Mabna cart company).
استفاده از درگاه بانک صادرات - مبنا - در زبان Php
Redirect customer with parameters to Saderat gateway
<?php use Dpsoft\Saderat\Saderat; try{ /** * @param int $terminalId The Saderat cart terminal id assign to you */ $request = new Saderat($terminalId); /** * @param string $callbackUrl The url that customer redirect to after payment * @param int $amount The amount that customer must pay * @param string $payload Optional addition data * * @method payRequest Return invoice id and you can save in your DB * */ $invoiceId = $request->request($callbackUrl, $amount, $payload); echo $request->getRedirectScript(); }catch (\Throwable $exception){ echo $exception->getMessage(); }
Verify transaction or maybe rollback transaction in conditions
Customer redirect to callback url with all transaction data and you must verify or rollback transaction.
If you don't call verify(), after 30 min transaction rollback by system.
verify:
<?php use Dpsoft\Saderat\Saderat; try{ /** * @var int $terminalId */ $response = new Saderat($terminalId); /** * @method $verify return class of all response value and you can convert to array by toArray() method */ $verifyData = $response->verify(); /** * Check your amount with response amount */ echo "Successful payment ..."; }catch (\Throwable $exception){ echo $exception->getMessage(); }
Rollback transaction
Need access to rollback payment with Mabna Cart Company
<?php use Dpsoft\Saderat\Saderat; try{ /** * @var int $terminalId */ $response = new Saderat($terminalId); $response->rollbackPayment($digitalReceipt); echo "Successful rollback transaction ..."; }catch (\Throwable $exception){ echo $exception->getMessage(); }
Transaction data or response contains:
You can access response data with get method of returned class and if you want access params by array you can call toArray() method.
Get value by class object:
$digitalReceipt = $verifyData->getDigitalReceipt();
Get value by array:
$verifyDataArray = $verifyData->toArray(); $digitalReceipt = $verifyDataArray['digitalreceipt'];