Payment Downtime API

Check the Payment Downtime API to view a list of unaffected payment methods during downtime.


Downtime is when one or more payment options underperform, leading to considerable delays in payment processing. These downtimes are due to technical issues or outages at Razorpay's partner or issuing banks. Razorpay informs you about the downtime to communicate it to your customers and display only the unaffected payment methods while accepting payments from them.

You can poll the API or configure Webhooks to be notified of the downtimes and plan the remediation steps accordingly.

Downtime communication for the payment methods such as cards, netbanking, UPI and wallet is available.

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

Given below is a list of the downtime entity parameters.

id

string Unique identifier of the downtime's occurrence.

entity

string Here, it will be payment.downtime.

method

string The payment method that is experiencing the downtime. Possible values include:

  • card
  • netbanking
  • wallet
  • upi

begin

integer Timestamp (in Unix) that indicates the start of the downtime. Applicable for both scheduled and unscheduled downtimes.

end

integer Timestamp (in Unix) that indicates the end of the downtime.
Available only for scheduled downtimes, where the end-time is known. Set to null when the end-time in unknown, possibly during unscheduled downtimes.

status

string Status of the downtime.
Possible statuses are.

  • scheduled- A downtime is scheduled to happen at a later time.
  • started - The downtime has started and is ongoing.
  • resolved - The downtime is resolved.
  • cancelled - A scheduled downtime that is invalidated. For example, when a scheduled downtime was communicated but was later cancelled by the bank.

scheduled

boolean Possible values:

  • true - This is a scheduled downtime by the issuer, network, or the bank, which was informed to Razorpay.
  • false - This is an unscheduled downtime.

severity

string Severity of the downtime.
Possible values:

  • high - Possible when all the payment methods are affected by the downtime. Observed when the issuer, bank, network or wallet is down.
  • medium - Possible when a higher number of declines of transactions or low success rates are observed with the payment methods.
  • low - Possible when the reason for the downtime is unknown. Impact on payment methods is minimal.

instrument

Payment method that is under performing.

bank if method=netbanking

string Bank code of the affected bank.

issuer if method=card

string Issuer bank code. For example, SBIN.

network if method=card

string Card network. Possible values:

  • AMEX
  • DICL
  • MC
  • RUPAY
  • VISA
  • ALL

psp if method=upi

string Code of the affected Payment Service Provider (PSP). This is populated only when VPA handles associated with the PSP are down. If a PSP is associated with multiple VPA handles, it is marked down only when all the handles associated with it are down. For example, google_pay is marked down only when all Google Pay handles - oksbi, okhdfcbank, okicici and okaxis are down. Possible values for this parameter are:

  • google_pay
  • phonepe
  • paytm
  • bhim

vpa_handle if method=upi

string Affected VPA handle. For example, @oksbi. To learn about the possible values, refer to the

. If the entire UPI system is experiencing a downtime, the value ALL is displayed.

wallet if method=wallet

string Affected wallet code.

created_at

integer Timestamp (in Unix) that indicates the time at which the downtime was recorded in Razorpay servers.

updated_at

integer Timestamp (in Unix) that indicates the time at which the downtime record was updated in Razorpay servers.

card_type

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

  • credit
  • debit

Use the endpoint given below to fetch details of payment downtimes.

GET
/payments/downtimes

Usually, downtime webhook payloads are delivered within few seconds of the event. However, in some cases, this can be delayed by few minutes due to various reasons.

If you have not received any webhook notifications due to some technical issues, you can use the Fetch Downtime by ID API to fetch the said downtime status.

GET
/payments/downtimes/:id