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:alwaysUsealwaysto indicate that this payment method can always be shown to a customer in a checkout flow.limitedUselimitedto 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.unspecifiedThis is the default value for payment methods whereallow_redisplaywasn’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_beforeis an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting withobj_bar, your subsequent call can includeending_before=obj_barin 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_afteris an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending withobj_foo, your subsequent call can includestarting_after=obj_fooin order to fetch the next page of the list.type(enum, optional) Filters the list by the objecttypefield. Unfiltered, the list returns all payment method types exceptcustom. 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"
}
]
}