---
title: "Retrieve payment methods"
method: POST
path: "/payment/paymentMethods"
tags: ["Payment Service"]
---

# Retrieve payment methods

`POST /payment/paymentMethods`

Returns a list of available payment methods, along with their corresponding fees.

## Request body

- PaymentMethodsRequest
  - `subscriptionId` string — Unique subscription identifier used to retrieve stored payment methods. If not provided, only generally available payment methods are returned.
  - `itemKey` string, required — Unique item key used to determine the applicable payment methods and fees.
  - `amount` number, required — Payment amount used to determine the applicable fees for various payment methods.

## Response `200`

Retrieved payment methods successfully.

- PaymentMethodsResponse
  - `environment` 'test' | 'prod' — Payment environment.
  - `paymentMethods` PaymentMethod[] — List of payment methods available for processing the payment.
    - `name` string — Display name of the payment method.
    - `type` string — Type of payment method, such as creditcard, echeck, googlepay, or applepay.
    - `totalAmount` number — Total payment amount for the transaction, including any applicable fee.
    - `config` object — Configuration properties for the payment method as key-value pairs.
    - `fee` PaymentMethodFee — Fee information associated with the stored payment method type.
      - `itemKey` string — Unique identifier of the fee item.
      - `name` string — Display name of the fee.
      - `description` string — Description of the fee.
      - `amount` number — Calculated fee amount for the request.
  - `storedPaymentMethods` StoredPaymentMethod[] — List of stored payment methods available for the subscription.
    - `storedPaymentMethodId` string — Identifier of the stored payment method.
    - `name` string — Display name of the stored payment method.
    - `type` string — Type of payment method, such as creditcard or echeck.
    - `totalAmount` number — Total payment amount for the transaction, including any applicable fee.
    - `fee` PaymentMethodFee — Fee information associated with the stored payment method type.
      - `itemKey` string — Unique identifier of the fee item.
      - `name` string — Display name of the fee.
      - `description` string — Description of the fee.
      - `amount` number — Calculated fee amount for the request.

## Other responses

- `400` — Invalid input data
- `401` — Unauthorized. The access token is missing, invalid, or expired.
- `404` — Payment methods not found
- `500` — Internal server error

---

[API](https://skmtc.dev/civikestpayment/apis/pays-service-api-specifications.md) · [All operations](https://skmtc.dev/civikestpayment/apis/pays-service-api-specifications/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/civikestpayment/pays-service-api-specifications/revisions/e94a116dff94/schema)
