---
page_source: https://juspay.io/sea/docs/express-checkout-sdk-global/react-native/mandates/payment-methods-api
page_title: Payment Methods API
---

## API Version: default


# Payment Methods 



This API should be called while rendering the payment page. It provides a list of all the payment methods available for your account, allowing you to display the available payment options on the payment page.

> **Warning**
> If a static list of payment methods is maintained to display on the payment page, and those payment methods are not enabled on Juspay’s dashboard, the transaction will fail at Juspay’s end without being initiated to the underlying gateways or processors.

## Endpoints:
- Sandbox: https://sandbox.juspay.in/merchants/{merchant_id}/paymentmethods

- Production: https://api.juspay.in/merchants/{merchant_id}/paymentmethods

## Request Type: 
GET

## Headers:

#### x-merchantid:
Unique identifier for the merchant. This is the Merchant ID provided by Juspay. The value is case sensitive.

> **Note**
> Passing this value will help us route efficiently at network level.


- Value:  x-merchantid: testaccount
- Tags: String, Recommended
## Sample Code Snippets:
### Request:

#### Request with Single query param Code Snippet:

```request with single query param
curl -X GET https://api.juspay.in/merchants/guest/paymentmethods

curl -X GET https://api.juspay.in/merchants/guest/paymentmethods?options.check_wallet_direct_debit_support=true

curl -X GET https://api.juspay.in/merchants/guest/paymentmethods?options.add_supported_reference_ids=true

curl -X GET https://api.juspay.in/merchants/guest/paymentmethods?options.add_outage=true
```

#### Request with more than one query params Code Snippet:

```request with more than one query params
curl -X GET https://api.juspay.in/merchants/guest/paymentmethods?options.add_supported_reference_ids=true&options.add_outage=true

```

### Sample Response:

#### 200 - Success (Payment Methods):
```json
{
    "merchant_configs": {
        "must_use_given_order_id_for_txn": false
    },
    "outage": [],
    "payment_methods": [
        {
            "description": "Visa",
            "payment_method": "VISA",
            "payment_method_type": "CARD"
        },
        {
            "description": "Mastercard",
            "payment_method": "MASTER",
            "payment_method_type": "CARD"
        },
        {
            "description": "MADA",
            "payment_method": "MADA",
            "payment_method_type": "CARD"
        }
    ],
    "restricted_mode": false,
    "timestamp": "2025-01-17T09:07:04.738887951Z",
    "verify_vpa_enabled_gateways": []
}
```

#### 200 - Success (Direct Wallet Debit Supported Payment Methods):
```json
{
  "payment_methods": [
    {
     "description": "Visa",
     "payment_method": "VISA",
     "payment_method_type": "CARD"
    },
    {
     "description": "Mastercard",
     "payment_method": "MASTER",
     "payment_method_type": "CARD"
    },
    {
     "description": "MADA",
     "payment_method": "MADA",
     "payment_method_type": "CARD"
    },
    {
      "payment_method_type": "WALLET",
      "payment_method": "APPLEPAY",
      "description": "Applepay",
      "wallet_direct_debit_support": false
    }
  ]
}

```

#### 200 - Success (Gateway Reference ID for Payment Methods):
```json
{
    "merchant_configs": {
        "must_use_given_order_id_for_txn": false
    },
    "outage": [],
    "payment_methods": [
        {
            "description": "Visa",
            "supported_reference_ids": [
                "FLIGHT",
                "STAR"
            ],
            "payment_method": "VISA",
            "payment_method_type": "CARD"
        },
        {
            "description": "Mastercard",
            "supported_reference_ids": [
                "FLIGHT",
                "STAR"
            ],
            "payment_method": "MASTER",
            "payment_method_type": "CARD"
        },
        {
            "description": "MADA",
            "supported_reference_ids": [
                "FLIGHT",
                "STAR"
            ],
            "payment_method": "MADA",
            "payment_method_type": "CARD"
        }
    ],
    "restricted_mode": false,
    "timestamp": "2025-01-17T09:52:00.551616975Z",
    "verify_vpa_enabled_gateways": []
}
```

#### 200 - Success (Outages):
```json
{
  "outage": [
    {
      "stage": "Merchant",
      "status": "FLUCTUATE",
      "payment_method": "MADA",
      "payment_method_type": "CARD",
      "juspay_bank_code": "MADA",
      "description": "Mada"
    },
    {
      "stage": "Global",
      "status": "FLUCTUATE",
      "payment_method": "JKOPAY",
      "payment_method_type": "WALLET",
      "issuer_name": "Jkopay",
      "juspay_bank_code": "JP_JKOPAY",
      "description": "Jkopay Wallet"
    },
    {
      "stage": "Merchant",
      "status": "FLUCTUATE",
      "payment_method": "LINEPAY",
      "payment_method_type": "WALLET",
      "issuer_name": "LinePay",
      "juspay_bank_code": "JP_LINEPAY",
      "description": "LinePay"
    },
     {
      "stage": "Merchant",
      "status": "DOWN",
      "payment_method": "PROMPTPAY_QR",
      "payment_method_type": "RTP",
      "juspay_bank_code": "JP_PROMPTPAY",
      "description": "PromptPay"
    }
  ]
}
```

#### 400 - Bad Request:
```plaintext
{
    "error": true,
    "error_message": "Invalid Request",
    "user_message": "Invalid merchant id. Cannot process your request.",
    "error_info": {
        "code": "RESOURCE_NOT_FOUND",
        "category": "USER_ERROR",
        "user_message": "Please pass valid merchant_id in request.",
        "developer_message": "merchant_id is invalid.",
        "fields": [
            {
                "field_name": "merchant_id",
                "reason": "Invalid merchant_id."
            }
        ]
    }
}
```

## Path Parameters:

#### merchant_id:
Merchant Id for which you need to fetch the available payment methods
- Tags: String, Mandatory
## Query Parameters:

#### options.check_wallet_direct_debit_support:
To get the payment methods that supports direct debit.
- Tags: boolean

#### options.add_supported_reference_ids:
To get the payment methods supported for each gateway reference ID
- Tags: boolean

#### options.add_outage:
To get outages on payment methods. Each payment method has a **`juspay_bank_code`** . By using **`juspay_bank_code`**  as a lookup in the outage array, you can determine whether the payment method has outage or not.

**NOTE:** **** The outage basically functions based on a score at each payment method level. We maintain this score from for all Merchant- Payment method combinations. For each transaction created, we penalise this score by a small amount and if the transaction is successful (CHARGED or AUTHORIZED), then we add to this score so as to reward the Merchant <> Payment method.

We have 2 outage statuses: FLUCTUATE and DOWN and we assign these once the score falls below a certain threshold at our end. There is a soft reset from time to time to check the health where we allow a few transactions to go through, based on which we decide whether the Merchant <> Payment method combination is back UP (no outage being faced).

Apart from this, we reset the overall score at a pre-defined interval as well.These thresholds can be customised based on merchant requirements.
- Tags: boolean
## API Responses:
### 200:

#### payment methods:
- Description: Lists the available payment methods enabled for the merchant account on Juspay dashboard
- Value:
  - **Payment_method_type**:
    - Description: Payment method Type
    - Value: Sample Value: CARD, RTP,WALLET
    - Tags: String
  - **Payment_method**:
    - Description: Refers to payment method
    - Value: Sample Value: VISA,APPLEPAY,PROMPTPAY
    - Tags: String
  - **Description**:
    - Description: Specifies the Description of the payment method
    - Tags: String
- Tags: JSON

#### direct wallet debit supported payment methods:
- Description: Lists the available payment methods enabled for the merchant account along with wallet direct debit support
- Value:
  - **Payment_methods**:
    - Value:
      - **Payment_method_type**:
        - Description: Payment method Type
        - Tags: String
      - **Payment_method**:
        - Description: Refers to payment method
        - Tags: String
      - **Description**:
        - Description: Specifies the Description of the payment method
        - Tags: String
      - **Wallet_direct_debit_support**:
        - Description: Specifies whether direct wallet support/ link and pay support is enabled for the specific payment method
        - Tags: boolean
    - Tags: Array of objects
- Tags: JSON

#### gateway reference ID for payment methods:
- Description: Lists the available payment methods along with supported  gateway_reference_ids
- Value:
  - **Payment_methods**:
    - Value:
      - **Supported_reference_ids**:
        - Description: specifies the payment method available for the mentioned reference_id
        - Tags: Array of strings
      - **Payment_method_type**:
        - Description: Payment method Type
        - Tags: String
      - **Payment_method**:
        - Description: Refers to payment method
        - Tags: String
      - **Description**:
        - Description: Specifies the Description of the payment method
        - Tags: String
    - Tags: Array of Objects
- Tags: JSON

#### outages:
- Description: Lists the payment methods experiencing outages
- Value:
  - **Outage**:
    - Value:
      - **Status**:
        - Description: Denotes the outage status. Values can be DOWN/FLUCTUATE
        - Tags: String
      - **Payment_method**:
        - Description: Refers to payment method
        - Tags: String
      - **Payment_method_type**:
        - Description: Payment method Type
        - Tags: String
      - **Juspay_bank_code**:
        - Tags: String
      - **Description**:
        - Description: Specifies the Description of the payment method
        - Tags: String
    - Tags: Array of objects
  - **Payment_methods**:
    - Value:
      - **Payment_method**:
        - Description: Refers to payment method
        - Tags: String
      - **Payment_method_type**:
        - Description: Payment method Type
        - Tags: String
      - **Description**:
        - Description: Specifies the Description of the payment method
        - Tags: String
    - Tags: Array of objects
- Tags: JSON
### 400:

#### error:
- Description: Denotes the status 
- Value: Sample value: true
- Tags: Boolean

#### error_message:
- Description: Provides the reason for the error
- Value: Invalid Request
- Tags: String

#### user_message:
- Description: Error message can be displayed to the user
- Value: Invalid merchant id. Cannot process your request.
- Tags: String

#### error_info:
- Description: Additional info on the error message
- Value:
  - **Category**:
    - Description: category of the error
    - Value: USER_ERROR
    - Tags: String
  - **User_message**:
    - Description: Error message can be displayed to the user
    - Value: Please pass valid merchant_id in request.
    - Tags: String
  - **Developer_message**:
    - Description: Detailed info on the error
    - Value: merchant_id is invalid.
    - Tags: String
  - **Fields**:
    - Description: Details on the missing field with which the error occurred
    - Tags: Array
- Tags: JSON
