Eligibility Check API

Check if the customer is eligible for Affordability payment instruments using the Eligibility Check API.


Use the Eligibility Check API to verify your customer's eligibility for Affordability-related payment instruments such as Debit Card EMI, Cardless EMI, and Pay Later. This check helps you display only relevant payment methods to your customers, reducing the chances of failed transactions.

Watch Out!

This is an on-demand feature. Please raise a request with us at

to get this feature activated.

Handy Tips

  • You can check customer and transaction eligibility only for Debit Card EMI, Cardless EMI and Pay Later, not for Credit Card EMI.
  • You can perform the eligibility check on methods and instruments enabled for your account. Know how to for your account.

Before your customer navigates to the checkout, you can do an eligibility check on all the available Affordability instruments and display only those that apply to the customer. This helps reduce payment failures and drop-offs and enhances the customer experience.

Following are the various states of an eligibility check:

Different states of the eligibility check process
StatesDescription
pendingWhen you check eligibility, it stays in the pending state if the provider does not respond within the expected time.
eligibleWhen the eligibility check is successful, and the provider approves the customer for the required order amount.
ineligibleWhen the eligibility check is successful, the provider does not approve the customer for the required order amount.
failedWhen the eligibility check fails, it can be re-attempted via a new request.

The eligibility check entity has the following parameters:

inquiry

string Types of methods or instruments on which eligibility check is required. Possible value is affordability.

currency

string A three-letter ISO code for the currency for which you want to accept the payment. Possible value is INR.

amount

integer The amount for which the order was created, in currency subunits. For example, for an amount of ₹295, enter 29500. The customer makes a payment for this amount against the order; hence, eligibility is checked for the amount.

customer

object Customer details.

id

string Unique identifier of the customer created using

. For example, cust_1Aa00000000004.

contact

string The customer's phone number. A maximum length of 15 characters, including country code. For example, +919000090000.

ip

string Customer's IP address from where the order is placed. For example, 105.106.107.108.

referrer

string Referrer header passed by the client's browser.

user_agent

string Customer user-agent.

instruments

array Payment Instruments on which eligibility check is performed. Use the instruments array to check eligibility on specific methods instruments.

method

string Payment methods on which eligibility check is performed. Possible values:

  • cardless_emi
  • emi
  • paylater

provider

string List of Cardless EMI providers. Possible values for cardless_emi:

  • barb
  • cshe
  • hdfc
  • icic
  • idfb
  • kkbk
  • krbe
  • earlysalary
  • tvsc
  • walnut369

List of Pay Later providers. Possible values for paylater:

issuer

string List of EMI issuers. Possible value is hdfc.

type

string Type of card. Possible value is debit.

eligibility_req_id

string A unique identifier of the eligibility check request on a specific instrument. For example, elig_F1cxDoHWD4fkQt.

eligibility

object Defines the customer's eligibility status and shows the associated error code in case of failure.

status

string Displays the current state of the eligibility check performed on each payment instrument. Possible values:

  • eligible
  • ineligible
  • pending
  • failed

error

object The error object.

code

string The type of error.

description

string Descriptive text about the error.

source

string Point of failure in a specific operation. For example, customers, businesses, and so on.

step

string The stage where the error occurred. Stages can vary depending on the payment method.

reason

string The exact reason for the error.

You can initiate a request for an eligibility check using the endpoint and the following mandatory parameters:

  • Customer contact details.
  • Transaction amount.
POST
customers/eligibility
-X POST 'https://api.razorpay.com/v1/customers/eligibility' \
-u [YOUR_KEY_ID]:[YOUR_KEY_SECRET]
-H "content-type: application/json"
-d '{
"inquiry": "affordability",
"amount": 500000, // mandatory
"currency": "INR", // mandatory
"customer": {
"id": "cust_KhP5dO1dKmc0Rm",
"contact": "+918220276214", // mandatory
"ip": "105.106.107.108",
"referrer": "https://merchansite.com/example/paybill",
"user_agent": "Mozilla/5.0"
}
}'

inquiry

optional

string List of methods or instruments on which eligibility check is required. Possible value is affordability.

amount

mandatory

integer The amount for which the order was created, in currency subunits. For example, for an amount of ₹295, enter 29500. The user makes a payment for this amount against the order; hence, eligibility is checked for the amount.

currency

mandatory

string A three-letter ISO code for the currency for which you want to accept the payment. Possible value is INR.

customer

object Customer details.

id

optional

string Unique identifier of the customer created using

. For example, cust_1Aa00000000004.

contact

mandatory

string The customer's phone number. A maximum length of 15 characters, including country code. For example, +919000090000.

ip

optional

string Customer's IP address from where the order is placed. For example, 105.106.107.108.

referrer

optional

string Referrer header passed by the client's browser.

user_agent

optional

string Customer user-agent.

instruments

optional

array Payment instruments on which an eligibility check is required.

method

string Payment methods on which an eligibility check is required. Possible Values :

  • emi
  • cardless_emi
  • paylater

issuers

string List of EMI issuers. Possible value is HDFC.

types

string Type of card. Possible value is debit.

providers

string List of Cardless EMI providers. Possible values for cardless_emi:

  • barb
  • cshe
  • hdfc
  • icic
  • idfb
  • kkbk
  • krbe
  • earlysalary
  • tvsc
  • walnut369

List of Pay Later providers. Possible values for paylater:

Configure Payment Methods or Instruments

Refer to the

doc for eligibility checks on specific methods or instruments.

Descriptions for the response parameters are present in the

parameters table.

for eligibility check.

Handy Tips

for Razorpay APIs are applicable.

The following endpoint retrieves the details of the eligibility check. Add the eligibility_req_id received in response previously.

GET
customers/eligibility/:eligibility_req_id
-X GET 'https://api.razorpay.com/v1/customers/eligibility/elig_F1cxDoHWD4fkQt' \
-u [YOUR_KEY_ID]:[YOUR_KEY_SECRET]
-H "content-type: application/json"

eligibility_req_id

string The unique identifier of the eligibility request to be retrieved.

Descriptions for the response parameters are present in the

parameters table.

Given below is a list of possible errors you may face while fetching eligibility.

Error CodeErrorSourceCauseDescriptionSolution
BAD_REQUEST_ERRORinvalid_eligibility_idbusinessRequestThe eligibility id is invalid.Retry with a valid mobile number.
BAD_REQUEST_ERROReligibility_id_does_not_existbusinessRequestThe eligibility id does not exist.Retry with a valid amount.

You can test the eligibility using our test phone numbers.

ProviderProvider CodeTest Phone Numbers
HDFC Bankhdfc+917887578479 , +918066317208 , +916127912480 , +917511365863

Know the interest rates and minimum order amount for:


Was this page helpful?