Virtual account
Update Virtual Account
AuthorizationBearer <token>
JWT Bearer token authentication
In: header
Path Parameters
virtual_account_idstring
The virtual account's unique ID generated by SpherePay upon virtual account creation.
Pattern
"^virtualAccount_[a-z0-9]+$"
destinationCurrencystring
The currency of the stable coin received from sending funds to the virtual account.
Value in
"USDC" | "USDT"
networkstring
The currency of the source bank-account or wallet. Please refer to the Virtual Account Guide for more information.
walletAddressstring
The wallet address to send the funds to.
integratorBpsFee?string
The basis point percentage fee for the integrator.
Default
"0"
Pattern
"^[0-9]+$"
Response Body
curl -X PATCH "https://api.sandbox.spherepay.co/v2/virtual-account/virtualAccount_1ab2c3d4" \
-H "Content-Type: application/json" \
-d '{
"sourceCurrency": "USD",
"destinationCurrency": "USDC",
"network": "ethereum",
"walletAddress": "0x1234...abcd"
}'
const body = JSON.stringify({
"sourceCurrency": "USD",
"destinationCurrency": "USDC",
"network": "ethereum",
"walletAddress": "0x1234...abcd"
})
fetch("https://api.sandbox.spherepay.co/v2/virtual-account/virtualAccount_1ab2c3d4", {
body
})
package main
import (
"fmt"
"net/http"
"io/ioutil"
"strings"
)
func main() {
url := "https://api.sandbox.spherepay.co/v2/virtual-account/virtualAccount_1ab2c3d4"
body := strings.NewReader(`{
"sourceCurrency": "USD",
"destinationCurrency": "USDC",
"network": "ethereum",
"walletAddress": "0x1234...abcd"
}`)
req, _ := http.NewRequest("PATCH", url, body)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
import requests
url = "https://api.sandbox.spherepay.co/v2/virtual-account/virtualAccount_1ab2c3d4"
body = {
"sourceCurrency": "USD",
"destinationCurrency": "USDC",
"network": "ethereum",
"walletAddress": "0x1234...abcd"
}
response = requests.request("PATCH", url, json = body, headers = {
"Content-Type": "application/json"
})
print(response.text)
{
"id": "virtualAccount_987xyz654",
"active": true,
"fees": {
"totalBpsRate": "20",
"integratorFee": {
"bpsRate": "10"
},
"platformFee": {
"bpsRate": "10"
}
},
"depositInstructions": {
"currency": "USD",
"bankName": "Bank of Example",
"bankAccountNumber": "000123456789",
"bankRoutingNumber": "1234567890",
"bankBeneficiaryName": "John Doe",
"bankBeneficiaryAddress": "123 Main St, Anytown, USA"
},
"destination": {
"currency": "USDC",
"walletAddress": "0x1234...abcd",
"network": "ethereum"
},
"created": "2025-04-20T21:49:46.697Z",
"updated": "2025-04-20T21:50:18.854Z"
}
{
"ts": "2025-04-20T00:09:16.870Z",
"error": {
"information": [
"Required"
]
}
}
{
"ts": "2025-04-20T00:09:16.870Z",
"error": {
"general": "{{information}} Not Found"
}
}