Paddle Billing
Search

Restrict payment methods at checkout

Pass a list of payment methods when opening a checkout to choose which payment methods are presented to your customer

What's new?

We added a new allowedPaymentMethods parameter to Paddle.js. You can use it to choose which payment methods are presented to your customer when opening a checkout.

allowedPaymentMethodsarray[string] or null

Payment methods presented to customers at checkout.

How it works

Paddle lets you accept cards, digital wallets like Apple Pay and Google Pay, and local payment methods like iDEAL and Alipay out-of-the-box. You can turn on new payment methods in a couple of clicks in the Paddle web app, with no need to sign up for multiple merchant accounts or partner with different platforms.

Some payment methods are only available for certain countries or currencies, and for certain kinds of products. Paddle Checkout automatically presents valid payment methods for a transaction at checkout, so you don't need to handle this.

The new allowedPaymentMethods parameter gives you more control over the payment methods presented to your customer. You can pass it to checkout.settings when using Paddle.Setup(), or to settings when using Paddle.Checkout.open(). It accepts an array of strings.

When payment methods are passed, Paddle Checkout presents a customer with the option to pay using only the payment methods passed.

To determine which payment methods are valid given prices and location information, you can check the available_payment_methods array returned when using Paddle.PricePreview() or when previewing transactions using the API.

Example

You can set up a transaction using the API, then pass it to a checkout to collect for it.

This example passes transactionID to open a checkout for that transaction. The customer is presented with the option to pay using Google Pay when they open checkout.

Next steps

This change is live in Paddle.js now, so you can start using it when you're ready.

You don't need to do anything to get the latest version of Paddle.js — we serve the latest version automatically.

Learn more