Normal Payout🔗
To create a payout using the normal route you must:
- Create a Contact.
- Create a Fund Account for a contact.
- Create a Payout.
Create a Contact🔗
Use the below endpoint to create a contact:
Handy Tips
- A new contact is created if any combination of the following details is unique:
name,email,contact,typeandreference_id. - If all the above details match the details of an existing contact, the API returns details of the existing contact.
- Use the Update Contact API if you want to make changes to an existing contact.
Know more about RazorpayX Contact API.
Request Parameters🔗
namemandatorystringThe contact's name. This field is case-sensitive. A minimum of 3 characters and a maximum of 50 characters are allowed. Name cannot end with a special character, except.. Supported characters:a-z,A-Z,0-9,space,’,-,_,/,(,)and ,.. For example,Gaurav Kumar.emailoptionalstringThe contact's email address. For example,gaurav.kumar@example.com.contactoptionalstringThe contact's phone number. For example,9123456789.typeoptionalstringMaximum 40 characters. Classification for the contact being created. For example,employee. The following classifications are available by default:vendorcustomeremployeeselfHandy Tips
Additional Classifications can be created via the Dashboard and then used in APIs. It is not possible to create new Classifications via API.
reference_idoptionalstringMaximum 40 characters. A user-entered reference for the contact. For example,Acme Contact ID 12345.notesoptionalobjectKey-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”.
Response Parameters🔗
idstringThe unique identifier linked to the contact. For example,cont_00000000000001.entitystringThe entity being created. Here, it will becontact.namestringThe contact's name. For example,Gaurav Kumar.contactstringThe contact's phone number. For example,9123456789.emailstringThe contact's email address. For example,gaurav.kumar@example.com.typestringA classification for the contact being created. For example,employee.reference_idstringA user-entered reference for the contact. For example,Acme Contact ID 12345.batch_idstringThis parameter is populated if the contact was created as part of a bulk upload. For example,batch_00000000000001.activebooleanPossible values:true(default) = activefalse= inactive
notesobjectKey-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”.created_atintegerTimestamp, in Unix, when the contact was created. For example,1545320320.
Fund Account🔗
Use the below endpoint to create a fund account of type: wallet and provider: amazonpay.
Handy Tips
- A new fund account is created if any combination of the following details is unique:
contact_id,wallet.phone.number,wallet.phone.country_code, andwallet.email. - If all the above details match the details of an existing fund account, the API returns details of the existing fund account.
- You cannot edit the details of a fund account.
Know more about RazorpayX Fund Account API.
Request Parameters🔗
contact_idmandatory-
stringThis is the unique identifier linked to a contact. For example,cont_00000000000001. account_typemandatory-
stringThe account type you want to link to the contact ID. Here, it iswallet. wallet-
The contact's wallet details.
providermandatorystringThe wallet provider. Here, it isamazonpay.phonemandatorystringBeneficiary phone details. 10 digit beneficiary phone number with the country code. For example,+919876543210.emailoptionalstringBeneficiary email address. For example,gaurav.kumar@example.com.nameoptionalstringWallet holder's name. Name must be between 4 - 120 characters. This field is case-sensitive. Name cannot end with a special character, except.. Supported characters:a-z,A-Z,0-9,space,’,-,_,/,(,)and ,.. For example,Gaurav Kumar.
Response Parameters🔗
id-
stringThe unique identifier linked to the fund account. For example,fa_00000000000001. entity-
stringHere it will befund_account. contact_id-
stringThe unique identifier linked to the contact. For example,cont_00000000000001. account_type-
stringThe fund account type being created. Here, it will bewallet. wallet-
The contact's wallet details.
providerstringThe wallet provider. Here, it isamazonpay.phonestring10 digit beneficiary phone number with the country code. For example,+919876543210.emailstringBeneficiary email address. For example,gaurav.kumar@example.com.namestringWallet holder's name. For example,Gaurav Kumar.
active-
booleanPossible values:true: activefalse: inactive
batch_id-
stringThis parameter is populated if the fund account was created as part of a bulk upload. For example,batch_00000000000001. created_at-
integerTimestamp, in Unix, when the fund account was created. For example,1545320320.
Payouts🔗
Use the below endpoint to create a payout.
Handy Tips
You cannot enter a custom narration when creating a payout via Amazon Pay. Contact RazorpayX support via your RazorpayX Dashboard for more information.
Know more about RazorpayX Payout API.
Request Parameters🔗
account_numbermandatorystringYour RazorpayX Virtual Account number.
Account details can be found on the RazorpayX Dashboard. For example,7878780080316316.Watch Out!
This is not your contact's bank account number.fund_account_idmandatorystringThe unique identifier linked to a fund account. For example,fa_00000000000001.amountmandatoryintegerThe payout amount, in paise. For example, if you want to transfer ₹10,000, pass1000000. Minimum value100(₹1). Maximum value1000000(₹10,000).Handy Tips
The value passed here does not include fees and tax. Fees and tax, if any, are deducted from your account balance.currencymandatorystringThe payout currency. Here, it isINR.modemandatorystringThe mode to be used to create the payout. Here it has to beamazonpay.Watch Out!
The payout mode is case sensitive. When creating payouts using APIs, ensure the payout mode is entered in upper case.purposemandatorystringThe purpose of the payout that is being created. The following classifications are available in the system by default:refundcashbackpayoutsalaryutility billvendor billHandy Tips
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_balanceoptionalbooleanPossible 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_idoptionalstringMaximum length 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.notesoptionalobjectKey-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”.
Response Parameters🔗
idstringThe unique identifier linked to the payout. For example,pout_00000000000001.entitystringThe entity being created. Here, it will bepayout.fund_account_idstringThe unique identifier linked to the fund account. For example,fa_00000000000001.amountintegerThe payout amount, in paise.Handy Tips
The value passed here does not include fees and tax. Fees and tax, if any, are deducted from your account balance.currencystringThe payout currency. Here, it isINR.notesobjectKey-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”.feesintegerThe fees for the payout. This field is populated only when the payout moves to theprocessingstate. For example,5.taxintegerThe tax that is applicable for the fee being charged. This field is populated only when the payout moves to theprocessingstate. For example,1.statusstringThe status of the payout. Possible payout states:queuedpending(if you have Approval Workflow enabled)rejected(if you have Approval Workflow enabled)processingprocessedcancelledreversed
utrstringHere, it will be the Amazon Pay gift card ID. For example,GCID1234567.modestringThe mode used to make the payout. Here it will beamazonpay.purposestringThe purpose of the payout that is being created. The following classifications are available in the system by default:refundcashbackpayoutsalaryutility billvendor billHandy Tips
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_idstringMaximum length 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.narrationstringDefaults to the Merchant Billing Label. You cannot enter a custom narration when creating a payout via Amazon Pay. Contact RazorpayX support for more information.batch_idstringThis parameter is populated if the contact was created as part of a bulk upload. For example,batch_00000000000001.status_detailsobjectThis parameter returns the current status of the payout. For example,IMPS is not enabled on beneficiary account, Retry with different mode.created_atintegerTimestamp, in Unix, when the contact was created. For example,1545320320.