Skip to main content

Create Recipient

Overview

The Create Recipient API allows you to add a new payment recipient with their banking details. Recipients must be verified and have an 'AVAILABLE' status before sending external payments. Required verification and banking details vary by region and payment channel.

Resource Access

  • HTTP Method: POST
  • Endpoint: /banking/iban/api/recipient/v2/create
  • Authentication: Bearer token required

Request Headers

HeaderValueRequiredDescription
Acceptapplication/jsonYesContent type for the response
AuthorizationBearer {access_token}YesBearer token for authentication
Content-Typeapplication/jsonYesRequest body content type
on-behalf-ofstringNoCustomer ID for on-behalf-of operations

Request Body

The request body should contain a JSON object with the following structure:

{
"holder_type": "PERSONAL",
"account_type": "RECIPIENT_BANK",
"bank_detail": {
"currency": "INR",
"account_name": "SHASHANK VIJAYSHANKAR TIWARI",
"account_no": "703912345678",
"bank_name": "BANK OF BARODA",
"bank_code": "006",
"account_type": "CHECKING",
"location": "IN",
"contact_phone": "007 3700 7457",
"branch_name": "THANE BRANCH",
"branch_code": "391",
"ifsc_code": "HDFC0000001",
"sort_code": "87",
"address": "SUMAN HEIGHTS LODHA HERITAGE NAVNEET NAGAR MAHARASHTRA THANE INDIA",
"province": "MAHARASHTRA",
"city": "THANE",
"swift_code": "CITIINHFXXX",
"routing_no": "0006391",
"iban": "HU58711204120061837086422231",
"cert_type": "02",
"cert_no": "CS8899966"
},
"recipient_detail": {
"recipient_type": "20",
"recipient_location": "IN",
"phone_prefix": "+91",
"phone_no": "9876543210",
"email": "recipient@example.com",
"address": "SUMAN HEIGHTS LODHA HERITAGE NAVNEET NAGAR MAHARASHTRA THANE INDIA",
"address_state": "MAHARASHTRA",
"address_city": "THANE",
"address_street": "NAVNEET NAGAR",
"address_postcode": "5110",
"name": "SHASHANK VIJAYSHANKAR TIWARI",
"partner_user_id": "P298UI839KADY381"
},
"document": "8f7d6e5c-4b3a-2f1d-9e8c-7b6a5d4c3f2e"
}

Request Fields

Top Level Fields

FieldTypeRequiredDescription
holder_typestringYesType of account holder: PERSONAL or BUSINESS
account_typestringYesType of account: RECIPIENT_BANK
bank_detailobjectYesBanking information object
recipient_detailobjectYesRecipient personal information object
documentstring (UUID)NoDocument ID from file upload

Bank Detail Fields

FieldTypeRequiredDescription
currencystringYesCurrency code (e.g., INR, USD, EUR)
account_namestringYesName on the bank account
account_nostringYesBank account number
bank_namestringYesName of the bank
bank_codestringNoBank code
account_typestringYesAccount type: CHECKING or SAVINGS
locationstringYesCountry code (ISO 2-letter)
contact_phonestringNoContact phone number
branch_namestringNoBank branch name
branch_codestringNoBank branch code
ifsc_codestringNoIFSC code (India)
sort_codestringNoSort code (UK)
addressstringNoBank address
provincestringNoProvince/state
citystringNoCity
swift_codestringNoSWIFT/BIC code
routing_nostringNoRouting number (US)
ibanstringNoIBAN (Europe)
cert_typestringNoCertificate type
cert_nostringNoCertificate number

Recipient Detail Fields

FieldTypeRequiredDescription
recipient_typestringYesType code of recipient
recipient_locationstringYesCountry code (ISO 2-letter)
phone_prefixstringYesCountry code prefix
phone_nostringYesPhone number
emailstringYesEmail address
addressstringYesFull address
address_statestringNoState/province
address_citystringYesCity
address_streetstringNoStreet address
address_postcodestringYesPostal/ZIP code
namestringYesRecipient full name
partner_user_idstringYesYour unique identifier for this recipient

Response

Success Response (201 Created)

{
"recipient_id": "RCPT_12345678",
"holder_type": "PERSONAL",
"account_type": "RECIPIENT_BANK",
"status": "PENDING",
"bank_detail": {
"currency": "INR",
"account_name": "SHASHANK VIJAYSHANKAR TIWARI",
"account_no": "****5678",
"bank_name": "BANK OF BARODA",
"location": "IN"
},
"recipient_detail": {
"name": "SHASHANK VIJAYSHANKAR TIWARI",
"email": "recipient@example.com",
"phone_prefix": "+91",
"phone_no": "9876543210"
},
"created_at": "2026-01-13T10:00:00.000Z"
}

Response Fields

FieldTypeDescription
recipient_idstringUnique identifier for the recipient
holder_typestringType of account holder
account_typestringType of account
statusstringRecipient status
bank_detailobjectMasked banking information
recipient_detailobjectRecipient information
created_atstring (date-time)Creation timestamp

Recipient Status Values

  • PENDING: Recipient created and under review
  • AVAILABLE: Recipient verified and ready for payments
  • DECLINED: Recipient verification failed
  • SUSPENDED: Recipient temporarily suspended

Error Responses

  • 400 Bad Request: Invalid input data (missing required fields, invalid format)
  • 401 Unauthorized: Invalid or missing authentication token
  • 404 Not Found: Customer not found (when using on-behalf-of)
  • 409 Conflict: Recipient already exists
  • 422 Unprocessable Entity: Validation errors in banking details

Code Examples

cURL

curl -X POST \
'https://gateway.ahrvo.network/banking/iban/api/recipient/v2/create' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"holder_type": "PERSONAL",
"account_type": "RECIPIENT_BANK",
"bank_detail": {
"currency": "INR",
"account_name": "SHASHANK VIJAYSHANKAR TIWARI",
"account_no": "703912345678",
"bank_name": "BANK OF BARODA",
"account_type": "CHECKING",
"location": "IN"
},
"recipient_detail": {
"recipient_type": "20",
"recipient_location": "IN",
"phone_prefix": "+91",
"phone_no": "9876543210",
"email": "recipient@example.com",
"address": "THANE MAHARASHTRA INDIA",
"address_city": "THANE",
"address_postcode": "5110",
"name": "SHASHANK VIJAYSHANKAR TIWARI",
"partner_user_id": "P298UI839KADY381"
}
}'

Python

import requests

url = "https://gateway.ahrvo.network/banking/iban/api/recipient/v2/create"
headers = {
"Accept": "application/json",
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
}
data = {
"holder_type": "PERSONAL",
"account_type": "RECIPIENT_BANK",
"bank_detail": {
"currency": "INR",
"account_name": "SHASHANK VIJAYSHANKAR TIWARI",
"account_no": "703912345678",
"bank_name": "BANK OF BARODA",
"account_type": "CHECKING",
"location": "IN"
},
"recipient_detail": {
"recipient_type": "20",
"recipient_location": "IN",
"phone_prefix": "+91",
"phone_no": "9876543210",
"email": "recipient@example.com",
"address": "THANE MAHARASHTRA INDIA",
"address_city": "THANE",
"address_postcode": "5110",
"name": "SHASHANK VIJAYSHANKAR TIWARI",
"partner_user_id": "P298UI839KADY381"
}
}

response = requests.post(url, headers=headers, json=data)
print(response.json())

JavaScript (Node.js)

const axios = require('axios');

const url = 'https://gateway.ahrvo.network/banking/iban/api/recipient/v2/create';
const headers = {
'Accept': 'application/json',
'Authorization': 'Bearer YOUR_ACCESS_TOKEN',
'Content-Type': 'application/json'
};
const data = {
holder_type: 'PERSONAL',
account_type: 'RECIPIENT_BANK',
bank_detail: {
currency: 'INR',
account_name: 'SHASHANK VIJAYSHANKAR TIWARI',
account_no: '703912345678',
bank_name: 'BANK OF BARODA',
account_type: 'CHECKING',
location: 'IN'
},
recipient_detail: {
recipient_type: '20',
recipient_location: 'IN',
phone_prefix: '+91',
phone_no: '9876543210',
email: 'recipient@example.com',
address: 'THANE MAHARASHTRA INDIA',
address_city: 'THANE',
address_postcode: '5110',
name: 'SHASHANK VIJAYSHANKAR TIWARI',
partner_user_id: 'P298UI839KADY381'
}
};

axios.post(url, data, { headers })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error.response.data);
});

Usage Notes

  • Recipients start with PENDING status during verification
  • Account numbers are masked in responses for security
  • Required fields vary by country and payment method
  • Monitor recipient status via webhooks
  • IBAN is required for European recipients
  • SWIFT code is required for international wire transfers
  • IFSC code is required for Indian recipients
  • Routing number is required for US recipients
  • Upload verification documents before creating recipients when required

Interactive API Explorer