You can perform the following tasks using the transfers API:
- Transfer money to your beneficiaries accounts through Sync, Async, Direct, and Batch APIs.
- Check the status of each transfer using the referenceId or transferId.
The flow diagram will help you understand the different transfer APIs and their use cases.
Learn how each API functions using the following table and use the best-suited API for your transactions.
|Transfer Sync||Transfer Async||Direct Transfer||Batch Transfer|
|Functionality||Initiate an amount transfer request||Initiate an amount transfer request||Initiate an amount transfer request directly to the beneficiary not added in your Payouts account (add beneficiary details in the API request)||Initiate amount transfer request to multiple beneficiaries|
|Sync / Async||Sync||Async||Async||Async|
|UTR / Cashfree Reference ID||Both UTR and Cashfree Reference ID||Cashfree Reference ID||Cashfree Reference ID||Cashfree Reference ID|
|Required Body Params||beneId|
|Default Transfer Mode||Bank Transfer||Bank Transfer||Not Applicable||Not Applicable|
|Available Transfer Modes||Bank, UPI, Paytm, Amazon Pay,||Bank, UPI, Paytm, Amazon Pay, Card||Bank, UPI, Paytm, Amazon Pay, Card, IMPS, NEFT||Bank, UPI, Paytm, Amazon Pay|
|Response Time||2-5 seconds||<100 ms||5 seconds||1 second|
|Transactions Volume||Low||High: up to 1000 transactions per minute||High: up to 1000 transactions per minute||High: up to 1000 transactions per minute|
The version 1.2 APIs include paymentInstrumentId as one of the body parameters. Find the list of transfer APIs below:
The acknowledged parameter value conveys if the beneficiary received the funds by checking its value. Ack = 1 or 0 . 1 denotes the beneficiary received funds, and 0 denotes the beneficiary had not received funds.
The cash flow happens as explained below:
Debit: The debit of the transfers happens on the remitter account. After a successful debit, the beneficiary bank does further processing. When only the debit is successful, Ack = 0.
Credit: The beneficiary bank credits the fund to the account. The transfer is sent from the remitter bank to the beneficiary bank after a successful debit. When the credit to the end beneficiary is successful, Ack = 1.
To confirm the status of a payout, you need to check the acknowledged parameter value. If the value is 1, you can mark the transfer as successful. However, if the value is 0, you must either wait for the TRANSFER_ACKNOWLEDGED webhook event or use the Get Transfer Status API and confirm the acknowledged value.