---
page_title: Payment Methods API
product: EC Headless
platform: Capacitor
page_source: https://juspay.io/in/docs/ec-headless/capacitor/mandates/payment-methods-api
openapi: https://juspay.io/in/docs/api/swagger?document=https%3A%2F%2Fjuspay.io%2Fin%2Fdocs%2Fec-headless%2Fcapacitor%2Fmandates%2Fpayment-methods-api
llms_txt: https://juspay.io/in/docs/llms.txt
product_llms_txt: https://juspay.io/in/docs/ec-headless/llms.txt
---

## API Version: default


# Payment Methods



Gives list of all the payment methods available for your account. ## 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:
Merchant ID provided by Juspay
- Tags: String, Mandatory

#### x-routing-id:
We recommend passing the customer_id as the x-routing-id. If the customer is checking out as a guest, you can pass an alternative ID that helps track the payment session lifecycle. For example, this could be an Order ID or Cart ID.

> **Warning**
> This ID is associated with the customer. It plays a key role in ensuring consistency and maintaining connections across different systems. If you fail to pass the same x-routing-id for the same customer in all related API calls, it could lead to issues with API functionality. Therefore, it’s crucial that you use the same x-routing-id for all requests tied to the same customer.


- Value: customer_1122
- Tags: String, Required
## Sample Code Snippets:
### Sample Request:

#### Request Code Snippet:

```request
{"success":false,"message":"Failed to fetch snippet"}
```

### Sample Response:

#### Payment Methods:
```json
{"success":false,"message":"Failed to fetch snippet"}
```

#### Emandate Payment Methods:
```json
{"success":false,"message":"Failed to fetch snippet"}
```

#### Direct Wallet Debit Supported Payment Methods:
```json
{"success":false,"message":"Failed to fetch snippet"}
```

#### Gateway Reference ID for Payment Methods:
```json
{"success":false,"message":"Failed to fetch snippet"}
```

#### Outages:
```json
{"success":false,"message":"No Data found for the given path"}
```

#### TPV Payment Methods:
```json
{"success":false,"message":"Failed to fetch snippet"}
```

## Path Parameters:

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

#### options.add_emandate_payment_methods:
Pass `true` to fetch payment methods that support EMANDATE transaction
- Tags: boolean

#### options.check_wallet_direct_debit_support:
Pass `true` to fetch the payment methods that support direct debit transactoin
- Tags: boolean

#### options.add_supported_reference_ids:
Pass `true` to fetch supported gateway_reference_id against payment methodsUse this parameter only if you have a use case of Gateway Reference Id. [Click here to read more](https://docs.juspay.in/resources/docs/common-resources/gateway-reference-id)
- Tags: boolean

#### options.add_tpv_payment_methods:
Pass `true` to fetch payment methods that support Third party validation (TPV) transaction
- Tags: boolean

#### options.add_outage:
Pass `true` to fetch applicable outages on payment methods. Each payment method object has a key `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:
- Value:
  - **Payment_method_type**:
    - Tags: String
  - **Payment_method**:
    - Tags: String
  - **Description**:
    - Tags: String
- Tags: JSON

#### emandate payment methods:
- Value:
  - **Payment_methods**:
    - Value:
      - **Description**:
        - Tags: String
      - **Payment_method**:
        - Tags: String
      - **Payment_method_type**:
        - Tags: String
    - Tags: Array of objects
  - **Emandate_payment_methods**:
    - Value:
      - **Description**:
        - Tags: String
      - **Payment_method**:
        - Tags: String
      - **Payment_method_type**:
        - Tags: String
    - Tags: Array of objects
- Tags: JSON

#### direct wallet debit supported payment methods:
- Value:
  - **Payment_methods**:
    - Value:
      - **Payment_method_type**:
        - Tags: String
      - **Payment_method**:
        - Tags: String
      - **Description**:
        - Tags: String
      - **Wallet_direct_debit_support**:
        - Tags: boolean
    - Tags: Array of objects
- Tags: JSON

#### gateway reference ID for payment methods:
- Value:
  - **Payment_methods**:
    - Value:
      - **Supported_reference_ids**:
        - Tags: Array of strings
      - **Payment_method_type**:
        - Tags: String
      - **Payment_method**:
        - Tags: String
      - **Description**:
        - Tags: String
    - Tags: Array of Objects
- Tags: JSON

#### outages:
- Value:
  - **Outage**:
    - Value:
      - **Status**:
        - Tags: String
      - **Payment_method**:
        - Tags: String
      - **Payment_method_type**:
        - Tags: String
      - **Juspay_bank_code**:
        - Tags: String
      - **Description**:
        - Tags: String
    - Tags: Array of objects
  - **Payment_methods**:
    - Value:
      - **Payment_method**:
        - Tags: String
      - **Payment_method_type**:
        - Tags: String
      - **Description**:
        - Tags: String
    - Tags: Array of objects
- Tags: JSON

#### tpv payment methods:
- Value:
  - **Tpv_payment_methods**:
    - Value:
      - **Payment_method**:
        - Tags: String
      - **Payment_method_type**:
        - Tags: String
      - **Description**:
        - Tags: String
    - Tags: Array of objects
  - **Payment_methods**:
    - Value:
      - **Payment_method**:
        - Tags: String
      - **Payment_method_type**:
        - Tags: String
      - **Description**:
        - Tags: String
    - Tags: Array of objects
- Tags: JSON
### 400:

#### status:
- Description: invalid_request_error
- Tags: string

#### error_code:
- Description: nullable
- Tags: string

#### error_message:
- Description: [merchantAccount] cannot be null
- Tags: string


---

## See Also

- [Mandate Execution](https://juspay.io/in/docs/ec-headless/capacitor/mandates/mandate-execution)
- [Mandates Create Order API](https://juspay.io/in/docs/ec-headless/capacitor/mandates/mandates-create-order-api)
