curl --request POST \
--url https://app.sandbox.rio.trade/api/payments/crypto/bulk \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"orderIds": [
"6757546b4c5d19bf3cd7b09c",
"6757546b4c5d19bf3cd7b09d"
],
"userId": "6757546b4c5d19bf3cd7b09c"
}
'import requests
url = "https://app.sandbox.rio.trade/api/payments/crypto/bulk"
payload = {
"orderIds": ["6757546b4c5d19bf3cd7b09c", "6757546b4c5d19bf3cd7b09d"],
"userId": "6757546b4c5d19bf3cd7b09c"
}
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({
orderIds: ['6757546b4c5d19bf3cd7b09c', '6757546b4c5d19bf3cd7b09d'],
userId: '6757546b4c5d19bf3cd7b09c'
})
};
fetch('https://app.sandbox.rio.trade/api/payments/crypto/bulk', 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://app.sandbox.rio.trade/api/payments/crypto/bulk",
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([
'orderIds' => [
'6757546b4c5d19bf3cd7b09c',
'6757546b4c5d19bf3cd7b09d'
],
'userId' => '6757546b4c5d19bf3cd7b09c'
]),
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://app.sandbox.rio.trade/api/payments/crypto/bulk"
payload := strings.NewReader("{\n \"orderIds\": [\n \"6757546b4c5d19bf3cd7b09c\",\n \"6757546b4c5d19bf3cd7b09d\"\n ],\n \"userId\": \"6757546b4c5d19bf3cd7b09c\"\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://app.sandbox.rio.trade/api/payments/crypto/bulk")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"orderIds\": [\n \"6757546b4c5d19bf3cd7b09c\",\n \"6757546b4c5d19bf3cd7b09d\"\n ],\n \"userId\": \"6757546b4c5d19bf3cd7b09c\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.sandbox.rio.trade/api/payments/crypto/bulk")
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 \"orderIds\": [\n \"6757546b4c5d19bf3cd7b09c\",\n \"6757546b4c5d19bf3cd7b09d\"\n ],\n \"userId\": \"6757546b4c5d19bf3cd7b09c\"\n}"
response = http.request(request)
puts response.read_body{
"createdAt": "2025-01-04T01:37:25.259Z",
"userId": "6757546b4c5d19bf3cd7b09c",
"orderIds": [],
"amount": 0,
"orderIdsPaid": [],
"crypto": "USDC",
"country": "MX",
"status": "awaitingPayment",
"depositAddress": "5BZDQjWad45rT1vYT5KdJHgSU4rWXL1Y5nDoTwSrT8Pr",
"id": "677890d5d520f9ecb10e9c33"
}Create bulk crypto payment
curl --request POST \
--url https://app.sandbox.rio.trade/api/payments/crypto/bulk \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"orderIds": [
"6757546b4c5d19bf3cd7b09c",
"6757546b4c5d19bf3cd7b09d"
],
"userId": "6757546b4c5d19bf3cd7b09c"
}
'import requests
url = "https://app.sandbox.rio.trade/api/payments/crypto/bulk"
payload = {
"orderIds": ["6757546b4c5d19bf3cd7b09c", "6757546b4c5d19bf3cd7b09d"],
"userId": "6757546b4c5d19bf3cd7b09c"
}
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({
orderIds: ['6757546b4c5d19bf3cd7b09c', '6757546b4c5d19bf3cd7b09d'],
userId: '6757546b4c5d19bf3cd7b09c'
})
};
fetch('https://app.sandbox.rio.trade/api/payments/crypto/bulk', 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://app.sandbox.rio.trade/api/payments/crypto/bulk",
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([
'orderIds' => [
'6757546b4c5d19bf3cd7b09c',
'6757546b4c5d19bf3cd7b09d'
],
'userId' => '6757546b4c5d19bf3cd7b09c'
]),
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://app.sandbox.rio.trade/api/payments/crypto/bulk"
payload := strings.NewReader("{\n \"orderIds\": [\n \"6757546b4c5d19bf3cd7b09c\",\n \"6757546b4c5d19bf3cd7b09d\"\n ],\n \"userId\": \"6757546b4c5d19bf3cd7b09c\"\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://app.sandbox.rio.trade/api/payments/crypto/bulk")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"orderIds\": [\n \"6757546b4c5d19bf3cd7b09c\",\n \"6757546b4c5d19bf3cd7b09d\"\n ],\n \"userId\": \"6757546b4c5d19bf3cd7b09c\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.sandbox.rio.trade/api/payments/crypto/bulk")
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 \"orderIds\": [\n \"6757546b4c5d19bf3cd7b09c\",\n \"6757546b4c5d19bf3cd7b09d\"\n ],\n \"userId\": \"6757546b4c5d19bf3cd7b09c\"\n}"
response = http.request(request)
puts response.read_body{
"createdAt": "2025-01-04T01:37:25.259Z",
"userId": "6757546b4c5d19bf3cd7b09c",
"orderIds": [],
"amount": 0,
"orderIdsPaid": [],
"crypto": "USDC",
"country": "MX",
"status": "awaitingPayment",
"depositAddress": "5BZDQjWad45rT1vYT5KdJHgSU4rWXL1Y5nDoTwSrT8Pr",
"id": "677890d5d520f9ecb10e9c33"
}Requirements to consume the endpoint.
Create and modify role
User approved
Authorizations
Body
Optional list of order IDs to include in the bulk crypto payment. When omitted, crypto, country and userId must be provided
[
"6757546b4c5d19bf3cd7b09c",
"6757546b4c5d19bf3cd7b09d"
]
The type of cryptocurrency involved in the order
USDC, USDC_POLYGON_NXTB, SOL_USDC_PTHX, XLM_USDC_5F3T, USDC_BASECHAIN_ETH_5I5C, USDCE_TEMPO_MXYR, USDT_POLYGON, USDT_ERC20, TRX_USDT_S2UZ, USDT_BSC, SOL_USDT_EWAY, EUROC_ETH_F5NG, EURC_SOL, EURC_B609K9QB_Y213 The country of the user
MX, PE, CO The unique identifier of the user
"6757546b4c5d19bf3cd7b09c"
Response
Created
The date and time the order was created
"2025-01-04T01:37:25.259Z"
The unique identifier of the user
"6757546b4c5d19bf3cd7b09c"
List of order IDs associated with the user
[]
The total amount of the orders
0
List of order IDs that have been paid
[]
The type of cryptocurrency involved in the order
USDC, USDC_POLYGON_NXTB, SOL_USDC_PTHX, XLM_USDC_5F3T, USDC_BASECHAIN_ETH_5I5C, USDCE_TEMPO_MXYR, USDT_POLYGON, USDT_ERC20, TRX_USDT_S2UZ, USDT_BSC, SOL_USDT_EWAY, EUROC_ETH_F5NG, EURC_SOL, EURC_B609K9QB_Y213 The country of the operation
MX, PE, CO The current status of the bulk crypto payment.
awaitingDepositAddress, awaitingOrders, awaitingPayment, awaitingAsyncPayment, awaitingAsyncPayoutForOrders, complete, failed, cancelled, insufficientAmountReceived, excessAmountReceived "awaitingPayment"
The deposit address for the order
"5BZDQjWad45rT1vYT5KdJHgSU4rWXL1Y5nDoTwSrT8Pr"
The unique identifier of the bulk crypto payment
"677890d5d520f9ecb10e9c33"