For merchants with bank account verification enabled, we confirm that each payment is made from an existing, verified bank account associated with the customer. You can view the list of supported banks.

Please reach out to your account manager to enable the this feature.

To process a TPV payment through Cashfree, include specific customer details in the Create Order API request. During payment authorization, we will verify these details against the actual payment instrument used by the customer. Required fields include customer_bank_account_number and customer_bank_ifsc, where the IFSC is an alphanumeric code (e.g., SBIN000001) that uniquely identifies a bank branch in India.

Implement TPV enabled order

To process a payment with bank account check (TPV), you must pass the customer account number (customer_bank_account_number) and IFSC (customer_bank_ifsc) with every create order request. If you want the order to be processed through NetBanking, then you must pass the customer_bank_code as well.

Pre-Built UI

To process a TPV payment using pre-built UI, open checkout using the payment_session_id parameter generated from the response of the create order API. Using this the customer can make a payment only through their linked account.
If the customer tries to complete the payment through a different account, the payment will fail and the order will remain in an ACTIVE state.

Custom UI

To process TPV payments with your own UI. You will have to either integrate the javascript elements SDK or use the /orders/sessions API. There is no change in this api request and you can read about the API contract here.

If you want to process a TPV payment using Payment Links, you can either use the Payment Link API or the upload a file to bulk create Payment Links or through Dashboard as well.

Bulk Upload

When using a file upload to create payment links, you can pass on the customer bank information to us in the CSV file being uploaded. You will use the Notes columns to fill in the specific values. You can use the Notes 1 columns for bank code, Notes 2 for customer bank account number and Notes 3 for IFSC. Here is an example of a sample file. In the below file Note 1 Title is set customer_bank_code and the value is in Note 1 Description.

To use TPV with Payment Link API, you need to pass on the customer bank information in the customer_details object. See the below request and response for reference.

Supported banks