Skip to main content

Payment setup config

The paymentSetupConfig is the runtime payment configuration for a store. It tells your client code:
  • Which payment methods are enabled for this merchant
  • How each method is wired (which processor handles it)
  • What metadata your browser code needs to render the right UI
It’s the data structure your client code branches on. Get it wrong and you render an Apple Pay button that fails to open. Get it right and your UI just works across every processor combination.

Discover what a merchant has enabled

The setup is a flat object keyed by "{method}" or "{method}:{provider}":

The two-dimensional shape

Every entry has two coordinates: The same method can ship through different providers. This is intentional — merchants legitimately need Klarna through Stripe in EU and Klarna through Airwallex in APAC, for example. The key naming convention:

Field reference


Common patterns

Render the right buttons

Filter by currency

Filter by country


Provider catalog


What changes after the call?

paymentSetup.get(storeId) is a snapshot. It can change:
  • A merchant turns on a new payment method via your dashboard
  • An operator adjusts processor routing
  • A KYB review unlocks an additional capability
Treat the result as cacheable for ~1 minute on the client. Re-fetch on:
  • Page reload
  • Currency change (some methods filter by presentmentCurrencies)
  • Country change (some filter by supportedCountries)

Versioning

The paymentSetupConfig shape is stable — new fields are added in a backwards-compatible way. We don’t remove or rename fields without a major version bump of the API. If you see an unfamiliar key (e.g. a new method), the safe behavior is to ignore it. Your existing code keeps working until you opt into rendering the new method.