Payout Links

Create and fetch Payout Links using APIs.


enable you to make payouts to those Contacts whose Fund Account details you do not have.

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

.

Watch the below video to know how to create Payouts using our APIs.

Before you create a payout link or

, keep either of the following available:

  • Customer's contact details.
  • Keep their Contact id (for example, contact_id: cont_00000000000001) available.

You do not need the Contact's Fund Account as you send

when you do not have the recipient's account details.

Before you fire APIs, keep your Key id and Key Secret available. You can

in Live Mode or in on the .

API EndpointDescription
Creates a Payout Link using customer's contact details like email id/mobile number.
Creates a Payout Link using the Contact id of the customer. to generate the Contact id.
Retrieves the details of all Payout Links created. Use the query parameters to customise Payout Links retrieval.
Retrieves the details of a particular Payout Link.
Cancels a Payout Link.

The Payout Links entity has the following fields:

id

string The unique identifier of the payout link that is created. For example, poutlk_00000000000001.

entity

string The entity being created. Here it will be payout_link.

contact_id

string The unique identifier of the Contact to whom the payout link has to be sent. For example, cont_00000000000001.

contact

Details of the Contact to whom the payout link is to be sent.

Use this only if you are not using the contact_id parameter.

name

string The Contact's name. For example, Gaurav Kumar.

type

string Classification of the Contact being created. For example, employee.

contact

string The Contact's phone number. For example, 9000090000.

email

string The Contact's email address. For example, gaurav.kumar@example.com.

fund_account_id

only if Contact provides their account details

string The unique identifier of the contact's fund account to which the payout will be made. For example, fa_00000000000001. Fund Account id is returned only when the payout link moves to the

.
It is not necessary to send this parameter as a part of the request body.

payout_id

only if the contact receives the amount in their account

string The unique identifier for the payout made to the contact. For example, pout_00000000000001.
This value is returned only when the payout link moves to the

. That is, a payout is successful only after the recipient has received the amount.

purpose

string The purpose of the payout. For example, refund, cashback or payout.

Handy Tips
Additional purposes for payouts links can be created via the and then used in the API. However, it is not possible to create a new purpose via the API. Populating the parameter with a non-existing purpose not present on the Dashboard will return an error.

status

string The payout link status. Possible values:

amount

integer The amount, in paise, to be transferred from the business account to the contact's fund account.

Handy Tips
The value passed here does not include fees and tax. Fees and tax, if any, are deducted from your account balance.

currency

string The currency in which the payout is being made. Here, it is INR.

description

string A user-entered description for the payout link. For example, Payout link for Gaurav Kumar.

attempt_count

integer The number of attempts to complete the payout.

receipt

string A user-entered receipt number for the payout. For example, Receipt No. 1.

notes

object User-entered notes for internal reference. This is a key-value pair. You can enter a maximum of 15 key-value pairs. For example, "note_key": "Beam me up Scotty”.

short_url

string A short link for the payout link that was created. This is the link that is shared with the contact.

send_sms

boolean Possible values:

  • true: SMS sent to the provided contact number.
  • false: SMS could not be sent to the provided contact number. This could be because the contact number provided was wrong.

send_email

boolean Possible values:

  • true: Email sent to the provided email address.
  • false: Email could not be sent to the provided email address. This could be because the email address provided was wrong.

created_at

integer Timestamp, in Unix, when the payout link was created.

cancelled_at

integer Timestamp, in Unix, when the payout link was cancelled by you. This value is returned only when the payout link moves to the cancelled state.

expire_by

integer Timestamp, in Unix, when the payout link was to expire. This is set at the time of creation of the payout link. This value is returned only if you have enabled expiry feature for Payout Links. Know more about how to

to Payout Links.

expired_at

integer Timestamp, in Unix, when the payout link expired. This is set at the time of creation of the payout link.

{
"id": "poutlk_00000000000001",
"entity": "payout_link",
"contact_id": "cont_00000000000001",
"contact": {
"name": "Gaurav Kumar",
"email": "gaurav.kumar@example.com",
"contact": "912345678"
},
"fund_account_id": null,
"purpose": "refund",
"status": "issued",
"amount": 1000,
"currency": "INR",
"description": "Payout link for Gaurav Kumar",
"attempt_count": 0,
"receipt": "Receipt No. 1",
"notes": {
"notes_key_1":"Tea, Earl Grey, Hot",
"notes_key_2":"Tea, Earl Grey… decaf."
},
"short_url": "https://rzp.io/i/3b1Tw6",
"send_sms": true,
"send_email": true,
"cancelled_at": null,
"created_at": 1545383037,
"expire_by": 1545384058,
"expired_at": 1545384658
}

to configure and receive notifications when a specific occurs. When one of these events is triggered, we send an HTTP POST in JSON to the webhook's configured URL.


Was this page helpful?