Paddle Billing
Search

Prefill checkout properties

Prefill checkout fields to save customers time and increase checkout conversion

You can prefill properties on a checkout for a smoother checkout experience for your customer. You might do this when:

  • You capture some information about a prospect on the page before they interact with your checkout.
  • You've built an integration with a CRM solution that passes email or other information as parameters on signup links.
  • You're working with a logged-in customer, presenting them with upgrade options.

How it works

Paddle Checkout is optimized for conversion, asking customers for:

Customers can also add a discount and information about their business, like a VAT or tax number.

You can pass data to a checkout to prefill properties, reducing purchase friction for customers and increasing conversion. You can prefill all customer details. You can't prefill payment details, but you can present saved payment methods for returning customers.

Prefilling works with both overlay checkout and inline checkout. You can use HTML data attributes or JavaScript properties.

Before you begin

You'll need to include Paddle.js on your page and pass a client-side token.

To open a checkout, you'll need to create products and prices and pass them to a checkout.

Get a step-by-step overview of how to build a complete checkout — including passing checkout settings. See: Build an overlay checkout or build an inline checkout

Pass customer or business information

In this example, there's a signup button that includes an email address field. The page has a country selector.

Illustration showing a signup button with email address field.

 

You could use HTML attributes or JavaScript properties to prefill this information in checkout:

#DescriptionHTML attributeJavaScript property
1Countrydata-customer-address-country-codecustomer.address.countryCode
2Email addressdata-customer-emailcustomer.email

Add data attributes to your checkout trigger to prefill those values on a checkout.

For a full list of fields you can prefill, see: HTML data attributes

Pass customer, address, and business IDs

Instead of passing customer email, address, and business information, you can pass an existing customer ID, address ID, or business ID.

You might do this if you're working with a logged-in customer who's looking to upgrade or purchase another subscription, or if you have a CRM integration that creates entities in Paddle for prospects.

Customer ID, address ID, and business ID replace other customer, address, and business fields. For example, you should pass either customer ID or customer email — not both.

Add data attributes to your checkout trigger to prefill those values on a checkout.

For a full list of fields that you can prefill, see: HTML data attributes

Apply a discount

You can pass the Paddle ID of a discount entity or its discount code to a checkout to automatically apply it — no need for customers to enter a code.

enabled_for_checkout must be true against the discount entity to apply it to a checkout.

Add data attributes to your checkout trigger to prefill those values on a checkout.

See: HTML data attributes

Build a one-page checkout

One-page checkout experience

Pass variant with the value one-page as a checkout setting to present customers with a one-page checkout experience. Paddle Checkout collects customer information and payment details on the same page.

Multi-page checkout

If you prefer the multi-page checkout experience, Paddle skips the first page of checkout when all required fields are prefilled. This means customers land on a screen where all they need to do is enter their payment details.

Illustration of an overlay checkout. The payment method form is open, with buttons for Apple Pay and PayPal along with the card details form underneath. The items list shows one item for 'Professional plan', with tax and totals underneath. The total overall is $3600, displayed at the top-left of the checkout.

To jump to the second page on the multi-page inline checkout, prefill either required properties or Paddle IDs:

DescriptionHTML attributeJavaScript property
Countrydata-customer-address-country-codecustomer.address.countryCode
Email addressdata-customer-emailcustomer.email
ZIP/postal code (only where required)data-customer-address-postal-codecustomer.address.postalCode
Region (only for United Arab Emirates)data-customer-address-regioncustomer.address.region

Related pages