inverseschool / omnipay-azkivam
Installs: 2 266
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: ^7.3
- ext-json: *
- ext-mbstring: *
- omnipay/common: ^3
- symfony/http-client: ^5
Requires (Dev)
README
composer require inverseschool/omnipay-azkivam
Example
Purchase
The result will be a redirect to the gateway or bank.
$this->gateway = new Gateway( new Client(new \Http\Adapter\Guzzle7\Client()), ); $amount = 60; $customerPhone = '09xxxxxxxxx'; $items = [ [ "name" => "کالای شماره 1", "count" => 6, "amount" => 10, "url" => "https://merchant-website/items/1", ] ]; /** @var CreateTicketResponse $response */ $response = $this->gateway->purchase([ 'subUrl' => '/payment/purchase', 'amount' => $amount, 'customerPhone' => $customerPhone, 'items' => $items, ])->send(); if ($response->isSuccessful() && $response->isRedirect()) { // store the transaction reference to use in completePurchase() $transactionReference = $response->getTransactionReference(); // Redirect to offsite payment gateway $response->redirect(); } else { // Payment failed: display message to customer echo $response->getMessage(); }
Complete Purchase (Verify)
// Send purchase complete request $param= [ 'subUrl' => '/payment/verify', 'ticketId' => 'PJQPHFwN1AM6EUAJ', ]; $response = $this->gateway->completePurchase($param)->send(); if (!$response->isSuccessful() || $response->isCancelled()) { // Payment failed: display message to customer echo $response->getMessage(); } else { // Payment was successful print_r($response); }
Refund Order
Refund an order by the $refNum:
$param= [ 'subUrl' => '/payment/reverse', 'ticketId' => 'PJQPHFwN1AM6EUAJ', ]; /** @var ReverseTicketResponse $response */ $response = $this->gateway->refund($param)->send(); if ($response->isSuccessful()) { // Refund was successful print_r($response); } else { // Refund failed echo $response->getMessage(); }