Smart Collect

Integrate with Smart Collect APIs using partner auth.


Razorpay Smart Collect enables you to create virtual accounts to accept large payments from your customers in the form of bank transfers via NEFT, RTGS and IMPS.

Virtual accounts are similar to bank accounts wherein customers can transfer payments. You can create, retrieve and close virtual accounts using the Smart Collect APIs.

Handy Tips

Consider these

before getting started with Smart Collect.

Given below is the sample code for the Create a Virtual Account API. Pass the account_id of the sub-merchant using X-Razorpay-Account in the header. Refer to the

.

POST
/virtual_accounts

receivers

mandatory

json object Configuration of desired receivers for the virtual account.

types

array List of desired receiver types. Possible values:

  • bank_account
  • vpa
  • qr_code

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.

qr_code

optional

json object Descriptor details for the QR code. This is to be passed only when qr_code is passed as the receiver types.

.

description

optional

string A brief description of the virtual account.

customer_id

optional

string Unique identifier of the customer to whom the virtual account must be tagged. Refer to the

documentation to learn how to create a customer.

notes

optional

json object Any custom notes you might want to add to the virtual account can be entered here. Refer to the

to know more.

close_by

optional

integer UNIX timestamp at which the virtual account is scheduled to be automatically closed. The time must be at least 15 minutes after current time. The date range can be set till 2147483647 in UNIX timestamp format (equivalent to Tuesday, January 19, 2038 8:44:07 AM GMT+05:30).

Note:
Any request beyond 2147483647 UNIX timestamp will fail.

Handy Tips

While sharing the details of VAs (created using RBL bank) with the customers, ensure that the fifth character in the IFSC is number 0 and not the letter O. For example, valid IFSC is RATN0VAAPIS and not RATNOVAAPIS.

Given below is the sample code for Fetch all Virtual Accounts API. Pass the account_id of the sub-merchant using X-Razorpay-Account in the header.

GET
/virtual_accounts

Was this page helpful?