Get External Buy Detail
curl --request GET \
--url https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id} \
--header 'X-Api-Key: <x-api-key>' \
--header 'X-Request-Id: <x-request-id>' \
--header 'X-Signature: <x-signature>' \
--header 'X-Timestamp: <x-timestamp>' \
--header 'X-User-Id: <x-user-id>'import requests
url = "https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id}"
headers = {
"X-Api-Key": "<x-api-key>",
"X-Signature": "<x-signature>",
"X-Timestamp": "<x-timestamp>",
"X-Request-Id": "<x-request-id>",
"X-User-Id": "<x-user-id>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'X-Api-Key': '<x-api-key>',
'X-Signature': '<x-signature>',
'X-Timestamp': '<x-timestamp>',
'X-Request-Id': '<x-request-id>',
'X-User-Id': '<x-user-id>'
}
};
fetch('https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{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://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{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 => [
"X-Api-Key: <x-api-key>",
"X-Request-Id: <x-request-id>",
"X-Signature: <x-signature>",
"X-Timestamp: <x-timestamp>",
"X-User-Id: <x-user-id>"
],
]);
$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://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<x-api-key>")
req.Header.Add("X-Signature", "<x-signature>")
req.Header.Add("X-Timestamp", "<x-timestamp>")
req.Header.Add("X-Request-Id", "<x-request-id>")
req.Header.Add("X-User-Id", "<x-user-id>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id}")
.header("X-Api-Key", "<x-api-key>")
.header("X-Signature", "<x-signature>")
.header("X-Timestamp", "<x-timestamp>")
.header("X-Request-Id", "<x-request-id>")
.header("X-User-Id", "<x-user-id>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<x-api-key>'
request["X-Signature"] = '<x-signature>'
request["X-Timestamp"] = '<x-timestamp>'
request["X-Request-Id"] = '<x-request-id>'
request["X-User-Id"] = '<x-user-id>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"id": "019680e1-c74f-79b7-9a0b-cc316731bfd4",
"transaction_type": "CRYPTO_BUY",
"status": "PROCESSING",
"crypto_symbol": "USDT",
"fiat_symbol": "EUR",
"source_id": "IT78R36772223000EM0005782376",
"payment_method": "sepa_transfer",
"withdraw_address": "0xf82010290b2c3169ffaB5354d7Bbd09Eb2822724",
"network": "MATIC",
"tag": "",
"crypto_amount": 108.4,
"fiat_amount": 100,
"base_price": 0.9225,
"final_price": 0.928,
"total_fee": 0.6,
"fee_currency": "USDT",
"fee_breakup": {
"platform_fee": 0.2,
"network_fee": 0.3,
"client_fee": 0,
"discount": 0,
"tax_on_fee": 0.1,
"tds": 0
},
"created_at": 1774346040000,
"updated_at": 1774346041000,
"txn_hash": ""
}
}{
"code": 4004,
"text": "Transaction not found"
}To External Wallet
Get External Buy Detail
Retrieve the details of an external buy transaction. This route currently supports only transaction_type=BUY.
Response field values
| Field | Possible Values |
|---|---|
transaction_type (path) | BUY |
transaction_type (response) | CRYPTO_BUY |
status | Typically PROCESSING for an in-flight transaction |
GET
/
api
/
v2
/
wallet
/
w
/
transaction
/
{transaction_type}
/
{transaction_id}
Get External Buy Detail
curl --request GET \
--url https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id} \
--header 'X-Api-Key: <x-api-key>' \
--header 'X-Request-Id: <x-request-id>' \
--header 'X-Signature: <x-signature>' \
--header 'X-Timestamp: <x-timestamp>' \
--header 'X-User-Id: <x-user-id>'import requests
url = "https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id}"
headers = {
"X-Api-Key": "<x-api-key>",
"X-Signature": "<x-signature>",
"X-Timestamp": "<x-timestamp>",
"X-Request-Id": "<x-request-id>",
"X-User-Id": "<x-user-id>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
'X-Api-Key': '<x-api-key>',
'X-Signature': '<x-signature>',
'X-Timestamp': '<x-timestamp>',
'X-Request-Id': '<x-request-id>',
'X-User-Id': '<x-user-id>'
}
};
fetch('https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{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://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{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 => [
"X-Api-Key: <x-api-key>",
"X-Request-Id: <x-request-id>",
"X-Signature: <x-signature>",
"X-Timestamp: <x-timestamp>",
"X-User-Id: <x-user-id>"
],
]);
$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://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Api-Key", "<x-api-key>")
req.Header.Add("X-Signature", "<x-signature>")
req.Header.Add("X-Timestamp", "<x-timestamp>")
req.Header.Add("X-Request-Id", "<x-request-id>")
req.Header.Add("X-User-Id", "<x-user-id>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id}")
.header("X-Api-Key", "<x-api-key>")
.header("X-Signature", "<x-signature>")
.header("X-Timestamp", "<x-timestamp>")
.header("X-Request-Id", "<x-request-id>")
.header("X-User-Id", "<x-user-id>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.saber.money/api/v2/wallet/w/transaction/{transaction_type}/{transaction_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Api-Key"] = '<x-api-key>'
request["X-Signature"] = '<x-signature>'
request["X-Timestamp"] = '<x-timestamp>'
request["X-Request-Id"] = '<x-request-id>'
request["X-User-Id"] = '<x-user-id>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"id": "019680e1-c74f-79b7-9a0b-cc316731bfd4",
"transaction_type": "CRYPTO_BUY",
"status": "PROCESSING",
"crypto_symbol": "USDT",
"fiat_symbol": "EUR",
"source_id": "IT78R36772223000EM0005782376",
"payment_method": "sepa_transfer",
"withdraw_address": "0xf82010290b2c3169ffaB5354d7Bbd09Eb2822724",
"network": "MATIC",
"tag": "",
"crypto_amount": 108.4,
"fiat_amount": 100,
"base_price": 0.9225,
"final_price": 0.928,
"total_fee": 0.6,
"fee_currency": "USDT",
"fee_breakup": {
"platform_fee": 0.2,
"network_fee": 0.3,
"client_fee": 0,
"discount": 0,
"tax_on_fee": 0.1,
"tds": 0
},
"created_at": 1774346040000,
"updated_at": 1774346041000,
"txn_hash": ""
}
}{
"code": 4004,
"text": "Transaction not found"
}Headers
Your API key (configured in credentials)
HMAC-SHA256 signature (auto-generated) To test manually: HMAC-SHA256 of apiKey + timestamp (or apiKey + timestamp + userId when X-User-Id is required), keyed with your API secret. The HMAC Generator flow computes this for you.
Unix timestamp in seconds (auto-generated) Unix seconds, e.g. Math.floor(Date.now() / 1000). Must match the timestamp used in the X-Signature computation.
Unique request identifier (auto-generated) Any unique string per request, e.g. a UUID.
User UUID (set above)
Path Parameters
Must be BUY.
External buy transaction UUID.
Related topics
Get External Sell Transaction DetailsGet Pool Buy Transaction DetailsGet Sell Transaction DetailsGet Crypto Deposit Transaction DetailsGet Pool Sell Transaction DetailsWas this page helpful?
⌘I