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.
Field | Type | Required | Description |
---|---|---|---|
Metadata |
map[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 |
map[string]components.CheckoutCreateCustomFieldData | ➖ | Key-value object storing custom field values. |
DiscountID |
*string | ➖ | ID of the discount to apply to the checkout. |
AllowDiscountCodes |
*bool | ➖ | 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 |
*bool | ➖ | 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 |
*int64 | ➖ | N/A |
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. |
CustomerExternalID |
*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 |
CustomerEmail |
*string | ➖ | N/A |
CustomerIPAddress |
*string | ➖ | N/A |
CustomerBillingAddress |
*components.Address | ➖ | N/A |
CustomerTaxID |
*string | ➖ | N/A |
CustomerMetadata |
map[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. |
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. |
Products |
[]string | ✔️ | List of product IDs available to select at that checkout. The first one will be selected by default. |