Create
If you would like to set up accounts to request quotes for, please follow the instructions below or refer to our guide.
Endpoint
POST https://api.bindpay.xyz/v1/create-subpayee
Headers
Header |
Value |
Description |
---|---|---|
Content-Type |
application/json |
The content type of the request body |
x-api-key |
Your API key |
The subpayee creation API key of the parent integrator |
Request body
Field |
Type |
Description |
---|---|---|
name |
string |
Identifier of subpayee |
toChain |
string |
The chain ID of the destination blockchain |
toToken |
string |
The token address on the destination blockchain |
toAddress |
string |
The wallet address of the subpayee |
Notes:
-
All fields in the request body are required.
-
The request body defines the settlement details for the account.
-
Ensure the address is a valid address on the specified network.
-
Pay special attention to the note about the account creation API key, as it's different from your integrator API key.
Example Request
curl -X POST "https://api.bindpay.xyz/v1/create-subpayee" \
-H "Content-Type: application/json" \
-H "x-api-key: your_generate_subpayee_api_key_here" \
-d '{
"name": "Vitalik.eth",
"toChain": "1",
"toToken": "ETH",
"toAddress": "0x742d35Cc6634C0532925a3b844Bc454e4438f44b"
}'
import axios from 'axios';
const url = 'https://api.bindpay.xyz/v1/create-subpayee';
const headers = {
'Content-Type': 'application/json',
'x-api-key': 'your_generate_subpayee_api_key_here'
};
const data = {
name: 'Leroy Jenkins',
toChain: '1',
toToken: 'ETH',
toAddress: '0x742d35Cc6634C0532925a3b844Bc454e4438f44b'
};
axios.post(url, data, { headers })
.then(response => console.log(response.data))
.catch(error => console.error('Error:', error));
use reqwest::Client;
use serde_json::json;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let url = "https://api.bindpay.xyz/v1/create-subpayee";
let client = Client::new();
let response = client.post(url)
.header("Content-Type", "application/json")
.header("x-api-key", "your_generate_subpayee_api_key_here")
.json(&json!({
"name": "Leroy Jenkins",
"toChain": "1",
"toToken": "ETH",
"toAddress": "0x742d35Cc6634C0532925a3b844Bc454e4438f44b"
}))
.send()
.await?;
println!("{}", response.text().await?);
Ok(())
}
import requests
url = "https://api.bindpay.xyz/v1/create-subpayee"
headers = {
"Content-Type": "application/json",
"x-api-key": "your_generate_subpayee_api_key_here"
}
data = {
"name": "Leroy Jenkins",
"toChain": "1",
"toToken": "ETH",
"toAddress": "0x742d35Cc6634C0532925a3b844Bc454e4438f44b"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
require 'net/http'
require 'uri'
require 'json'
uri = URI('https://api.bindpay.xyz/v1/create-subpayee')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri,
'Content-Type' => 'application/json',
'x-api-key' => 'your_generate_subpayee_api_key_here'
)
request.body = {
name: 'Leroy Jenkins',
toChain: '1',
toToken: 'ETH',
toAddress: '0x742d35Cc6634C0532925a3b844Bc454e4438f44b'
}.to_json
response = http.request(request)
puts response.body
Notes:
-
This curl command demonstrates how to make the API call from the command line.
-
Replace your-subpayee-creation-api-key-here with the actual subpayee creation API key.
-
The example uses Ethereum (chain ID 1) and USDC token address as placeholders.
Successful Response
{
"message": "Subpayee created successfully",
"apiKey": "generated-api-key-for-subpayee"
}
Notes:
-
The response includes a newly generated API key specific to the created subpayee. Use this key when requesting quotes to direct payments to the sub-payees desired settlement details.
-
This API key should be securely stored as it represents the sub-payee - get in touch for any integration questions - support@bindpay.xyz.
Error Response
Status Code |
Error Type |
Description |
---|---|---|
400 |
Bad Request |
The request was invalid. This occurs when the API key is missing or when required fields in the request body are missing. |
401 |
Unauthorized |
The provided subpayee creation API key is invalid. |
404 |
Not Found |
The parent business associated with the provided subpayee creation API key was not found. |
409 |
Conflict |
A subpayee with the same name already exists for this parent business. |
422 |
Unprocessable Entity |
The request was well-formed but contains invalid data (e.g., invalid blockchain address). |
429 |
Too Many Requests |
The user has sent too many requests in a given amount of time. |
500 |
Internal Server Error |
The server encountered an unexpected condition that prevented it from fulfilling the request. |
Notes:
-
Error responses use standard HTTP status codes for easy interpretation.
-
The 400 status code indicates client-side errors (e.g., missing fields).
-
The 404 status code specifically indicates that the parent business was not found.
Any further questions - feel free to explore the rest of our documentation or get in touch.