Skip to content

Stripe: List a Customer's Payment Methods

Stripe customers.getCustomersCustomerPaymentMethods: arguments, response, policy and SDK examples.

← Customers operations · Get started

Operation stripe.getcustomerscustomerpaymentmethods

Provider route: GET /v1/customers/{customer}/payment_methods. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/stripe with npm, or alter-sdk-stripe with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { StripeIntegration } from "@alter-ai/stripe";
async function execute(input: Parameters<StripeIntegration["customers"]["getCustomersCustomerPaymentMethods"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new StripeIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.customers.getCustomersCustomerPaymentMethods(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_stripe import StripeIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = StripeIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.customers.get_customers_customer_payment_methods(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
pathobjectRequired within parentAdditional keys: not allowed
path.customerstringRequired within parentMaximum length: 5000
queryobjectOptionalAdditional keys: not allowed
query.allow_redisplaystringOptionalOne of: always, limited, unspecified
query.ending_beforestringOptionalMaximum length: 5000
query.expandarrayOptional
query.expand[]stringEach itemMaximum length: 5000
query.limitintegerOptional
query.starting_afterstringOptionalMaximum length: 5000
query.typestringOptionalOne of: acss_debit, affirm, afterpay_clearpay, alipay, alma, amazon_pay, au_becs_debit, bacs_debit, bancontact, billie, bizum, blik, boleto, card, cashapp, crypto, custom, customer_balance, eps, fpx, giropay, grabpay, ideal, kakao_pay, klarna, konbini, kr_card, link, mb_way, mobilepay, multibanco, naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, payco, paynow, paypal, paypay, payto, pix, promptpay, revolut_pay, samsung_pay, satispay, scalapay, sepa_debit, sequra, sofort, sunbit, swish, twint, upi, us_bank_account, wechat_pay, zip

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$objectRoot
dataarrayRequired within parent
data[]ModelEach itemExpand Create a Payment Method — response body
has_morebooleanRequired within parentTrue if this list has another page of items after this one that can be fetched.
objectstringRequired within parentString representing the object’s type. Objects of the same type share the same value. Always has the value `list`.
Known values: list
urlstringRequired within parentThe URL where this list can be accessed.
Maximum length: 5000

Referenced models: Create a Payment Method — response body

697 more schemas are linked from the tables above, on the schema pages.

Create a Payment Method — response body — zip
FieldTypePresenceDescription and constraints
$objectRoot
Create a charge — response body — billing details
FieldTypePresenceDescription and constraints
$objectRoot
addressJSONOptional
address (anyOf 1)JSONAlternativeBilling address.
address (anyOf 1) (anyOf 1)ModelAlternativeExpand Create a Location — response body — address
address (anyOf 2)nullAlternative
emailJSONOptional
email (anyOf 1)stringAlternativeEmail address.
Maximum length: 5000
email (anyOf 2)nullAlternative
nameJSONOptional
name (anyOf 1)stringAlternativeFull name.
Maximum length: 5000
name (anyOf 2)nullAlternative
phoneJSONOptional
phone (anyOf 1)stringAlternativeBilling phone number (including extension).
Maximum length: 5000
phone (anyOf 2)nullAlternative
tax_idJSONOptional
tax_id (anyOf 1)stringAlternativeTaxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
Maximum length: 5000
tax_id (anyOf 2)nullAlternative

Referenced models: Create a Location — response body — address

Create a Payment Method — response body — acss debit
FieldTypePresenceDescription and constraints
$objectRoot
bank_nameJSONOptional
bank_name (anyOf 1)stringAlternativeName of the bank associated with the bank account.
Maximum length: 5000
bank_name (anyOf 2)nullAlternative
fingerprintJSONOptional
fingerprint (anyOf 1)stringAlternativeUniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
Maximum length: 5000
fingerprint (anyOf 2)nullAlternative
institution_numberJSONOptional
institution_number (anyOf 1)stringAlternativeInstitution number of the bank account.
Maximum length: 5000
institution_number (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternativeLast four digits of the bank account number.
Maximum length: 5000
last4 (anyOf 2)nullAlternative
transit_numberJSONOptional
transit_number (anyOf 1)stringAlternativeTransit number of the bank account.
Maximum length: 5000
transit_number (anyOf 2)nullAlternative
Create a Payment Method — response body — au becs debit
FieldTypePresenceDescription and constraints
$objectRoot
bsb_numberJSONOptional
bsb_number (anyOf 1)stringAlternativeSix-digit number identifying bank and branch associated with this bank account.
Maximum length: 5000
bsb_number (anyOf 2)nullAlternative
fingerprintJSONOptional
fingerprint (anyOf 1)stringAlternativeUniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
Maximum length: 5000
fingerprint (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternativeLast four digits of the bank account number.
Maximum length: 5000
last4 (anyOf 2)nullAlternative
Create a Payment Method — response body — bacs debit
FieldTypePresenceDescription and constraints
$objectRoot
fingerprintJSONOptional
fingerprint (anyOf 1)stringAlternativeUniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
Maximum length: 5000
fingerprint (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternativeLast four digits of the bank account number.
Maximum length: 5000
last4 (anyOf 2)nullAlternative
sort_codeJSONOptional
sort_code (anyOf 1)stringAlternativeSort code of the bank account. (e.g., `10-20-30`)
Maximum length: 5000
sort_code (anyOf 2)nullAlternative
Create a Payment Method — response body — bizum
FieldTypePresenceDescription and constraints
$objectRoot
buyer_idJSONOptional
buyer_id (anyOf 1)stringAlternativeA unique identifier for the buyer as determined by the local payment processor.
Maximum length: 5000
buyer_id (anyOf 2)nullAlternative
Create a Payment Method — response body — blik
FieldTypePresenceDescription and constraints
$objectRoot
buyer_idJSONOptional
buyer_id (anyOf 1)stringAlternativeA unique and immutable identifier assigned by BLIK to every buyer.
Maximum length: 5000
buyer_id (anyOf 2)nullAlternative
Create a Payment Method — response body — boleto
FieldTypePresenceDescription and constraints
$objectRoot
tax_idstringRequired within parentUniquely identifies the customer tax id (CNPJ or CPF)
Maximum length: 5000
Create a Payment Method — response body — cashapp
FieldTypePresenceDescription and constraints
$objectRoot
buyer_idJSONOptional
buyer_id (anyOf 1)stringAlternativeA unique and immutable identifier assigned by Cash App to every buyer.
Maximum length: 5000
buyer_id (anyOf 2)nullAlternative
cashtagJSONOptional
cashtag (anyOf 1)stringAlternativeA public identifier for buyers using Cash App.
Maximum length: 5000
cashtag (anyOf 2)nullAlternative
Create a Payment Method — response body — custom
FieldTypePresenceDescription and constraints
$objectRoot
display_nameJSONOptional
display_name (anyOf 1)stringAlternativeDisplay name of the Dashboard-only CustomPaymentMethodType.
Maximum length: 5000
display_name (anyOf 2)nullAlternative
logoJSONOptional
logo (anyOf 1)JSONAlternativeContains information about the Dashboard-only CustomPaymentMethodType logo.
logo (anyOf 1) (anyOf 1)ModelAlternativeExpand Create a Payment Method — response body — custom logo value content type, url
logo (anyOf 2)nullAlternative
typestringRequired within parentID of the Dashboard-only CustomPaymentMethodType. Not expandable.
Maximum length: 5000

Referenced models: Create a Payment Method — response body — custom logo value content type, url

Create a Payment Method — response body — eps
FieldTypePresenceDescription and constraints
$objectRoot
bankJSONOptional
bank (anyOf 1)stringAlternativeThe customer's bank. Should be one of `arzte_und_apotheker_bank`, `austrian_anadi_bank_ag`, `bank_austria`, `bankhaus_carl_spangler`, `bankhaus_schelhammer_und_schattera_ag`, `bawag_psk_ag`, `bks_bank_ag`, `brull_kallmus_bank_ag`, `btv_vier_lander_bank`, `capital_bank_grawe_gruppe_ag`, `deutsche_bank_ag`, `dolomitenbank`, `easybank_ag`, `erste_bank_und_sparkassen`, `hypo_alpeadriabank_international_ag`, `hypo_noe_lb_fur_niederosterreich_u_wien`, `hypo_oberosterreich_salzburg_steiermark`, `hypo_tirol_bank_ag`, `hypo_vorarlberg_bank_ag`, `hypo_bank_burgenland_aktiengesellschaft`, `marchfelder_bank`, `oberbank_ag`, `raiffeisen_bankengruppe_osterreich`, `schoellerbank_ag`, `sparda_bank_wien`, `volksbank_gruppe`, `volkskreditbank_ag`, or `vr_bank_braunau`.
Known values: arzte_und_apotheker_bank, austrian_anadi_bank_ag, bank_austria, bankhaus_carl_spangler, bankhaus_schelhammer_und_schattera_ag, bawag_psk_ag, bks_bank_ag, brull_kallmus_bank_ag, btv_vier_lander_bank, capital_bank_grawe_gruppe_ag, deutsche_bank_ag, dolomitenbank, easybank_ag, erste_bank_und_sparkassen, hypo_alpeadriabank_international_ag, hypo_bank_burgenland_aktiengesellschaft, hypo_noe_lb_fur_niederosterreich_u_wien, hypo_oberosterreich_salzburg_steiermark, hypo_tirol_bank_ag, hypo_vorarlberg_bank_ag, marchfelder_bank, oberbank_ag, raiffeisen_bankengruppe_osterreich, schoellerbank_ag, sparda_bank_wien, volksbank_gruppe, volkskreditbank_ag, vr_bank_braunau
bank (anyOf 2)nullAlternative
Create a Payment Method — response body — klarna
FieldTypePresenceDescription and constraints
$objectRoot
dobJSONOptional
dob (anyOf 1)JSONAlternativeThe customer's date of birth, if provided.
dob (anyOf 1) (anyOf 1)ModelAlternativeExpand Create a person — accounts post Accounts Account People — response body — dob
dob (anyOf 2)nullAlternative

Referenced models: Create a person — accounts post Accounts Account People — response body — dob

SDK function policy ID: stripe.getcustomerscustomerpaymentmethods. Catalog operation: GetCustomersCustomerPaymentMethods. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Pinned headers: {"Stripe-Version": "2026-09-30.endive"}

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.