curl --request POST \
--url "https://api.stablepay.co/api/v1/recipient" \
--header "Authorization: Bearer <API_KEY>" \
--header "X-StablePay-Timestamp: <TIMESTAMP>" \
--header "X-StablePay-Nonce: <NONCE>" \
--header "X-StablePay-Signature: <SIGNATURE>" \
--header "Content-Type: application/json" \
--data '{
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
}
}'
const response = await fetch("https://api.stablepay.co/api/v1/recipient", {
method: "POST",
headers: {
"Authorization": "Bearer <API_KEY>",
"X-StablePay-Timestamp": "<TIMESTAMP>",
"X-StablePay-Nonce": "<NONCE>",
"X-StablePay-Signature": "<SIGNATURE>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
}
})
});
console.log(await response.json());
{
"recipient_id": "9000000080",
"merchant_id": "2000000001",
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
},
"created": 1718726401
}
Global Accounts API
Create a recipient
Create a recipient
POST
/
api
/
v1
/
recipient
curl --request POST \
--url "https://api.stablepay.co/api/v1/recipient" \
--header "Authorization: Bearer <API_KEY>" \
--header "X-StablePay-Timestamp: <TIMESTAMP>" \
--header "X-StablePay-Nonce: <NONCE>" \
--header "X-StablePay-Signature: <SIGNATURE>" \
--header "Content-Type: application/json" \
--data '{
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
}
}'
const response = await fetch("https://api.stablepay.co/api/v1/recipient", {
method: "POST",
headers: {
"Authorization": "Bearer <API_KEY>",
"X-StablePay-Timestamp": "<TIMESTAMP>",
"X-StablePay-Nonce": "<NONCE>",
"X-StablePay-Signature": "<SIGNATURE>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
}
})
});
console.log(await response.json());
{
"recipient_id": "9000000080",
"merchant_id": "2000000001",
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
},
"created": 1718726401
}
See authentication, signing, data conventions, and errors. Regenerate the timestamp, nonce, and signature on every retry.
POST /recipient Creates a payout destination; type, currency, and is_third_party are immutable.
Request headers
string
required
Bearer API Key.
string
required
Unix seconds, within five minutes of server time.
string
required
Unique per request, 16–64 characters.
string
required
Lowercase hexadecimal HMAC-SHA256 signature for the exact request body.
string
Idempotency key
Request parameters
string
10 digits; omit for merchant apps, required for service-provider apps
string
Business reference
string
required
stablecoin_address or fiat_accountstring
required
Payout currency
boolean
required
true for a third party, false for your own entity
string
Display name, up to 140 characters
string
Required for
stablecoin_addressobject
required
Address and memo, or bank fields
Response
string
required
Recipient ID
string
required
Merchant ID
string
Business reference
string
required
stablecoin_address or fiat_accountstring
required
Payout currency
boolean
required
Whether a third party
string
Display name
string
Stablecoin network
object
required
Address and memo, or bank fields
integer
required
Creation time
integer
Update time
Status and errors
400 invalid parameters or missing required bank fields.curl --request POST \
--url "https://api.stablepay.co/api/v1/recipient" \
--header "Authorization: Bearer <API_KEY>" \
--header "X-StablePay-Timestamp: <TIMESTAMP>" \
--header "X-StablePay-Nonce: <NONCE>" \
--header "X-StablePay-Signature: <SIGNATURE>" \
--header "Content-Type: application/json" \
--data '{
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
}
}'
const response = await fetch("https://api.stablepay.co/api/v1/recipient", {
method: "POST",
headers: {
"Authorization": "Bearer <API_KEY>",
"X-StablePay-Timestamp": "<TIMESTAMP>",
"X-StablePay-Nonce": "<NONCE>",
"X-StablePay-Signature": "<SIGNATURE>",
"Content-Type": "application/json"
},
body: JSON.stringify({
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
}
})
});
console.log(await response.json());
{
"recipient_id": "9000000080",
"merchant_id": "2000000001",
"type": "stablecoin_address",
"currency": "USDC",
"is_third_party": true,
"name": "Supplier A",
"network": "solana",
"details": {
"address": "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YymTvAVmRoz"
},
"created": 1718726401
}
Last modified on October 29, 2026
Was this page helpful?
