GET /widget/transactions/{id}
curl --request GET \
--url https://domain/widget/transactions/{merchant_transaction_id} \
--header 'Authorization: <authorization>'import requests
url = "https://domain/widget/transactions/{merchant_transaction_id}"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://domain/widget/transactions/{merchant_transaction_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://domain/widget/transactions/{merchant_transaction_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: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://domain/widget/transactions/{merchant_transaction_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://domain/widget/transactions/{merchant_transaction_id}")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://domain/widget/transactions/{merchant_transaction_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"merchant_transaction_id": "<string>",
"partner_user_id": "<string>",
"type": "<string>",
"status": "<string>",
"currency": "<string>",
"network": "<string>",
"crypto_amount": "<string>",
"fiat_currency": "<string>",
"fiat_amount": "<string>",
"created_at": "<string>",
"updated_at": "<string>"
}API Reference
GET /widget/transactions/{id}
Get the current status of a transaction
GET
/
widget
/
transactions
/
{merchant_transaction_id}
GET /widget/transactions/{id}
curl --request GET \
--url https://domain/widget/transactions/{merchant_transaction_id} \
--header 'Authorization: <authorization>'import requests
url = "https://domain/widget/transactions/{merchant_transaction_id}"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://domain/widget/transactions/{merchant_transaction_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://domain/widget/transactions/{merchant_transaction_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: <authorization>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://domain/widget/transactions/{merchant_transaction_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://domain/widget/transactions/{merchant_transaction_id}")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://domain/widget/transactions/{merchant_transaction_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"merchant_transaction_id": "<string>",
"partner_user_id": "<string>",
"type": "<string>",
"status": "<string>",
"currency": "<string>",
"network": "<string>",
"crypto_amount": "<string>",
"fiat_currency": "<string>",
"fiat_amount": "<string>",
"created_at": "<string>",
"updated_at": "<string>"
}Returns the current, normalized status of a transaction.
Path parameters
string
required
The transaction identifier returned by
POST /widget/session.Headers
string
required
Bearer token. Format:
Bearer <client_token>.Response
string
The transaction identifier.
string
Your internal user identifier (echo of the session request).
string
buy or sell.string
pending, processing, completed, failed, or cancelled. See Transaction Status.string
Crypto currency.
string
Blockchain network.
string
Final crypto amount. Populated once the transaction reaches
processing or completed.string
Fiat currency.
string
Final fiat amount.
string
ISO 8601 timestamp (UTC).
string
ISO 8601 timestamp of the last status update (UTC).
Examples
curl https://DOMAIN/widget/transactions/550e8400-e29b-41d4-a716-446655440000 \
-H "Authorization: Bearer <client_token>"
const tx = await fetch(
"https://DOMAIN/widget/transactions/550e8400-e29b-41d4-a716-446655440000",
{ headers: { "Authorization": "Bearer <client_token>" } }
).then(r => r.json());
console.log(tx.status); // "completed"
Response
{
"merchant_transaction_id": "550e8400-e29b-41d4-a716-446655440000",
"partner_user_id": "user-123",
"type": "buy",
"status": "completed",
"currency": "USDT",
"network": "TRC20",
"crypto_amount": "99.50",
"fiat_currency": "EUR",
"fiat_amount": "100.00",
"created_at": "2026-04-01T10:00:00Z",
"updated_at": "2026-04-01T10:03:45Z"
}
Errors
| HTTP | error | code | Cause |
|---|---|---|---|
| 401 | unauthorised | invalid_token | Missing or inactive client_token |
| 404 | not_found | not_found | The merchant_transaction_id does not exist or does not belong to your partner |