---
title: "Get a payment method for a customer"
method: GET
path: "/customers/{customer_id}/payment-methods/{payment_method_id}"
tags: ["Payment methods"]
---

# Get a payment method for a customer

`GET /customers/{customer_id}/payment-methods/{payment_method_id}`

## Request

- Base URL: `https://sandbox-api.paddle.com`
- URL: `https://sandbox-api.paddle.com/customers/{customer_id}/payment-methods/{payment_method_id}`
- Auth: HTTP bearer

Returns a payment method for a customer using its ID and related customer ID.

## Path parameters

- `customer_id` string, required: Unique Paddle ID for this customer entity, prefixed with `ctm_`.
- `payment_method_id` string, required

## Response `200`

The request has succeeded.

- object
  - `data` CustomerPaymentMethod, required: Represents a customer payment method entity.
    - `id` string, required: Unique Paddle ID for this payment method entity, prefixed with `paymtd_`.
    - `customer_id` string, required: Unique Paddle ID for this customer entity, prefixed with `ctm_`.
    - `address_id` string, required: Unique Paddle ID for this address entity, prefixed with `add_`.
    - `type` 'alipay' | 'apple_pay' | 'blik' | 'card' | 'google_pay' | 'kakao_pay' | 'korea_local' | 'south_korea_local_card' | 'mb_way' | 'naver_pay' | 'payco' | 'paypal' | 'pix' | 'samsung_pay' | 'upi' | 'wechat_pay', required: Type of payment method saved.
    - `card` Card, required: Card metadata
      - `type` 'american_express' | 'diners_club' | 'discover' | 'jcb' | 'mada' | 'maestro' | 'mastercard' | 'union_pay' | 'unknown' | 'visa', required: Type of credit or debit card used to pay.
      - `last4` string, required: Last four digits of the card used to pay.
      - `expiry_month` integer, required: Month of the expiry date of the card used to pay.
      - `expiry_year` integer, required: Year of the expiry date of the card used to pay.
      - `cardholder_name` string, required: The name on the card used to pay.
    - `paypal` Paypal, required: PayPal metadata
      - `email` string, required: Email address associated with the PayPal account.
      - `reference` string, required: PayPal payment method identifier.
    - `underlying_details` UnderlyingDetails: Information about the underlying payment method used to pay. Populated for payment methods that offer multiple payment options, like `korea_local`. Deprecated - use top-level type objects instead.
      - `korea_local` KoreaLocalUnderlyingDetails, required: Information about the Korean payment method used to pay. `null` unless the type is `korea_local`. Deprecated - use top-level type objects instead.
        - `type` 'bc' | 'citi' | 'hana' | 'hyundai' | 'jeju' | 'jeonbuk' | 'kakaobank' | 'kakaopay' | 'kbank' | 'kdbbank' | 'kookmin' | 'kwangju' | 'lotte' | 'mg' | 'naverpaycard' | 'naverpaypoint' | 'nh' | 'payco' | 'post' | 'samsung' | 'samsungpay' | 'savingsbank' | 'shinhan' | 'shinhyup' | 'suhyup' | 'tossbank' | 'unknown' | 'woori', required: Type of Korean payment method used to pay. Deprecated - use top-level type objects instead.
    - `south_korea_local_card` SouthKoreaLocalCard, required: Information about the Korean credit or debit card used to pay.
      - `type` 'bc' | 'citi' | 'hana' | 'hyundai' | 'jeju' | 'jeonbuk' | 'kakaobank' | 'kbank' | 'kdbbank' | 'kookmin' | 'kwangju' | 'lotte' | 'mg' | 'nh' | 'post' | 'samsung' | 'savingsbank' | 'shinhan' | 'shinhyup' | 'suhyup' | 'tossbank' | 'unknown' | 'woori': Type of Korean credit or debit card used to pay.
      - `last4` string: Last four digits of the card used to pay.
    - `origin` 'saved_during_purchase' | 'subscription' | 'subscription_saved_during_purchase', required: Describes how this payment method was saved.
    - `saved_at` string, date-time, required: RFC 3339 datetime string of when this entity was saved. Set automatically by Paddle.
    - `updated_at` string, date-time, required: RFC 3339 datetime string of when this entity was updated. Set automatically by Paddle.
  - `meta` Meta, required: Information about this response.
    - `request_id` string, required: Unique ID for the request relating to this response. Provide this when contacting Paddle support about a specific request.

## Other responses

- `default`: An unexpected error response.

## Changes

- **2026-10-19** (v1) `4f35a8c6ea4d`: 3 info
  - response property `data/underlying_details/anyOf[subschema #1: PaymentMethodUnderlyingDetails]/korea_local/anyOf[subschema #1: Korean market underlying details]/` deprecated
  - response property `data/underlying_details/anyOf[subschema #1: PaymentMethodUnderlyingDetails]/korea_local/anyOf[subschema #1: Korean market underlying details]/type` deprecated
  - response property `data/underlying_details/anyOf[subschema #1: PaymentMethodUnderlyingDetails]/korea_local/anyOf[subschema #1: Korean market underlying details]/type/allOf[subschema #1: Korean market underlying payment method type]/` deprecated
- **2026-07-09** (v1) `e1ac347eb3c5`: 1 breaking
  - added the pattern `^ctm_[a-z\d]{26}$` to the `path` request parameter `customer_id`
- **2026-02-02** (v1) `9ba8be0f2006`: 14 breaking, 1 warning, 44 info
  - added the new path request parameter `customer_id`
  - added the new path request parameter `payment_method_id`
  - the `data/address_id` response's property type changed from `string` to no type for status `200`
  - the `data/customer_id` response's property type changed from `string` to no type for status `200`
  - …55 more
- **2025-05-27** (v1) `e57c515077cc`: 1 warning, 1 info
  - added the new `korea_local` enum value to the `data/type` response property for the response status `200`
  - added the optional property `data/underlying_details` to the response with the `200` status
- …earlier changes not shown

[Operation history](https://skmtc.dev/paddlehq/apis/paddle-api/changes/customers/:customer_id/payment-methods/:payment_method_id/get.md)

---

[API](https://skmtc.dev/paddlehq/apis/paddle-api.md) - [All operations](https://skmtc.dev/paddlehq/apis/paddle-api/llms.txt) - [OpenAPI document](https://skmtc.dev/paddlehq/apis/paddle-api/revisions/bbc0c72039c8?raw)
