Skip to main content
Use this endpoint to create a payout to fund account type vpa. To understand the status of the payouts, refer to Payout Status Details.
Watch Out!Ensure you allowlist IPs and pass the idempotency key to make a successful payout.

Request

Curl

Response

Success

Parameters

account_numbermandatory : string The account from which you want to make the payout. For example, 7878780080316316.
  • Pass your customer identifier if you want money to be deducted from RazorpayX Lite.
  • Pass your Current Account number if you want money to be deducted from your Current Account.
Watch Out!
  • This is not your contact’s bank account number. Log in to your RazorpayX Dashboard and go to My Account & Settings → Banking → Customer Identifier.
  • This value is different for Test Mode and Live Mode.
fund_account_idmandatory : string The unique identifier linked to a fund account. For example, fa_00000000000001.amountmandatory : integer The payout amount, in paise. For example, pass 1000000 to transfer an amount of ₹10,000. Minimum value 100. The value passed here does not include fees and tax. Fees and tax, if any, are deducted from your account balance.currencymandatory : string The payout currency. Here, it is INR.modemandatory : string The mode to be used to create the payout. Available mode is UPI. Ensure you enter the payout modes in upper case as the payout modes are case-sensitive.purposemandatory : string The purpose of the payout that is being created. The following classifications are available in the system by default:
  • refund
  • cashback
  • payout
  • salary
  • utility bill
  • vendor bill
Additional purposes for payouts can be created via the Dashboard and then used in the API. However, it is not possible to create a new purpose for the payout via the API.queue_if_low_balanceoptional : boolean Possible values:
  • true: The payout is queued when your business account does not have sufficient balance to process the payout.
  • false (default): The payout is never queued. The payout fails if your business account does not have sufficient balance to process the payout.
reference_idoptional : string A user-generated reference given to the payout. Maximum length is 40 characters. For example, Acme Transaction ID 12345. You can use this field to store your own transaction ID, if any.narrationoptional : string Maximum length 30 characters. Allowed characters: a-z, A-Z, 0-9 and space. This is a custom note that also appears on the bank statement. If no value is passed for this parameter, it defaults to the Merchant Billing Label.Enter the important text in the first 9 characters as banks truncate the rest as per their standards.notesoptional : array of objects Key-value pair that can be used to store additional information about the entity. Maximum 15 key-value pairs, 256 characters (maximum) each. For example, "note_key": "Beam me up Scotty”.

Parameters

id : string The unique identifier of the payout. For example, pout_00000000000001. entity : string The entity being created. Here, it will be payout. fund_account_id : string The unique identifier linked to the fund account. For example, fa_00000000000001. amount : integer The payout amount, in paise. For example, if you want to transfer ₹10,000, pass 1000000. Minimum value 100. The value passed here does not include fees and tax. Fees and tax, if any, are deducted from your account balance. currency : string The payout’s currency. Here, it is INR. notes : array of objects Key-value pair that can be used to store additional information about the entity. Maximum 15 key-value pairs, 256 characters (maximum) each. For example, "note_key": "Beam me up Scotty”. fees : integer The fees for the payout. This value is returned only when the payout moves to the processing state. For example, 5. tax : integer The tax that is applicable for the fee being charged. This value is returned only when the payout moves to the processing state. For example, 1. status : string The status of the payout. Possible payout states: Know more about Payout States and Payout Status Details. utr : string The unique transaction number linked to a payout. For example, HDFCN00000000001. mode : string The mode used to make the payout. Available modes:
  • NEFT
  • RTGS
  • IMPS
  • card
The payout modes are case-sensitive. purpose : string The purpose of the payout that is being created. The following classifications are available in the system by default:
  • refund
  • cashback
  • payout
  • salary
  • utility bill
  • vendor bill
Additional purposes for payouts can be created via the Dashboard and then used in the API. However, it is not possible to create a new purpose for the payout via the API. reference_id : string Maximum length is 40 characters. A user-generated reference given to the payout. For example, Acme Transaction ID 12345. You can use this field to store your own transaction ID, if any. debit_account_number : string The account from which the payout was processed. For example, 002281300012871. narration : string Custom note that also appears on the bank statement. Maximum length 30 characters. Allowed characters: a-z, A-Z, 0-9 and space. If no value is passed for this parameter, it defaults to the Merchant Billing Label. Ensure that the most important text forms the first 9 characters as banks may truncate the rest as per their standards. batch_id : string This value is returned if the contact was created as part of a bulk upload. For example, batch_00000000000001. status_details : object This parameter returns the current status of the payout. For example, IMPS is not enabled on beneficiary account, Retry with different mode. description : string A description for the error. For example, IMPS is not enabled on beneficiary account, please retry with different mode. source : string Possible values:
  • gateway: Technical error at Razorpay Partner bank.
  • beneficiary_bank: Technical error at beneficiary bank.
  • business: Merchant action required.
  • internal: Technical error at Razorpay’s server.
reason : string The error reason. For example, imps_not_allowed. Know more about Payout Status Details and Next Steps. created_at : integer Indicates the Unix timestamp when this payout was created. fee_type : string Indicates the fee type charged for the payout. Possible values is free_payout.