Request
Curl
Response
Success
Parameters
receivers mandatory
: json object Configuration of desired receivers for the Customer Identifier.
types
: array List of desired receiver types. Possible values:
bank_accountvpa
vpa optional
: json object Descriptor details for the virtual UPI ID. This is to be passed only when vpa is passed as the receiver types.
descriptor
: string You can provide a custom descriptor for the UPI ID. This is a unique identifier provided by you to identify the customer. For example, gaurikumari and akashkumar are the descriptors in the usernames rpy.payto00000gaurikumari and rpy.payto00000akashkumar respectively. The combination of merchant prefix and descriptor must be 20 characters. The length of the merchant prefix can vary between 4-10 characters, and the length of descriptor from 10-16 characters.
bank_account optional
: json object Descriptor details for the Bank Account. This is to be passed only when bank_account is passed as the receiver types.
descriptoroptional
: string A unique, numeric / alphanumeric custom descriptor defined by you for the bank account. The maximum length allowed is 10 digits.
Handy Tips
Please reach out to the support team if you are unable to pass the parameter with
bank_account.description optional
: string A brief description of the Customer Identifier.
customer_id optional
: string Unique identifier of the customer to whom the Customer Identifier must be tagged. Create a customer using the Customer API.
notes optional
: json object Any custom notes you might want to add to the Customer Identifier can be entered here. Know more about notes.
close_by optional
: integer UNIX timestamp at which the Customer Identifier is scheduled to be automatically closed. For example, 1681615838. This needs to be passed only if you want the Customer Identifier to be temporary and auto-deleted after a specific usage time.
Parameters
id
: string The unique identifier of the Customer Identifier.
name
: string The merchant billing label as it appears on the Dashboard.
entity
: string Indicates the type of entity. Here, it is virtual account.
status
: string Indicates whether the Customer Identifier is in active or closed state.
description
: string A brief description about the Customer Identifier.
amount_expected
: integer The amount expected by the merchant.
amount_paid
: integer The amount paid by the customer into the Customer Identifier.
notes
: json object Any custom notes you might want to add to the Customer Identifier can be entered here. Know more about notes.
customer_id
: string Unique identifier of the customer the Customer Identifier is linked with. Know more about Customer API.
receivers
: json object Configuration of desired receivers for the Customer Identifier.
id
: string The unique identifier of the virtual bank account or virtual UPI ID. Sample IDs for:
- Virtual bank account:
ba_Di5gbQsGn0QSz3 - Virtual UPI ID:
vpa_CkTmLXqVYPkbxx
entity
: string Name of the entity. Possible values are:
bank_accountvpa
ifsc
: string The IFSC for the virtual bank account created. For example, RAZR0000001. This parameter appears in the response only when bank_account is passed as the receiver type.
bank_name
: string The bank associated with the virtual bank account. For example, RBL Bank. This parameter appears in the response only when bank_account is passed as the receiver type.
account_number
: string The unique account number provided by the bank. For example, 1112220061746877. This parameter appears in the response only when bank_account is passed as the receiver type.
name
: string The merchant billing label as it appears on the Dashboard. This parameter appears in the response only when bank_account is passed as the receiver type.
notes
: json object Any custom notes you might want to add to the virtual bank account or virtual UPI ID can be entered here. Know more about notes. This parameter appears in the response only when bank_account is passed as the receiver type.
username
: string The UPI ID consists of the username and the bank handle. The username consists of the namespace (assigned by the bank to Razorpay), the merchant prefix (which can be customised by you) and the descriptor (which you provide to identify the customer). The unique identifier which forms the first half of the virtual UPI ID. For example, rpy.payto00000gaurikumari. This parameter appears in the response only when vpa is passed as the receiver type. The descriptor can be 10 characters only.
handle
: string The bank name that forms the second half of the virtual UPI ID. For example, icici. This parameter appears in the response only when vpa is passed as the receiver type.
address
: string The UPI ID that combines the username and the handle with the @ symbol. For example, rpy.payto00000gaurikumari@icici. This parameter appears in the response only when vpa is passed as the receiver type.
close_by optional
: integer UNIX timestamp at which the Customer Identifier is scheduled to be automatically closed. For example, 1681615838. This is returned only if the UNIX timestamp was specified during the Customer Identifier creation. There is no expiry time for a Customer Identifier unless specified during creation.
closed_at
: integer UNIX timestamp at which the Customer Identifier is automatically closed.
created_at
: integer UNIX timestamp at which the Customer Identifier was created.
Errors
The api “ provided is invalid- code: 4xx
- description: Occurs when there is a mismatch between the API credentials passed in the API call and the API credentials generated on the Dashboard.
- solution: Make sure that the API keys are active and entered correctly. Also, make sure there are no whitespaces before or after the keys.
field name is required
- code: 400
- description: Occurs when a mandatory field is empty.
- solution: Make sure that all the mandatory fields are filled.
- code: 400
- description: Occurs when the
customer_idpassed is wrong or does not belong to the identifier associated to the API Keys used. - solution: Make sure that the
customer_idand the API keys used belong to the same identifier and same mode, whether test or live respectively.
- code: 400
- description: Occurs when the receivers field is empty.
- solution: Make sure that the receivers field is populated with receiver type as either bank account or VPA according to your receiver requirement.
- code: 400
- description: The description provided by you already exists for another account.
- solution: Provide a different description, as the same description already exists for an account.