This class is for developers who want to integrate with Thawani Gateway.
To get started, you need to clone the class:
git clone https://github.com/phpawcom/thawani-php-class.gitOr download it by clicking here.
Usage
Call the class:
<?php
include_once(__DIR__.'/thawani.php');
$thawani = new \s4d\payment\thawani([  
  'isTestMode' => 1, ## set it to 0 to use the class in production mode  
  'public_key' => 'HGvTMLDssJghr9tlN9gr4DVYt0qyBy',  
  'private_key' => 'rRQ26GcsZzoEhbrP2HZvLYDbn9C9et',  
]);
To get API keys for UAT environments, you can find them in developer documentation. For production keys, you can refer to Thawani: Getting API Keys.
Generate Payment URL:
$url = $thawani->generatePaymentUrl([  
  'client_reference_id' => rand(1000, 9999).$orderId, ## generating random 4 digits prefix to make sure there will be no duplicate ID error  
  'products' => [  
     ['name' => 'test test test test test test test test test test test test ', 'unit_amount' => 100, 'quantity' => 1],  
     ['name' => 'test', 'unit_amount' => 100, 'quantity' => 1],  
   ],
  'success_url' => $thawani->currentPageUrl().'?op=checkPayment', ## Put the link to next a page with the method checkPaymentStatus()
  'cancel_url' => $thawani->currentPageUrl().'?op=checkPayment',  
  'metadata' => [  
  'order_id' => $orderId  
  ]  
 ]);
 if(!empty($url)){  
  ## method will provide you with a payment id from Thawani, you should save it to your order. You can get it using this: $thawani->payment_id  
  ## header('location: '.$url); ## Redirect to payment page  
  $_SESSION['session_id'] = $thawani->payment_id; ## save session_id to use to check payment status later
  echo '<a href="'.$url.'">Click to Pay</a>';  
}Check Payment Status:
$check = $thawani->checkPaymentStatus($_SESSION['session_id']);  
if($thawani->payment_status == 1){  
  ## successful payment  
  echo '<h2>successful payment</h2>';  
}else{  
  ## failed payment  
  echo '<h2>payment failed</h2>';  
}You can view example.php for more examples.
 
				 
				 
				 
				 
				 
				