Hosted checkout URL query parameters

Append query parameters to hosted checkout launch URLs to pass information about a customer and items to a checkout.

You can use hosted checkouts to let users securely make purchases outside your mobile app. Each hosted checkout has a unique link that you can add to your app to let customers open a checkout that's fully hosted by Paddle.

All hosted checkout URL query parameters are optional. You can set defaults when creating a hosted checkout in Paddle > Checkout > Hosted Checkouts, like the prices to open the checkout with if no priceId or transactionId is passed. However, one is required if no default price is set.

Hosted checkout parameters also work with the Paddle in-app checkout starter kit, which you can use to deploy your own mobile purchase workflow.

For maximum compatibility across browsers, make sure to percent-encode query strings. For example, pass max%2Bpaddle%40example.com for max+paddle@example.com.

Parameters

price_idstring<Paddle ID>

Paddle ID of the price for the item that this hosted checkout is for. Pass a comma-separated list of price IDs to open a checkout for multiple prices. If omitted and no transaction_id is passed, the default prices for the hosted checkout are used. Required if no default prices are set and no transaction_id is passed.

discount_codestring

Discount code to apply. Use to prepopulate a discount at checkout. Takes precedence over discount_id. If omitted, no discount is applied.

discount_idstring<Paddle ID>

Paddle ID of a discount to apply. Use to prepopulate a discount at checkout. Ignored if discount_code is also passed. If omitted, no discount is applied.

paddle_customer_idstring<Paddle ID>

Paddle ID of the customer for this checkout. Use if you know the customer, like if they're authenticated and making a change to their subscription. You can't use if you're passing user_email.

user_emailstring<email>

Email for this customer. You can't use if you're passing paddle_customer_id.

country_codestring

Two-letter ISO 3166 country code for this customer.

postal_codestring

ZIP or postal code of the address. Only asked for in countries with postal codes.

app_user_idstring

Unique identifier for this customer in RevenueCat. Used for fulfilment using entitlements in RevenueCat.

transaction_idstring<Paddle ID>

Paddle ID of an existing transaction. You can create a transaction on your backend and pass to checkout to use, instead of passing price_id and customer details. If omitted and no price_id is passed, the default prices for the hosted checkout are used. Required if no default prices are set and no price_id is passed.

localestring

Language for the checkout.

themestring

Theme for the checkout. If omitted, defaults to light.

allowed_payment_methodsarray[string]

Payment options presented to customers at checkout.

Examples

Related pages