Paytm Payment Library For Laravel 5
Introduction
It simplifies the payment flow with the defined methods. You can pay through paytm just writing few lines of codes. Before you start installing this service, please complete your Paytem setup at on Paytm.
Installation
First, you'll need to require the package with Composer:
composer require princealikhan/paytm-payment
Aftwards, run composer update
from your command line.
Then, update config/app.php
by adding an entry for the service provider.
'providers' => [
// ...
'Princealikhan\PaytmPayment\PaytmServiceProvider',
];
Then, register class alias by adding an entry in aliases section
'aliases' => [
// ...
'Paytm' => 'Princealikhan\PaytmPayment\Facades\Paytm',
];
Finally, from the command line again, run php artisan vendor:publish
to publish the default configuration file.
This will publish a configuration file named paytm.php
which includes your Paytm authorization keys and aditional settings.
Configuration
You need to fill in paytm.php
file that is found in your applications config
directory.
Usage
Request for Payment
You can easily send a message to all registered users with the command
$request = array('CUST_ID' => 1 ,'TXN_AMOUNT'=> 1 );
Paytm::pay($request);
CUST_ID
and TXN_AMOUNT
fields value are pass to Paytm and redirect to callback URL.
After redirect to callback URL
Once we redirected to callback URL we need to verify whether transaction Success
or Fail
.
Example
Suppose, your callback URL is https://your-app.io/payment/callback
Paytm POST
respone on your URL.
we need to get response.
In routes.php
add a post method.
Route::post("payment/callback", "PaymentController@callback");
In PaymentController
create a method
public function callback(Request $Request)
{
$paymentResponse = $Request->all();
$paymentData = Paytm::verifyPayment($paymentResponse);
}
$postData
gives transcation details.
after, use your business logic to save.
Check Transaction Status
Paytm::transactionStatus($orderID);
$orderID
is the Unique ID generated for the transaction by merchant
Initiate Refund Process
Paytm::initiateTransactionRefund($orderID,$amount,$txnType);
$orderID
: Transaction Order Id by merchant.
$amount
: Amount to refund.
$txnType
; Any one of below values: REFUND
CANCEL
Please refer to Documentation. for all customizable parameters.