curl --request PATCH \
--url https://api.spherepay.co/v2/offloader-wallet/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"destination": {
"achReference": "REF456",
"bankAccountId": "bankAccount_6221e8d4299f4a889bd882255e92f581"
},
"integratorBpsFeeRate": "75",
"returnAddress": "0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"
}
'import requests
url = "https://api.spherepay.co/v2/offloader-wallet/{id}"
payload = {
"destination": {
"achReference": "REF456",
"bankAccountId": "bankAccount_6221e8d4299f4a889bd882255e92f581"
},
"integratorBpsFeeRate": "75",
"returnAddress": "0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
destination: {
achReference: 'REF456',
bankAccountId: 'bankAccount_6221e8d4299f4a889bd882255e92f581'
},
integratorBpsFeeRate: '75',
returnAddress: '0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97'
})
};
fetch('https://api.spherepay.co/v2/offloader-wallet/{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.spherepay.co/v2/offloader-wallet/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'destination' => [
'achReference' => 'REF456',
'bankAccountId' => 'bankAccount_6221e8d4299f4a889bd882255e92f581'
],
'integratorBpsFeeRate' => '75',
'returnAddress' => '0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.spherepay.co/v2/offloader-wallet/{id}"
payload := strings.NewReader("{\n \"destination\": {\n \"achReference\": \"REF456\",\n \"bankAccountId\": \"bankAccount_6221e8d4299f4a889bd882255e92f581\"\n },\n \"integratorBpsFeeRate\": \"75\",\n \"returnAddress\": \"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api.spherepay.co/v2/offloader-wallet/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"destination\": {\n \"achReference\": \"REF456\",\n \"bankAccountId\": \"bankAccount_6221e8d4299f4a889bd882255e92f581\"\n },\n \"integratorBpsFeeRate\": \"75\",\n \"returnAddress\": \"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.spherepay.co/v2/offloader-wallet/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"destination\": {\n \"achReference\": \"REF456\",\n \"bankAccountId\": \"bankAccount_6221e8d4299f4a889bd882255e92f581\"\n },\n \"integratorBpsFeeRate\": \"75\",\n \"returnAddress\": \"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97\"\n}"
response = http.request(request)
puts response.read_body{
"address": "0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97",
"created": "2024-06-15T10:30:00.000Z",
"currency": "usdc",
"customerId": "customer_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6",
"destination": {
"achReference": "REF123",
"bankAccountId": "bankAccount_6221e8d4299f4a889bd882255e92f581",
"currency": "usd",
"network": "ach"
},
"fees": {
"integratorFee": {
"bpsRate": "100",
"currency": "usdc"
},
"platformFee": {
"bpsRate": "30",
"currency": "usdc"
}
},
"id": "wallet_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6",
"network": "ethereum",
"status": "active",
"updated": "2024-06-15T12:00:00.000Z",
"returnAddress": "0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"
}{
"code": "address/invalid",
"correlationId": "28c61e885c6e5eaa78c1a2183a9b883c",
"detail": "Invalid request parameters",
"status": 400
}{
"code": "resource/not-found",
"correlationId": "28c61e885c6e5eaa78c1a2183a9b883c",
"detail": "Resource not found",
"status": 404
}{
"code": "validation/failed",
"correlationId": "28c61e885c6e5eaa78c1a2183a9b883c",
"detail": "Validation failed",
"errors": [
{
"detail": "Invalid email format",
"pointer": "/email"
},
{
"detail": "Name is required",
"pointer": "/name"
}
],
"status": 422
}Actualizar el Destino Bancario de un Offloader Wallet
Update an offloader wallet by id
curl --request PATCH \
--url https://api.spherepay.co/v2/offloader-wallet/{id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"destination": {
"achReference": "REF456",
"bankAccountId": "bankAccount_6221e8d4299f4a889bd882255e92f581"
},
"integratorBpsFeeRate": "75",
"returnAddress": "0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"
}
'import requests
url = "https://api.spherepay.co/v2/offloader-wallet/{id}"
payload = {
"destination": {
"achReference": "REF456",
"bankAccountId": "bankAccount_6221e8d4299f4a889bd882255e92f581"
},
"integratorBpsFeeRate": "75",
"returnAddress": "0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
destination: {
achReference: 'REF456',
bankAccountId: 'bankAccount_6221e8d4299f4a889bd882255e92f581'
},
integratorBpsFeeRate: '75',
returnAddress: '0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97'
})
};
fetch('https://api.spherepay.co/v2/offloader-wallet/{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.spherepay.co/v2/offloader-wallet/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'destination' => [
'achReference' => 'REF456',
'bankAccountId' => 'bankAccount_6221e8d4299f4a889bd882255e92f581'
],
'integratorBpsFeeRate' => '75',
'returnAddress' => '0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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.spherepay.co/v2/offloader-wallet/{id}"
payload := strings.NewReader("{\n \"destination\": {\n \"achReference\": \"REF456\",\n \"bankAccountId\": \"bankAccount_6221e8d4299f4a889bd882255e92f581\"\n },\n \"integratorBpsFeeRate\": \"75\",\n \"returnAddress\": \"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.patch("https://api.spherepay.co/v2/offloader-wallet/{id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"destination\": {\n \"achReference\": \"REF456\",\n \"bankAccountId\": \"bankAccount_6221e8d4299f4a889bd882255e92f581\"\n },\n \"integratorBpsFeeRate\": \"75\",\n \"returnAddress\": \"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.spherepay.co/v2/offloader-wallet/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"destination\": {\n \"achReference\": \"REF456\",\n \"bankAccountId\": \"bankAccount_6221e8d4299f4a889bd882255e92f581\"\n },\n \"integratorBpsFeeRate\": \"75\",\n \"returnAddress\": \"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97\"\n}"
response = http.request(request)
puts response.read_body{
"address": "0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97",
"created": "2024-06-15T10:30:00.000Z",
"currency": "usdc",
"customerId": "customer_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6",
"destination": {
"achReference": "REF123",
"bankAccountId": "bankAccount_6221e8d4299f4a889bd882255e92f581",
"currency": "usd",
"network": "ach"
},
"fees": {
"integratorFee": {
"bpsRate": "100",
"currency": "usdc"
},
"platformFee": {
"bpsRate": "30",
"currency": "usdc"
}
},
"id": "wallet_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6",
"network": "ethereum",
"status": "active",
"updated": "2024-06-15T12:00:00.000Z",
"returnAddress": "0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"
}{
"code": "address/invalid",
"correlationId": "28c61e885c6e5eaa78c1a2183a9b883c",
"detail": "Invalid request parameters",
"status": 400
}{
"code": "resource/not-found",
"correlationId": "28c61e885c6e5eaa78c1a2183a9b883c",
"detail": "Resource not found",
"status": 404
}{
"code": "validation/failed",
"correlationId": "28c61e885c6e5eaa78c1a2183a9b883c",
"detail": "Validation failed",
"errors": [
{
"detail": "Invalid email format",
"pointer": "/email"
},
{
"detail": "Name is required",
"pointer": "/name"
}
],
"status": 422
}achReference, wireMessage, sepaReference), ajustar la tasa de comisión del integrador, o actualizar la dirección de retorno para transacciones fallidas. La dirección on-chain y la red de origen son inmutables después de la creación.
network no es un campo modificable. El riel de destino se fija al crear el Offloader Wallet. Para cambiar de riel (por ejemplo, de ACH a wire), crea un nuevo Offloader Wallet.Autorizaciones
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Parámetros de ruta
Cuerpo
The bank account destination where converted funds are sent.
Show child attributes
Show child attributes
{
"achReference": "REF456",
"bankAccountId": "bankAccount_6221e8d4299f4a889bd882255e92f581"
}
Integrator fee override in basis points (0-1000). Send "0" to remove the integrator fee.
"75"
Crypto address where funds are returned on failed transactions. Must be valid for the wallet network.
"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"
Respuesta
The on-chain deposit address for the offloader wallet. Send crypto to this address to trigger automatic conversion.
"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"
Timestamp when the offloader wallet was created (ISO 8601).
"2024-06-15T10:30:00.000Z"
The crypto currency the offloader wallet accepts for deposits. See Supported Rails & Currencies.
usdc, usdt, eurc "usdc"
The customer who owns the offloader wallet.
"customer_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6"
The bank account destination where converted funds are sent. See Bank Accounts guide.
- ACH
- Wire
- SEPA
Show child attributes
Show child attributes
{
"achReference": "REF123",
"bankAccountId": "bankAccount_6221e8d4299f4a889bd882255e92f581",
"currency": "usd",
"network": "ach"
}
Fee configuration for the offloader wallet, including integrator and platform fees.
Show child attributes
Show child attributes
{
"integratorFee": { "bpsRate": "100", "currency": "usdc" },
"platformFee": { "bpsRate": "30", "currency": "usdc" }
}
Unique identifier for the offloader wallet.
"wallet_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6"
The blockchain network the offloader wallet is on. See Supported Rails & Currencies.
sol, ethereum, arbitrum, polygon, base, avalanche, tron "ethereum"
Lifecycle status of the offloader wallet. active accepts deposits and settles; deactivated no longer settles.
active, deactivated "active"
Timestamp when the offloader wallet was last updated (ISO 8601).
"2024-06-15T12:00:00.000Z"
Crypto address where funds are returned on failed transactions. Must be valid for the wallet network. Null if not configured.
"0x4838B106FCe9647Bdf1E7877BF73cE8B0BAD5f97"