Settlements

Razorpay Settlement and Instant Settlement (On-demand Settlements) APIs.


Razorpay

is the process in which the money received from your customers is settled to your bank account.

Captured payments are automatically settled to the bank account submitted to us as part of your KYC verification as per your

.

  • The settlement cycle is T+2 days for domestic payments.
  • The settlement cycle is T+7 days for international payments.

You can try out our APIs on the Razorpay Postman Public Workspace.

The Settlement entity has the following fields:

id

string The unique identifier of the settlement transaction. For example, setl_7IZKKI4Pnt2kEe

entity

string Indicates the type of entity. Here, it is settlement.

amount

integer The amount to be settled (in the smallest unit of currency). For example, settlement in INR, a value of 500 means 50000 paise (equivalent to ₹500).

status

string Indicates the

. Possible values:
  • created
  • processed
  • failed

fees

integer This is the total fee charged for processing all payments received from customers settled to you in this settlement transaction.

tax

integer The total tax, in paise, charged on the fees collected to process all payments received from customers settled to you in this settlement transaction.

utr

string The Unique Transaction Reference (UTR) number available across banks, which can be used to track a particular settlement in your bank account. For example, 1597813219e1pq6w.

created_at

integer Unix timestamp at which the settlement transaction was created.

You can manage settlements using APIs or from the

.

The following endpoint retrieves details of all settlements.

GET
/settlements/

from

optional

integer Unix timestamp (in seconds) from when settlements are to be fetched.

to

optional

integer Unix timestamp (in seconds) till when settlements are to be fetched.

count

optional

integer Number of settlement records to be fetched.

  • Default value: 10
  • Maximum value: 100
  • This can be used for pagination, in combination with skip.

skip

optional

integer Number of settlement records to be skipped.

  • Default value: 0
  • This can be used for pagination, in combination with count.

Descriptions for the response parameters are present in the

parameters table.

The following endpoint retrieves the settlement using the ID.

GET
/settlements/:id

id

mandatory

string The unique identifier of the settlement to be retrieved.

Descriptions for the response parameters are present in the

parameters table.

The settlement recon API returns a list of all transactions such as payments, refunds, transfers and adjustments that have been settled to your account for a particular day or month.

GET
/settlements/recon/combined?year=yyyy&month=mm

In the example request and response, we are fetching the settlement report for a particular day, that is 11/06/2022.

year

mandatory

integer The year the settlement was received in the YYYY format. For example, 2022.

month

mandatory

integer The month the settlement was received in the MM format. For example, 06.

day

optional

integer The date on which the settlement was received in the DD format. For example, 11.

count

optional

integer Specifies the number of available settlements to be fetched. Maximum count can be 1000.

skip

optional

integer Specifies the number of available settlements to be skipped when fetching a count.

entity_id

string The unique identifier of the transaction that has been settled.

type

string Indicates the type of transaction. Possible values:

  • payment
  • refund
  • transfer
  • adjustment

debit

integer The amount, in paise, that has been debited from your account.

credit

integer The amount, in paise, that has been credited to your account.

amount

integer The total amount, in paise, debited or credited from your account.

currency

string The 3-letter ISO currency code for the transaction.

fee

integer The fees, in paise, charged to processing the transaction.

tax

integer The tax on the fee, in paise, charged to processing the transaction.

on_hold

boolean Indicates whether the account settlement for transfer is on hold. Possible values:

  • true
  • false

settled

boolean Indicates whether the transaction has been settled or not. Possible values:

  • true
  • false

created_at

integer Unix timestamp at which the transaction was created.

settled_at

integer Unix timestamp when the transaction was settled.

settlement_id

string The unique identifier of the settlement transaction.

description

string Brief description about the transaction. For example, Recurring Payment via Subscription.

notes

object Notes for the transaction. For example, Beam me up Scotty.

payment_id

string The unique identifier of the payment linked to refund or transfer that has been settled. For example, pay_DEApNNTR6xmqJy. It is null for payments.

settlement_utr

string The unique reference number linked to the settlement. For example, KKBKH14156891582.

order_id

string Order ID linked to the payment made by the customer that has been settled. For example, order_DEXrnRiR3SNDHA.

order_receipt

string Receipt number entered while

.

method

string The payment method used to complete the payment. Possible values:

  • card
  • netbanking
  • wallet
  • emi
  • upi

card_network

string The card network used to process the payment. Possible values are:

  • American Express
  • Diners Club
  • Maestro
  • MasterCard
  • RuPay
  • Visa
  • unknown

card_issuer

string This is a 4-character code denoting the issuing bank. For example, KARB.

This attribute will not be set for international cards, that is, for cards issued by foreign banks.

card_type

string The card type used to process the payment. Possible values:

  • credit
  • debit

dispute_id

string The unique identifier of any dispute, if any, for this transaction.