Live API End Point (For Create Payment URL):

https://txpay.site/api/payment/create

Payment Verify API:

https://txpay.site/api/payment/verify

Parameter Details

Variables Need to POST to Initialize Payment Process in gateway URL

Field Name Description Required Example Values
cus_name Customer Full Name Yes Payment Koro
cus_email Email address of the customer Yes txpay@gmail.com
amount The total amount payable. Please note that you should skip the the trailing zeros in case the amount is a natural number. Yes 10 or 10.50 or 10.6
success_url URL to which the customer will be returned when the payment is made successfully. The customer will be returned to the last page on the Merchant's website where he should be notify the payment successful. Yes https://txpay.site/sucess.php
cancel_url URL to return customer to your product page or home page. Yes https://txpay.site/cancel.php
webhook_url IPN callback URL No https://txpay.site/webhook.php
meta_data IPN callback URL No Json Formated

Variables Needs For Payment Verify

Field Name Description Required Example Values
transaction_id Transaction id received as a query parameter from the success URL provided during payment creation. Yes OVKPXW165414

Headers Details

Header Name Value
Content-Type application/json
API-KEY App key From Brands

Integration

You can integrate our payment gateway into your PHP Laravel WordPress WooCommerce sites.

Sample Request

পেমেন্ট গেটওয়ে ইন্টিগ্রেশন ডকুমেন্টেশন

Brand Key ও API Key ব্যবহার করে সহজেই আপনার ওয়েবসাইটে পেমেন্ট গেটওয়ে যুক্ত করুন। নিচের কোড স্যাম্পল ও টেবিল দেখে দ্রুত ইন্টিগ্রেশন করুন।

 <?php $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.txpay.site/api/payment/create', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_POSTFIELDS => json_encode([ "brand_key" => "আপনার-BRAND-KEY-এখানে", // ← Brand Key অবশ্যই দিন "success_url" => "https://yourdomain.com/success", "cancel_url" => "https://yourdomain.com/cancel", "webhook_url" => "https://yourdomain.com/webhook", "metadata" => ["phone" => "016********"], "amount" => "10" ]), CURLOPT_HTTPHEADER => array( 'API-KEY: আপনার-API-KEY-এখানে', 'Content-Type: application/json' ), )); $response = curl_exec($curl); curl_close($curl); echo $response; ?> 
 <?php $client = new Client(); $headers = [ 'API-KEY' => 'gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef', 'Content-Type' => 'application/json' ]; $body = '{ "brand_key": "আপনার-BRAND-KEY-এখানে", "success_url": "yourdomain.com/success", "cancel_url": "yourdomain.com/cancel", "webhook_url": "yourdomain.com/webhook", "metadata": { "phone": "016****" }, "amount": "10" }'; $request = new Request('POST', 'https://api.txpay.site/api/payment/create', $headers, $body); $res = $client->sendAsync($request)->wait(); echo $res->getBody(); ?> 
 const axios = require('axios'); let data = JSON.stringify({ "brand_key": "আপনার-BRAND-KEY-এখানে", "success_url": "yourdomain.com/success", "cancel_url": "yourdomain.com/cancel", "webhook_url": "yourdomain.com/webhook", "metadata": { "phone": "016****" }, "amount": "10" }); let config = { method: 'post', maxBodyLength: Infinity, url: 'https://api.txpay.site/api/payment/create', headers: { 'API-KEY': 'gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef', 'Content-Type': 'application/json' }, data : data }; axios.request(config) .then((response) => { console.log(JSON.stringify(response.data)); }) .catch((error) => { console.log(error); }); 
 import requests import json url = "https://api.txpay.site/api/payment/create" payload = json.dumps({ "brand_key": "আপনার-BRAND-KEY-এখানে", "success_url": "yourdomain.com/success", "cancel_url": "yourdomain.com/cancel", "webhook_url": "yourdomain.com/webhook", "metadata": { "phone": "016****" }, "amount": "10" }) headers = { 'API-KEY': 'gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef', 'Content-Type': 'application/json' } response = requests.request("POST", url, headers=headers, data=payload) print(response.text) 
 package main import ( "fmt" "strings" "net/http" "io/ioutil" ) func main() { url := "https://api.txpay.site/api/payment/create" method := "POST" payload := strings.NewReader(`{"brand_key":"আপনার-BRAND-KEY-এখানে","success_url":"yourdomain.com/success","cancel_url":"yourdomain.com/cancel","webhook_url":"yourdomain.com/webhook","metadata":{"phone":"01521412457"},"amount":"10"}`) client := &http.Client { } req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) return } req.Header.Add("API-KEY", "gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef") req.Header.Add("Content-Type", "application/json") res, err := client.Do(req) if err != nil { fmt.Println(err) return } defer res.Body.Close() body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) return } fmt.Println(string(body)) } 

Response Details

Field Name Type Description
Success Response
status bool TRUE
message String Message for Status
payment_url String Payment Link (where customers will complete their payment)
Error Response
status bool FALSE
message String Message associated with the error response
Completing Payment Page task you will be redirected to success or cancel page based on transaction status with the following Query Parameters: yourdomain.com/(success/cancel)?transactionId=******&paymentMethod=***&paymentAmount=**.**&paymentFee=**.**&status=pending or success or failed

Verify Request

 <?php $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://api.txpay.site/api/payment/verify', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_POSTFIELDS =>'{"transaction_id":"ABCDEFH"}', CURLOPT_HTTPHEADER => array( 'API-KEY: gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef', 'Content-Type: application/json' ), )); $response = curl_exec($curl); curl_close($curl); echo $response; ?> 
 <?php $client = new Client(); $headers = [ 'API-KEY' => 'gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef', 'Content-Type' => 'application/json' ]; $body = '{ "transaction_id": "ABCDEFH" }'; $request = new Request('POST', 'https://api.txpay.site/api/payment/verify', $headers, $body); $res = $client->sendAsync($request)->wait(); echo $res->getBody(); ?> 
 const axios = require('axios'); let data = JSON.stringify({ "transaction_id": "ABCDEFH" }); let config = { method: 'post', maxBodyLength: Infinity, url: 'https://api.txpay.site/api/payment/verify', headers: { 'API-KEY': 'gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef', 'Content-Type': 'application/json' }, data : data }; axios.request(config) .then((response) => { console.log(JSON.stringify(response.data)); }) .catch((error) => { console.log(error); }); 
 import http.client import json conn = http.client.HTTPSConnection("local.pay.expensivepay.com") payload = json.dumps({ "transaction_id": "ABCDEFH" }) headers = { 'API-KEY': 'gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef', 'Content-Type': 'application/json' } conn.request("POST", "/api/payment/verify", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) 
 package main import ( "fmt" "strings" "net/http" "io/ioutil" ) func main() { url := "https://api.txpay.site/api/payment/verify" method := "POST" payload := strings.NewReader(`{"transaction_id":"ABCDEFH"}`) client := &http.Client { } req, err := http.NewRequest(method, url, payload) if err != nil { fmt.Println(err) return } req.Header.Add("API-KEY", "gnXi7etgWNhFyFGZFrOMYyrmnF4A1eGU5SC2QRmUvILOlNc2Ef") req.Header.Add("Content-Type", "application/json") res, err := client.Do(req) if err != nil { fmt.Println(err) return } defer res.Body.Close() body, err := ioutil.ReadAll(res.Body) if err != nil { fmt.Println(err) return } fmt.Println(string(body)) } 
Sample Response
 { "cus_name": "John Doe", "cus_email": "john@gmail.com", "amount": "900.000", "transaction_id": "OVKPXW165414", "metadata": { "phone": "015****", }, "payment_method": "bkash", "status": "COMPLETED" } 

Response Details

Field Name Type Description
Success Response
status string COMPLETED or PENDING or ERROR
cus_name String Customer Name
cus_email String Customer Email
amount String Amount
transaction_id String Transaction id Generated by System
metadata json Metadata used for Payment creation
Error Response
status bool FALSE
message String Message associated with the error response

WordPress WooCommerce Plugin Version

See Setup Video: YouTube Video

WHMCS Module

See Setup Video: How To Setup Video here

Sketchware Module

See Setup Video: How To Setup Video here

Modified SMM Panel Module

See Setup Video: Video here

Mobile App Download

See Setup Video: How To Setup App Video here