Fill in the form to arrange a demo

Mac SDK Checkout Options (v4)

The Checkout is quite flexible and supports numerous configuration, pre-fill, and pricing options. These can be leveraged by passing a PADCheckoutOptions object to the Checkout.

Overriding Prices

To override prices in the checkout you will need to use the Custom Checkout API and pass in prices to override the initial checkout price or recurring_prices if you wish to override a subscription’s subsequent recurring payment amount.

Pre-fill Checkout Fields

You can also pre-fill certain checkout fields such as the email and the postcode by setting their appropriate properties in the PADCheckoutOptions object.


// Create a new checkout options object and set the properties you want to pre-fill
PADCheckoutOptions *options = [PADCheckoutOptions options];

options.email = @"example@email.com";
options.country = @"GB";
options.postcode = @"SE1";
options.coupon = @"My-coupon";

// Pass the checkout options to the checkout.
[Paddle.sharedInstance showCheckoutForProduct:product options:options checkoutStatusCompletion:nil];

// Create a new checkout options object and set the properties you want to pre-fill
let options = PADCheckoutOptions()

options.email = "example@email.com"
options.country = "GB"
options.postcode = "SE1"
options.coupon = "My-coupon"

// Pass the checkout options to the checkout.
paddle.showCheckout(for: product, options: options, checkoutStatusCompletion: nil)

Custom Parameters

If you need pass additional Custom Checkout parameters you can also use the PADCheckoutOptions.additionalCheckoutParameters property.


// Create a new checkout options object and set the custom parameters you require.
PADCheckoutOptions *options = [PADCheckoutOptions options];

options.additionalCheckoutParameters = @{@"quantity": @32};

// Pass the checkout options to the checkout.
[Paddle.sharedInstance showCheckoutForProduct:product options:options checkoutStatusCompletion:nil];

// Create a new checkout options object and set the custom parameters you require.
let options = PADCheckoutOptions()

options.additionalCheckoutParameters = ["quantity": 32]

// Pass the checkout options to the checkout.
paddle.showCheckout(for: product, options: options, checkoutStatusCompletion: nil)

Questions about Paddle?

If you need any help regarding your Paddle integration, please get in touch with our Customer Success team using the form below.

Questions about Paddle?