This guide shows you how to build a checkout link by hand, so you can drop it into an email, a button on your site, or a campaign in your email service provider. The format is forgiving and you can always test the link in a browser before you send it out.
A checkout link is just a web address with a few extra pieces of information added on the end. Each piece tells the checkout page what to show, for example which product to sell or which language to display.
Before you start
You will need two things from your product:
The SKU (a short product code, for example
daily-news).The purchase option (the specific plan, for example
monthlyoryearly).
The easiest way to find both is to use the Create Checkout URL tool in the portal once. It shows the exact SKU and option values for every product you sell.
1. Open the portal and go to the Tools page for your vendor.
2. Click Create Checkout URL.
3. Pick a product from the Product dropdown.
4. Pick a purchase option.
5. Note down the sku and option values shown in the generated URL at the bottom of the page. You will reuse these in your own links.
You only need to do this once per product. After that you can build links yourself.
The basic format
Every checkout link starts the same way:
Replace YOUR_SKU with the SKU you noted down, and YOUR_OPTION with the purchase option. For example, a daily news monthly subscription might look like this:
That link, on its own, will open the Sesamy checkout with the right product already selected.
Adding more details
You can add more information by joining each piece with an ampersand (&). The order does not matter.
The most common additions are:
Language:
lang=en(orsv,fi,nb,da, and so on).Email pre-fill:
[email protected]so the customer does not have to type it.Discount code:
discountCode=SUMMER25.Redirect after purchase:
redirect-url=https://yoursite.com/thank-you.
A link with all of these would look like this:
Tracking a campaign with UTM tags
If you want to see in your analytics where your sales are coming from, add UTM tags. These are standard tracking parameters that most analytics tools recognise.
&utm_source=newsletter&utm_medium=email&utm_campaign=summer-launch
You can add utm_content as well if you want to tell two versions of the same email apart.
Using a checkout link in an email service provider
If you are sending the link from a tool like Mailchimp, you probably want each recipient to see their own email already filled in. Email service providers do this with merge tags, which are small placeholders that get swapped for the recipient's real details when the email is sent.
The exact syntax depends on your provider. As an example, Mailchimp uses *|EMAIL|* as the merge tag for the recipient's email, so your link would be:
When the email is sent, *|EMAIL|* is replaced with the actual address, so each recipient gets a checkout link with their own email already pre-filled.
Check your ESP documentation for the exact merge tag syntax. Mailchimp uses *|EMAIL|*, *|FNAME|*, and *|LNAME|*. HubSpot and Klaviyo both use a Liquid-style template syntax in which the variable name (for example, contact.email in HubSpot or email in Klaviyo) is wrapped in double curly braces.
You can use the same approach to pre-fill the first name (user-firstname), last name (user-lastname), or any other field listed in the reference at the end of this article.
A note on special characters
If any of your values contain spaces or special characters like &, ?, or +, they must be URL-encoded. URL-encoded means special characters are replaced with safe equivalents, for example a space becomes %20. Most tools will do this for you automatically.
The simplest way to check is to paste your finished link into a browser and press Enter. If the checkout page loads with the right product, language, and pre-filled details, your link is correct. If something looks wrong or the page fails to load, the most likely cause is an unencoded special character in one of your values.
A safe rule: stick to letters, numbers, dashes, and underscores in values you build by hand. If you need to include something more unusual, encode it first.
What happens next
When a customer clicks your link, they land on the Sesamy checkout page with the product, language, and any details you provided already filled in. They complete the purchase as usual. If you added a redirect-url, they are sent to that page after a successful purchase.
Trouble?
The page loads but the product is missing. Double-check that
skuandoptionare spelled exactly as shown in the Create Checkout URL tool. They are case-sensitive.The discount code is not applied. Confirm the code is active and spelled exactly. Discount codes are case-sensitive.
The email field is blank when I expected it pre-filled. Your merge tag was probably not replaced before sending. Send yourself a test email and click the link from there to confirm.
The link looks broken or shows an error. Check that every parameter after the first one is joined with
&, and that the first parameter is joined with?. There should be exactly one?in the link.I cannot find the SKU or option. Open the Create Checkout URL tool in the portal, pick the product, and read the values from the generated URL at the bottom.
Appendix: full parameter reference
Parameter | Purpose | Example |
| Product code (required) |
|
| Purchase option (required) |
|
| Checkout language |
|
| Apply a discount code |
|
| Pre-fill customer email | |
| Where to send the customer after purchase |
|
| Mark the purchase as a gift |
|
| Pre-fill first name |
|
| Pre-fill last name |
|
| Pre-fill phone number |
|
| Email of the person who referred this customer | |
| Pre-fill street address |
|
| Pre-fill postal code |
|
| Pre-fill city |
|
| Pre-fill country (two-letter code) |
|
| Preset payment provider, used together with |
|
| Preset payment method |
|
| Campaign source for analytics |
|
| Campaign medium |
|
| Campaign name |
|
| Campaign content variant |
|
Payment method pairs
payment-provider and payment-method must always be set together. The valid combinations are:
Method | payment-provider | payment-method |
Card |
|
|
Apple Pay |
|
|
Google Pay |
|
|
Swish |
|
|
Klarna (via Stripe) |
|
|
Klarna (direct) |
|
|
Vipps |
|
|
Invoice (Billogram) |
|
|
Manual invoice |
|
|
Apple Pay and Google Pay fall back to the regular payment step if the customer's device does not support them. Other methods fall back silently.
Need help? If you would like a hand setting up a checkout link or testing it with your email tool, contact your Sesamy contact and we will help you get it running.
