Create Checkout Link
1
Select Product
Select the product in your product catalog, create a price if not already done,
and click the “Create Checkout Link” button.
2
Set Up After Order Completion
Under “After Completion”, select one of the options to determine what happens after the purchase.

- Default Confirmation Page: The customer is redirected to the default confirmation page and receives an overview of their order and the associated invoice.
- Custom Redirect: The customer is redirected to a URL you specify.
- Custom Confirmation Message: The customer is redirected to the default confirmation page and is shown a confirmation message you specify.
Allow Discount Codes
Under “More Options”, you can specify whether the customer can enter a discount code. Enable this option if you want the customer to be able to enter a discount code. Otherwise, the field will be hidden.Set Trial Period
Under “More Options”, you can specify for recurring products whether a trial period should apply to the product. Enable this option if you want the customer to be able to try the product before purchasing. The amount is not due until the trial period expires.Set Terms
Under “More Options”, you can specify for recurring products which contract & cancellation periods apply to the product. The terms are then transferred to the subscription. For one-time products, this option is irrelevant.If you do not set any terms, the billing period is used as the contract term and 1 day as the cancellation period.
Require Company Information
Under “More Options”, you can specify whether the customer is required to provide company information. This way you can ensure that you only sell to companies. To do this, enable the “Require Company Information” option.Make Quantity Changeable
Under “More Options”, you can specify whether the customer can subsequently change the quantity of the product in the cart. Enable this option by checking the “Quantity Changeable” checkbox. This means a product cannot be removed from the cart, only the quantity can be changed.Adding Metadata
You can attach metadata to the checkout link to pass additional information. This metadata is:- appended as redirect parameters to the custom redirect
- replaced as placeholders in the custom redirect
- passed in the
cart.completedandcart.paidwebhooks underdata.cart.metadata - returned with the cart via the API (
GET /checkout/carts/{cartId})
Attaching Metadata
To attach metadata to the checkout link, add it as URL parameters, e.g.,https://fynn.coreapi.io/checkout-link/xxxxxxxx?metadata[key]=value&metadata[key2]=value2.
It is also possible to pass a multidimensional array by enclosing the key in square brackets, e.g., metadata[key][subkey]=value.
Placeholders in the Custom Redirect
You can use placeholders in the custom redirect that are replaced by metadata. To use a specified metadata in the custom redirect, add it in curly braces, e.g.,{{metadataKey}}.
Webhooks
Thecart.completed and cart.paid webhooks deliver the metadata with the cart:
Assigning to an Existing Customer
The checkout link always creates a new, anonymous cart. If the buyer enters an email address in the checkout that already belongs to a customer, we offer them a sign-in via one-time code. That sign-in is optional: if the buyer skips it, a second customer record with the same email address is created on completion. If your system already knows the customer, assign the cart server-side before you redirect. Create it via the API and pass thecustomerId:
url instead of the general checkout link. The cart is then bound to the existing customer, their addresses are prefilled and their stored payment methods are available for selection. If the customer’s street, postal code or city is missing, the checkout asks for the address.
The call requires the cart:write permission. Use the same checkout link identifier as in the checkout link URL. All fields are listed in the API reference.
Create Checkout Session
By default, a new checkout session is created when using the checkout link. However, it may be useful to create only one checkout session if you:- want to bundle multiple products in one cart
- want to use the checkout link multiple times
session=true, e.g., https://my-tenant.coreapi.io/checkout-link/xxxxxxxx?session=true.
Retrieve Checkout Session
To retrieve the checkout session without adding another product, call the following API route:https://[tenant-username].coreapi.io/public/checkout/cart/current. Replace [tenant-username] with your tenant name.
You will then be redirected to the current checkout session.