cURL
curl --request POST \
--url https://sandbox.zapyd.com/cms/api/v1/customer/payout/create \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--header 'X-SIGNATURE: <api-key>' \
--header 'X-TIMESTAMP: <api-key>' \
--data '
{
"client_reference_id": "beneficiary-001",
"full_name": "Maria Silva",
"email": "maria@example.com",
"phone": "9876543210",
"alpha_3_country_code": "BRA"
}
'import requests
url = "https://sandbox.zapyd.com/cms/api/v1/customer/payout/create"
payload = {
"client_reference_id": "beneficiary-001",
"full_name": "Maria Silva",
"email": "maria@example.com",
"phone": "9876543210",
"alpha_3_country_code": "BRA"
}
headers = {
"X-API-KEY": "<api-key>",
"X-TIMESTAMP": "<api-key>",
"X-SIGNATURE": "<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>',
'X-TIMESTAMP': '<api-key>',
'X-SIGNATURE': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
client_reference_id: 'beneficiary-001',
full_name: 'Maria Silva',
email: 'maria@example.com',
phone: '9876543210',
alpha_3_country_code: 'BRA'
})
};
fetch('https://sandbox.zapyd.com/cms/api/v1/customer/payout/create', 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://sandbox.zapyd.com/cms/api/v1/customer/payout/create",
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([
'client_reference_id' => 'beneficiary-001',
'full_name' => 'Maria Silva',
'email' => 'maria@example.com',
'phone' => '9876543210',
'alpha_3_country_code' => 'BRA'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>",
"X-SIGNATURE: <api-key>",
"X-TIMESTAMP: <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://sandbox.zapyd.com/cms/api/v1/customer/payout/create"
payload := strings.NewReader("{\n \"client_reference_id\": \"beneficiary-001\",\n \"full_name\": \"Maria Silva\",\n \"email\": \"maria@example.com\",\n \"phone\": \"9876543210\",\n \"alpha_3_country_code\": \"BRA\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("X-TIMESTAMP", "<api-key>")
req.Header.Add("X-SIGNATURE", "<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://sandbox.zapyd.com/cms/api/v1/customer/payout/create")
.header("X-API-KEY", "<api-key>")
.header("X-TIMESTAMP", "<api-key>")
.header("X-SIGNATURE", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"client_reference_id\": \"beneficiary-001\",\n \"full_name\": \"Maria Silva\",\n \"email\": \"maria@example.com\",\n \"phone\": \"9876543210\",\n \"alpha_3_country_code\": \"BRA\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.zapyd.com/cms/api/v1/customer/payout/create")
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["X-TIMESTAMP"] = '<api-key>'
request["X-SIGNATURE"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"client_reference_id\": \"beneficiary-001\",\n \"full_name\": \"Maria Silva\",\n \"email\": \"maria@example.com\",\n \"phone\": \"9876543210\",\n \"alpha_3_country_code\": \"BRA\"\n}"
response = http.request(request)
puts response.read_body{
"status": true,
"message": "Success",
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"client_reference_id": "test123",
"full_name": "John Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"country": "USA",
"type": "INDIVIDUAL",
"status": "UNVERIFIED",
"failure_reason": null,
"document_type": "AADHAAR"
}
}{
"status": false,
"message": "Bad Request",
"data": null,
"errors": {
"alpha_3_country_code": [
"Only payout flow does not support XYZ."
]
},
"err_code": "UNKNOWN_ERROR"
}{
"status": false,
"message": "Internal Server Error",
"data": null,
"errors": {},
"err_code": "SYS_INTERNAL_ERROR"
}Payout-only onboarding
Create Payout Customer
Creates a beneficiary customer for a payout-only corridor (India, SEPA, UK, UAE, Brazil and more).
POST
/
customer
/
payout
/
create
cURL
curl --request POST \
--url https://sandbox.zapyd.com/cms/api/v1/customer/payout/create \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--header 'X-SIGNATURE: <api-key>' \
--header 'X-TIMESTAMP: <api-key>' \
--data '
{
"client_reference_id": "beneficiary-001",
"full_name": "Maria Silva",
"email": "maria@example.com",
"phone": "9876543210",
"alpha_3_country_code": "BRA"
}
'import requests
url = "https://sandbox.zapyd.com/cms/api/v1/customer/payout/create"
payload = {
"client_reference_id": "beneficiary-001",
"full_name": "Maria Silva",
"email": "maria@example.com",
"phone": "9876543210",
"alpha_3_country_code": "BRA"
}
headers = {
"X-API-KEY": "<api-key>",
"X-TIMESTAMP": "<api-key>",
"X-SIGNATURE": "<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>',
'X-TIMESTAMP': '<api-key>',
'X-SIGNATURE': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
client_reference_id: 'beneficiary-001',
full_name: 'Maria Silva',
email: 'maria@example.com',
phone: '9876543210',
alpha_3_country_code: 'BRA'
})
};
fetch('https://sandbox.zapyd.com/cms/api/v1/customer/payout/create', 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://sandbox.zapyd.com/cms/api/v1/customer/payout/create",
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([
'client_reference_id' => 'beneficiary-001',
'full_name' => 'Maria Silva',
'email' => 'maria@example.com',
'phone' => '9876543210',
'alpha_3_country_code' => 'BRA'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>",
"X-SIGNATURE: <api-key>",
"X-TIMESTAMP: <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://sandbox.zapyd.com/cms/api/v1/customer/payout/create"
payload := strings.NewReader("{\n \"client_reference_id\": \"beneficiary-001\",\n \"full_name\": \"Maria Silva\",\n \"email\": \"maria@example.com\",\n \"phone\": \"9876543210\",\n \"alpha_3_country_code\": \"BRA\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
req.Header.Add("X-TIMESTAMP", "<api-key>")
req.Header.Add("X-SIGNATURE", "<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://sandbox.zapyd.com/cms/api/v1/customer/payout/create")
.header("X-API-KEY", "<api-key>")
.header("X-TIMESTAMP", "<api-key>")
.header("X-SIGNATURE", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"client_reference_id\": \"beneficiary-001\",\n \"full_name\": \"Maria Silva\",\n \"email\": \"maria@example.com\",\n \"phone\": \"9876543210\",\n \"alpha_3_country_code\": \"BRA\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.zapyd.com/cms/api/v1/customer/payout/create")
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["X-TIMESTAMP"] = '<api-key>'
request["X-SIGNATURE"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"client_reference_id\": \"beneficiary-001\",\n \"full_name\": \"Maria Silva\",\n \"email\": \"maria@example.com\",\n \"phone\": \"9876543210\",\n \"alpha_3_country_code\": \"BRA\"\n}"
response = http.request(request)
puts response.read_body{
"status": true,
"message": "Success",
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"client_reference_id": "test123",
"full_name": "John Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"country": "USA",
"type": "INDIVIDUAL",
"status": "UNVERIFIED",
"failure_reason": null,
"document_type": "AADHAAR"
}
}{
"status": false,
"message": "Bad Request",
"data": null,
"errors": {
"alpha_3_country_code": [
"Only payout flow does not support XYZ."
]
},
"err_code": "UNKNOWN_ERROR"
}{
"status": false,
"message": "Internal Server Error",
"data": null,
"errors": {},
"err_code": "SYS_INTERNAL_ERROR"
}Create Payout Customer
Part of the payout-only onboarding flow. See the payout-only onboarding guide for the order of calls and the fields each country requires.
Authorizations
API Key for authentication
Current timestamp in seconds since epoch
HMAC SHA256 signature of the request encoded in Base64
Body
application/json
Your unique ID for this beneficiary
Example:
"beneficiary-001"
Beneficiary name. Required when client_reference_id is not sent.
Example:
"Maria Silva"
Example:
"maria@example.com"
Exactly 10 digits
Example:
"9876543210"
Beneficiary country, ISO alpha-3. Must be a supported payout-only country; defaults to IND.
Example:
"BRA"
⌘I