- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Build a custom payment gateway
Hi
Can someone please give me the idea how can I build a bank payment gateway in magento 2.2.3 which is community edition.
Back first verify digital signature and then ask me to provide order amount and currency. That's it.
Advance thanks.
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Build a custom payment gateway
Hi @bbbmishucs,
I guess you need to build the module to integrate the store with the Bank.
Can you share which gateway you need to integrate?
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Build a custom payment gateway
Thank you for your nice reply.
Bank just gave me 2 links
first for token validation like.
sandbox url: somethingurl.
then I have to pass
{
"userName":"test",
"password":"123456Aa"
} in json format
after that I have to find bank generated token from this post reguest.
which I've already done.
and then I've to send magento 2 order data (grand total) with some other credentials to a bank secure url:
somethingurl.com/createorder
json format is like this
{
"merchantId": "11122333",
"amount": "100",
"currency": "050",
"description": "This is test",
"approveUrl": "http://localhost/TheBankPHP_1.0.1/approve.php",
"cancelUrl": "http://localhost/TheBankPHP_1.0.1/cencel.php",
"declineUrl": "http://localhost/TheBankPHP_1.0.1/decline.php",
"userName": "test",
"passWord": "123456Aa",
"secureToken": "bd6e290e-ca3d-4a4b-b7c1-defe9ff6f7af"
}
Now, my question is how can I do this when user click place order button. and store that in my admin panel that order is placed with that bank order payment.
Is it possible to use cash on delivery method just set a link.
I've implemented a php page but how I integrate this with a module I've no idea. Can you please help me @Damian Culotta ?
here is my php file given below.
<?php
$url = "https://sandbox.thebank.com:443/transaction/token";
$data = json_encode(array("userName" => "test","password" => "123456Aa"));
$ch = curl_init( $url );
# Setup request to send json via POST.
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
# Return response instead of printing.
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
# Send request.
$result = curl_exec($ch);
curl_close($ch);
# Print response.
echo "<pre>$result</pre>";
$mydata = json_decode($result, true);
$sectkn = $mydata["transactionId"];
echo $sectkn;
$turl = "https://sandbox.thebank.com:443/transaction/createorder";
$data = json_encode(array(
"merchantId" => "11122333",
"amount" => "100",
"currency" => "050",
"description" => "This is test",
"approveUrl" => "http://localhost/theBankPHP_1.0.1/approve.php",
"cancelUrl" => "http://localhost/theBankPHP_1.0.1/cencel.php",
"declineUrl" => "http://localhost/theBankPHP_1.0.1/decline.php",
"userName" => "test",
"passWord" => "123456Aa",
"secureToken" => $sectkn,
));
$ch = curl_init( $turl );
# Setup request to send json via POST.
curl_setopt( $ch, CURLOPT_POSTFIELDS, $data );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
# Return response instead of printing.
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
# Send request.
$tresult = curl_exec($ch);
curl_close($ch);
# Print response.
echo "<pre>$tresult</pre>";
$mydatat = json_decode($tresult, true);
$linkdata = $mydatat["items"];
$myurldata = $linkdata["url"];
$myorder = $linkdata["orderId"];
$mysession = $linkdata["sessionId"];
$redirect_url = $myurldata. "?ORDERID=". $myorder. "&SESSIONID=". $mysession;
header("Location: .$redirect_url");
echo $redirect_url;
?>
N.B. for security purpose: I've changed the bank url. please help me @Damian Culotta
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Re: Build a custom payment gateway
For your refrence,
You need to check this one.
https://magecomp.com/blog/create-custom-payment-method-in-magento-2/
200+ professional extensions for M1 & M2 with free lifetime updates!