Resolve Payment Order Requirements
curl --request POST \
--url https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"assetId": "ae455f23-3824-4125-baab-d158315cbcbd",
"currency": "NGN",
"amount": "100.00",
"additionalData": {
"beneficiaryType": "individual",
"purpose": "goods_and_services"
},
"provider": "example-provider"
}
'import requests
url = "https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve"
payload = {
"sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"assetId": "ae455f23-3824-4125-baab-d158315cbcbd",
"currency": "NGN",
"amount": "100.00",
"additionalData": {
"beneficiaryType": "individual",
"purpose": "goods_and_services"
},
"provider": "example-provider"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
sessionId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
assetId: 'ae455f23-3824-4125-baab-d158315cbcbd',
currency: 'NGN',
amount: '100.00',
additionalData: {beneficiaryType: 'individual', purpose: 'goods_and_services'},
provider: 'example-provider'
})
};
fetch('https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve', 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.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'sessionId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'assetId' => 'ae455f23-3824-4125-baab-d158315cbcbd',
'currency' => 'NGN',
'amount' => '100.00',
'additionalData' => [
'beneficiaryType' => 'individual',
'purpose' => 'goods_and_services'
],
'provider' => 'example-provider'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve"
payload := strings.NewReader("{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"assetId\": \"ae455f23-3824-4125-baab-d158315cbcbd\",\n \"currency\": \"NGN\",\n \"amount\": \"100.00\",\n \"additionalData\": {\n \"beneficiaryType\": \"individual\",\n \"purpose\": \"goods_and_services\"\n },\n \"provider\": \"example-provider\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"assetId\": \"ae455f23-3824-4125-baab-d158315cbcbd\",\n \"currency\": \"NGN\",\n \"amount\": \"100.00\",\n \"additionalData\": {\n \"beneficiaryType\": \"individual\",\n \"purpose\": \"goods_and_services\"\n },\n \"provider\": \"example-provider\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"assetId\": \"ae455f23-3824-4125-baab-d158315cbcbd\",\n \"currency\": \"NGN\",\n \"amount\": \"100.00\",\n \"additionalData\": {\n \"beneficiaryType\": \"individual\",\n \"purpose\": \"goods_and_services\"\n },\n \"provider\": \"example-provider\"\n}"
response = http.request(request)
puts response.read_body{
"statusCode": 200,
"message": "Payment order requirements resolved successfully",
"data": {
"data": {
"beneficiaryType": "individual",
"purpose": "goods_and_services"
},
"metadata": {
"resolutionId": "resolution_839201"
},
"sessionId": "13a36c1c-f4a6-4e49-a582-2ecded2559bc",
"sessionExpiresAt": "2026-09-15T15:20:00.000Z"
}
}Deposit Fiat
Resolve Payment Order Requirements
Resolves a dynamic payment-order field using its x-resolution definition. See Dynamic Forms.
POST
/
v1
/
wallets
/
{id}
/
deposit
/
fiat
/
payment-order-requirements
/
resolve
Resolve Payment Order Requirements
curl --request POST \
--url https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"assetId": "ae455f23-3824-4125-baab-d158315cbcbd",
"currency": "NGN",
"amount": "100.00",
"additionalData": {
"beneficiaryType": "individual",
"purpose": "goods_and_services"
},
"provider": "example-provider"
}
'import requests
url = "https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve"
payload = {
"sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"assetId": "ae455f23-3824-4125-baab-d158315cbcbd",
"currency": "NGN",
"amount": "100.00",
"additionalData": {
"beneficiaryType": "individual",
"purpose": "goods_and_services"
},
"provider": "example-provider"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
sessionId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
assetId: 'ae455f23-3824-4125-baab-d158315cbcbd',
currency: 'NGN',
amount: '100.00',
additionalData: {beneficiaryType: 'individual', purpose: 'goods_and_services'},
provider: 'example-provider'
})
};
fetch('https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve', 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.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'sessionId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'assetId' => 'ae455f23-3824-4125-baab-d158315cbcbd',
'currency' => 'NGN',
'amount' => '100.00',
'additionalData' => [
'beneficiaryType' => 'individual',
'purpose' => 'goods_and_services'
],
'provider' => 'example-provider'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve"
payload := strings.NewReader("{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"assetId\": \"ae455f23-3824-4125-baab-d158315cbcbd\",\n \"currency\": \"NGN\",\n \"amount\": \"100.00\",\n \"additionalData\": {\n \"beneficiaryType\": \"individual\",\n \"purpose\": \"goods_and_services\"\n },\n \"provider\": \"example-provider\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"assetId\": \"ae455f23-3824-4125-baab-d158315cbcbd\",\n \"currency\": \"NGN\",\n \"amount\": \"100.00\",\n \"additionalData\": {\n \"beneficiaryType\": \"individual\",\n \"purpose\": \"goods_and_services\"\n },\n \"provider\": \"example-provider\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.blockradar.co/v1/wallets/{id}/deposit/fiat/payment-order-requirements/resolve")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"assetId\": \"ae455f23-3824-4125-baab-d158315cbcbd\",\n \"currency\": \"NGN\",\n \"amount\": \"100.00\",\n \"additionalData\": {\n \"beneficiaryType\": \"individual\",\n \"purpose\": \"goods_and_services\"\n },\n \"provider\": \"example-provider\"\n}"
response = http.request(request)
puts response.read_body{
"statusCode": 200,
"message": "Payment order requirements resolved successfully",
"data": {
"data": {
"beneficiaryType": "individual",
"purpose": "goods_and_services"
},
"metadata": {
"resolutionId": "resolution_839201"
},
"sessionId": "13a36c1c-f4a6-4e49-a582-2ecded2559bc",
"sessionExpiresAt": "2026-09-15T15:20:00.000Z"
}
}N’appelez cette opération que lorsque le schéma renvoyé contient une définition
x-resolution
dont l’url pointe vers cet endpoint.
Nous vous recommandons de transmettre le sessionId renvoyé par le devis de dépôt avec
le additionalData actuel. La session maintient la cohérence du portefeuille, de l’actif, de la devise
fiat, du montant, du rail et de la route de fournisseur sélectionnée tout au long du
flux. sessionId est facultatif : s’il est omis, envoyez plutôt assetId, currency,
amount et rail. Ne renvoyez pas ces champs de routage lorsqu’un
identifiant de session est présent.
La réponse renvoie le même sessionId et sessionExpiresAt. Utilisez cette
session lors de la création de l’ordre de paiement. Si elle expire ou si la route sélectionnée n’est
plus disponible, demandez un nouveau devis et répétez la résolution des exigences.Autorisations
Paramètres de chemin
Wallet identifier.
Corps
application/json
Session ID returned by the deposit quote.
Stablecoin asset identifier.
Exemple:
"ae455f23-3824-4125-baab-d158315cbcbd"
ISO 4217 fiat currency.
Required string length:
3Exemple:
"NGN"
Stablecoin amount as a decimal string.
Pattern:
^\d+(\.\d+)?$Exemple:
"100.00"
Collection method being resolved.
Options disponibles:
one_time_virtual_account, payment_link, qr_code Current values from the dynamic requirements form.
Exemple:
{
"beneficiaryType": "individual",
"purpose": "goods_and_services"
}
Provider slug selected during quote discovery.
Exemple:
"example-provider"

