Skip to content

List PaymentMethods ​

Returns a list of all PaymentMethods.

Returns ​

A dictionary with a data property that contains an array of up to limit PaymentMethods of type type, starting after PaymentMethods starting_after. Each entry in the array is a separate PaymentMethod object. If no more PaymentMethods are available, the resulting array will be empty.

Parameters ​

  • allow_redisplay (enum, optional) This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. Possible enum values:

    • always Use always to indicate that this payment method can always be shown to a customer in a checkout flow.

    • limited Use limited to indicate that this payment method can’t always be shown to a customer in a checkout flow. For example, it can only be shown in the context of a specific subscription.

    • unspecified This is the default value for payment methods where allow_redisplay wasn’t set.

  • customer (string, optional) The ID of the customer whose PaymentMethods will be retrieved.

  • customer_account (string, optional) The ID of the Account whose PaymentMethods will be retrieved.

  • ending_before (string, optional) A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_bar, your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.

  • limit (integer, optional) A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.

  • starting_after (string, optional) A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.

  • type (enum, optional) Filters the list by the object type field. Unfiltered, the list returns all payment method types except custom. If your integration expects only one type of payment method in the response, specify that type value in the request to reduce your payload.

curl
curl -G https://api.stripe.com/v1/payment_methods \
  -u "<<YOUR_SECRET_KEY>>" \
  -d type=card \
  -d limit=3 \
  -d customer={{CUSTOMER_ID}}

Response ​

json
{
  "object": "list",
  "url": "/v1/payment_methods",
  "has_more": false,
  "data": [
    {
      "id": "pm_1NO6mA2eZvKYlo2CEydeHsKT",
      "object": "payment_method",
      "billing_details": {
        "address": {
          "city": null,
          "country": null,
          "line1": null,
          "line2": null,
          "postal_code": null,
          "state": null
        },
        "email": null,
        "name": null,
        "phone": null
      },
      "card": {
        "brand": "visa",
        "checks": {
          "address_line1_check": null,
          "address_postal_code_check": null,
          "cvc_check": "unchecked"
        },
        "country": "US",
        "exp_month": 8,
        "exp_year": 2024,
        "fingerprint": "Xt5EWLLDS7FJjR1c",
        "funding": "credit",
        "generated_from": null,
        "last4": "4242",
        "networks": {
          "available": [
            "visa"
          ],
          "preferred": null
        },
        "three_d_secure_usage": {
          "supported": true
        },
        "wallet": null
      },
      "created": 1687991030,
      "customer": "cus_9s6XKzkNRiz8i3",
      "livemode": false,
      "metadata": {},
      "type": "card"
    }
  ]
}

Stripe API Reference - Self-contained docs reference, refreshed 2026-05-18