Skip to content

Latest commit

 

History

History
57 lines (50 loc) · 56.1 KB

File metadata and controls

57 lines (50 loc) · 56.1 KB

CheckoutCreate

Create a new checkout session from a list of products. Customers will be able to switch between those products.

Metadata set on the checkout will be copied to the resulting order and/or subscription.

Example Usage

import { CheckoutCreate } from "@polar-sh/sdk/models/components/checkoutcreate.js";

let value: CheckoutCreate = {
  customerName: "John Doe",
  customerBillingAddress: {
    country: "US",
  },
  locale: "en",
  products: [],
};

Fields

Field Type Required Description Example
trialInterval components.TrialInterval The interval unit for the trial period.
trialIntervalCount number The number of interval units for the trial period.
metadata Record<string, components.CheckoutCreateMetadata> Key-value object allowing you to store additional information.

The key must be a string with a maximum length of 40 characters.
The value must be either:

* A string with a maximum length of 500 characters
* An integer
* A floating-point number
* A boolean

You can store up to 50 key-value pairs.
customFieldData Record<string, components.CheckoutCreateCustomFieldData> Key-value object storing custom field values.
discountId string ID of the discount to apply to the checkout.
allowDiscountCodes boolean Whether to allow the customer to apply discount codes. If you apply a discount through discount_id, it'll still be applied, but the customer won't be able to change it.
requireBillingAddress boolean Whether to require the customer to fill their full billing address, instead of just the country. Customers in the US will always be required to fill their full address, regardless of this setting. If you preset the billing address, this setting will be automatically set to true.
amount number N/A
seats number Predefined number of seats (works with seat-based pricing only)
minSeats number Minimum number of seats (works with seat-based pricing only)
maxSeats number Maximum number of seats (works with seat-based pricing only)
allowTrial boolean Whether to enable the trial period for the checkout session. If false, the trial period will be disabled, even if the selected product has a trial configured.
customerId string ID of an existing customer in the organization. The customer data will be pre-filled in the checkout form. The resulting order will be linked to this customer.
isBusinessCustomer boolean Whether the customer is a business or an individual. If true, the customer will be required to fill their full billing address and billing name.
externalCustomerId string ID of the customer in your system. If a matching customer exists on Polar, the resulting order will be linked to this customer. Otherwise, a new customer will be created with this external ID set.
customerName string N/A John Doe
customerEmail string N/A
customerIpAddress string N/A
customerBillingName string N/A
customerBillingAddress components.AddressInput N/A
customerTaxId string N/A
customerMetadata Record<string, components.CheckoutCreateCustomerMetadata> Key-value object allowing you to store additional information that'll be copied to the created customer.

The key must be a string with a maximum length of 40 characters.
The value must be either:

* A string with a maximum length of 500 characters
* An integer
* A floating-point number
* A boolean

You can store up to 50 key-value pairs.
subscriptionId string ID of a subscription to upgrade. It must be on a free pricing. If checkout is successful, metadata set on this checkout will be copied to the subscription, and existing keys will be overwritten.
successUrl string URL where the customer will be redirected after a successful payment.You can add the checkout_id={CHECKOUT_ID} query parameter to retrieve the checkout session id.
returnUrl string When set, a back button will be shown in the checkout to return to this URL.
embedOrigin string If you plan to embed the checkout session, set this to the Origin of the embedding page. It'll allow the Polar iframe to communicate with the parent page.
locale string N/A Example 1: en
Example 2: en-US
Example 3: fr
Example 4: fr-CA
currency components.PresentmentCurrency N/A
products string[] ✔️ List of product IDs available to select at that checkout. The first one will be selected by default.
prices Record<string, components.CheckoutCreatePrices[]> Optional mapping of product IDs to a list of ad-hoc prices to create for that product. If not set, catalog prices of the product will be used.