Retrieve Payment Details
curl --request GET \
--url https://{brand_domain}/api/v1/payments/{payment_id} \
--header 'Authorization: Bearer <token>'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{brand_domain}/api/v1/payments/{payment_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}import requests
url = "https://{brand_domain}/api/v1/payments/{payment_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{brand_domain}/api/v1/payments/{payment_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://{brand_domain}/api/v1/payments/{payment_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://{brand_domain}/api/v1/payments/{payment_id}")
.header("Authorization", "Bearer <token>")
.asString();const url = 'https://{brand_domain}/api/v1/payments/{payment_id}';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"success": true,
"data": {
"id": 45,
"trx_id": "OP-481029304",
"gateway_trx_id": "A8K9D2J3S",
"amount": "500.00",
"currency": "BDT",
"fee": "7.50",
"status": "completed",
"gateway": "bkash",
"method": "app",
"reference": "INV-10029",
"created_at": "2026-06-23T14:15:45Z",
"completed_at": "2026-06-23T14:17:12Z",
"customer": {
"name": "John Doe",
"email": "[email protected]"
}
}
}{
"success": false,
"error": "Payment not found",
"errors": [
{
"code": "PAYMENT_NOT_FOUND",
"message": "Payment not found",
"field": null
}
],
"request_id": "8f5a2e9b0c7d4e5f"
}{
"success": false,
"error": "Payment not found",
"errors": [
{
"code": "PAYMENT_NOT_FOUND",
"message": "Payment not found",
"field": null
}
],
"request_id": "8f5a2e9b0c7d4e5f"
}API Reference
Retrieve Payment Details
Lookup a payment intent and its associated transaction state by its unique payment intent UUID. If a transaction has already been established/completed against the intent, the response returns details of that transaction. Otherwise, it returns the details of the pending intent.
GET
https://{brand_domain}/api/v1
/
payments
/
{payment_id}
Retrieve Payment Details
curl --request GET \
--url https://{brand_domain}/api/v1/payments/{payment_id} \
--header 'Authorization: Bearer <token>'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://{brand_domain}/api/v1/payments/{payment_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}import requests
url = "https://{brand_domain}/api/v1/payments/{payment_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{brand_domain}/api/v1/payments/{payment_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://{brand_domain}/api/v1/payments/{payment_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://{brand_domain}/api/v1/payments/{payment_id}")
.header("Authorization", "Bearer <token>")
.asString();const url = 'https://{brand_domain}/api/v1/payments/{payment_id}';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"success": true,
"data": {
"id": 45,
"trx_id": "OP-481029304",
"gateway_trx_id": "A8K9D2J3S",
"amount": "500.00",
"currency": "BDT",
"fee": "7.50",
"status": "completed",
"gateway": "bkash",
"method": "app",
"reference": "INV-10029",
"created_at": "2026-06-23T14:15:45Z",
"completed_at": "2026-06-23T14:17:12Z",
"customer": {
"name": "John Doe",
"email": "[email protected]"
}
}
}{
"success": false,
"error": "Payment not found",
"errors": [
{
"code": "PAYMENT_NOT_FOUND",
"message": "Payment not found",
"field": null
}
],
"request_id": "8f5a2e9b0c7d4e5f"
}{
"success": false,
"error": "Payment not found",
"errors": [
{
"code": "PAYMENT_NOT_FOUND",
"message": "Payment not found",
"field": null
}
],
"request_id": "8f5a2e9b0c7d4e5f"
}Authorizations
Provide the Bearer API Key generated for your brand.
Path Parameters
The unique UUID string of the payment intent.
Last modified on July 12, 2026
Related topics
Retrieve TransactionRetrieve CustomerRetrieve Device Connection StatusRetrieve RefundRetrieve Dashboard SummaryWas this page helpful?