Smart Collect

Create Customer Identifiers and UPI IDs on-demand for customers to pay via NEFT, RTGS, IMPS and UPI using Razorpay Smart Collect APIs.


You can create Customer Identifiers using the Smart Collect APIs to accept large payments from your customers in the form of bank transfers via NEFT, RTGS and IMPS.

Know more about

.

Changelog

  • We have changed the term Virtual Account to Customer Identifier. (Jan 2023)
  • We have deprecated the qr receiver type from our APIs. vpa and bank_account are the only supported receiver types. (Jun 2022)

Explore the Smart Collect API collection below in the Razorpay Postman Public Workspace. Fork the workspace and test the APIs with your

.

API EndpointDescription
Creates a Customer Identifier with bank account receiver.
Creates a Customer Identifier with VPA receiver.
Creates a Customer Identifier with VPA and bank account receivers.
Retrieves details of a Customer Identifier with id.
Retrieves details of all Customer Identifiers.
Retrieves details of payments made against a particular Customer Identifier.
Retrieves details of a payment using bank transfer method.
Retrieves details of a payment using bank transfer method via UTR.
Retrieves details of a UPI payment using the Payment ID.
Initiates refunds for a payment made towards a Customer Identifier.
Adds receiver to an existing Customer Identifier with VPA.
Adds receiver to an existing Customer Identifier with bank account.
Updates details of a Customer Identifier.
Closes a Customer Identifier.

The Smart Collect entity has the following fields:

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

.

customer_id

string Unique identifier of the customer the Customer Identifier is linked with. Know more about

.

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_account
  • vpa

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

. 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

integer UNIX timestamp at which the Customer Identifier 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).

Watch Out!

  • Any request beyond 2147483647 UNIX timestamp will fail.
  • A Customer Identifier API that has not been used for 90 days will be automatically closed even if no close_by date has been set.

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.


Was this page helpful?