Payments - Payment Methods List

GET /v2/payments/{id}/payment-methods

Description: Get the payment methods enabled for the business profile and (optionally) the saved payment methods for the customer associated with a payment.

Endpoint (sandbox example)

cURL
curl --request GET \
  --url https://sandbox.hyperswitch.io/v2/payments/{id}/payment-methods \
  --header 'X-Profile-Id: <x-profile-id>' \
  --header 'api-key: <api-key>'

Response (200 — application/json)

Response body (example)
{
  "payment_methods_enabled": [
    {
      "card_networks": [
        {
          "eligible_connectors": [
            "stripe",
            "adyen"
          ],
          "card_network": "Visa",
          "surcharge_details": {
            "surcharge": {
              "type": "fixed",
              "value": 123
            },
            "display_surcharge_amount": 123,
            "display_tax_on_surcharge_amount": 123,
            "display_total_surcharge_amount": 123,
            "tax_on_surcharge": {
              "percentage": 123
            }
          }
        }
      ],
      "payment_method_type": "card",
      "payment_method_subtype": "ach",
      "required_fields": {
        "required_field": "<string>",
        "display_name": "<string>",
        "field_type": "user_card_number",
        "value": "<string>"
      },
      "payment_experience": [
        "redirect_to_url"
      ],
      "surcharge_details": {
        "surcharge": {
          "type": "fixed",
          "value": 123
        },
        "display_surcharge_amount": 123,
        "display_tax_on_surcharge_amount": 123,
        "display_total_surcharge_amount": 123,
        "tax_on_surcharge": {
          "percentage": 123
        }
      }
    }
  ],
  "customer_payment_methods": [
    {
      "payment_method_token": "7ebf443f-a050-4067-84e5-e6f6d4800aef",
      "customer_id": "12345_cus_01926c58bc6e77c09e809964e72af8c8",
      "payment_method_type": "card",
      "payment_method_subtype": "ach",
      "recurring_enabled": true,
      "created": "2023-01-18T11:04:09.922Z",
      "requires_cvv": true,
      "last_used_at": "2024-02-24T11:04:09.922Z",
      "is_default": true,
      "payment_method_data": {
        "card": {
          "saved_to_locker": true,
          "issuer_country": "AF",
          "last4_digits": "4242",
          "expiry_month": "10",
          "expiry_year": "25",
          "card_holder_name": "John Doe",
          "card_fingerprint": "fingerprint_12345",
          "nick_name": "Card",
          "card_network": "Visa",
          "card_isin": "4567890",
          "card_issuer": "Issuer Bank",
          "card_type": "Credit"
        }
      },
      "bank": {
        "mask": "<string>"
      },
      "billing": {
        "address": {
          "city": "New York",
          "country": "AF",
          "line1": "123, King Street",
          "line2": "Powelson Avenue",
          "line3": "Bridgewater",
          "zip": "08807",
          "state": "New York",
          "first_name": "John",
          "last_name": "Doe",
          "origin_zip": "08807"
        },
        "phone": {
          "number": "9123456789",
          "country_code": "+1"
        },
        "email": "<string>"
      }
    }
  ]
}

Authorization

  • Header: api-key (string) — required Note: Publishable keys are a type of keys that can be public and have limited scope of usage.

Headers

  • X-Profile-Id (string) — required Profile ID associated to the payment intent

Path Parameters

  • id (string) — required The global payment id

Response

  • 200 application/json — Get the payment methods

Fields:

  • payment_methods_enabled (required) — array of objects (card · object | bank · object) The list of payment methods that are enabled for the business profile.

    • Typical attributes inside each enabled payment method:

      • payment_method_type (string) — e.g., "card"

      • payment_method_subtype (string) — e.g., "ach"

      • card_networks — array with card network objects (each may include eligible_connectors, card_network, surcharge_details)

      • required_fields — object describing any extra fields required

      • payment_experience — array (e.g., ["redirect_to_url"])

      • surcharge_details — object describing surcharge and tax details

  • customer_payment_methods — array of objects | null The list of payment methods saved by the given customer. This field is only returned if the customer_id is provided in the request.

    • Typical attributes inside each saved payment method:

      • payment_method_token (string)

      • customer_id (string)

      • payment_method_type (string)

      • payment_method_subtype (string)

      • recurring_enabled (boolean)

      • created (timestamp)

      • requires_cvv (boolean)

      • last_used_at (timestamp)

      • is_default (boolean)

      • payment_method_data — contains type-specific data (e.g., card details: last4_digits, expiry_month, expiry_year, card_holder_name, card_network, etc.)

      • bank — may include mask

      • billing — billing address, phone, email

Links

  • Documentation: https://api-reference.hyperswitch.io/introduction

  • Locker API Reference: https://api-reference.hyperswitch.io/locker-api-reference/overview

  • Intelligent Router API Reference: https://api-reference.hyperswitch.io/intelligent-router-api-reference/overview

  • Edit doc: https://github.com/juspay/hyperswitch/edit/main/api-reference/v2/payments/payments--payment-methods-list.mdx

  • Raise issue: https://github.com/juspay/hyperswitch/issues/new?title=Issue%20on%20docs&body=Path:%20/v2/payments/payments--payment-methods-list