Free Tool
4.9/5 from G2 reviews

Shopify Add-to-Cart Link Generator

Build a cart permalink that prefills the cart, applies a discount, and drops the buyer on checkout, the cart page, or Shop Pay. Variants resolve automatically from the product URL.

Variants load from the store's public product JSON. No admin access, no API key.

Long link? Make it a branded one-liner.

Shorten your cart permalink to something like go.yourstore.com/bundle and count every click, with bot traffic filtered out, before buyers reach Shopify.

Shorten for free

How It Works

1. Paste the product URL

1. Paste the product URL

Any public Shopify product page. Variants, prices and availability load from the store’s own product JSON.

2. Pick the options

2. Pick the options

Variant, quantity, more products if you want a full cart, a discount code, and where the buyer lands.

3. Copy your link

3. Copy your link

Test it, share it, or shorten it with Flyn for a branded, measurable link.

What a Cart Permalink Actually Does

A normal product link asks the buyer to browse: open the page, pick a variant, set a quantity, tap add to cart, then find the checkout. A cart permalink collapses all of that into the URL itself. Shopify's developer documentation describes them as URLs that take buyers directly to checkout with pre-selected items, and the format is simply the variant ID and quantity in the path: /cart/70881412:1, with more items comma-separated.

That makes them the highest-intent link an ecommerce marketer can share. An abandoned-cart email that rebuilds the cart in one tap, a QR code at an event that sells one specific bundle, an influencer bio link that skips the browsing entirely, all of these are cart permalinks wearing different clothes.

The parameters that are actually documented

ParameterDoesNotes
discount=CODEApplies a discount code on arrivalComma-separate several; a code containing a comma cannot be passed
storefront=trueLands on the cart page instead of checkoutDefault is straight to checkout
payment=shop_payOpens Shop Pay checkoutFor Shop Pay-eligible buyers
note=...Attaches an order noteShows in the order's Notes in admin
ref=...Conversion attribution tagShows in the order's conversion summary
checkout[email]Prefills the buyer's emailDocumented, but treat prefills as best-effort on the newest checkout

The three behaviours to plan around

The link replaces the cart. Our live testing showed a permalink wipes whatever the visitor already had in their cart. For a win-back email that is exactly what you want; for a "add this accessory" upsell it is not, so send those to the product page instead.

Stock is not validated by the link. A permalink for a sold-out variant still loads; the buyer only finds out at checkout. If availability changes fast, use the cart-page landing so buyers see the state of the order before entering payment details.

Passwords and selling plans are hard stops. Shopify documents that permalinks cannot bypass a storefront password and do not work with subscription selling plans. Link subscription products to their product page.

Why pair it with a short link

A finished permalink is long, ugly and unmeasured: the store records the sale but nothing tells you which placement drove the click. Shortening it with Flyn gives you a branded slug plus click analytics with bot traffic filtered out, so an A/B of two placements compares humans, not crawlers. Add a QR code for packaging and events, and UTM parameters on the destination if your analytics lives in GA4.

Why Merchants Use Flyn

Branded short links

go.yourstore.com/bundle instead of a 120-character permalink.

Human-verified clicks

Bot and crawler traffic filtered out, and shown, on every plan.

QR codes built in

Every short link gets a scannable QR for packaging and events.

Safe-link scanning

Destinations are checked so your brand never fronts a bad page.

Frequently Asked Questions

What is a Shopify add-to-cart link?
Shopify calls it a cart permalink: a URL in the form yourstore.com/cart/VARIANT_ID:QUANTITY that pre-loads specific items and takes the buyer straight toward payment. Shopify's own documentation describes cart permalinks as URLs that take buyers directly to checkout with pre-selected items. They are ideal for email campaigns, social bios, QR codes and ads, anywhere you want one click to equal a ready-to-pay cart rather than a browsing session.
Where does a cart permalink send the buyer?
To checkout by default, skipping the cart page entirely. If you would rather land buyers on the cart page with the items added, append storefront=true, which this generator does when you pick "Cart page". There is also payment=shop_pay, which sends eligible buyers straight into Shop Pay checkout. All three behaviours are documented by Shopify, and the right choice depends on whether your buyers expect to review the order first.
How do I find a variant ID without opening the Shopify admin?
Every public Shopify product exposes JSON at yourstore.com/products/HANDLE.js, the documented Ajax Product API. It lists each variant with its ID, title, price and availability. This generator fetches that file for you: paste the product URL, and the variant picker fills itself. No admin access, API key or app install is needed, because the endpoint is part of the public storefront.
Can I add more than one product to the same link?
Yes. Cart permalinks accept comma-separated pairs: /cart/70881412:1,70881382:2 adds one of the first variant and two of the second. This generator lets you fetch several products in turn and add a line for each. One limit worth knowing: a permalink is scoped to a single store, so you cannot combine items from two different shops in one link.
Can a Shopify cart link apply a discount code automatically?
Yes, with the documented discount parameter: /cart/VARIANT:1?discount=SAVE10 applies the code as the buyer arrives, and we verified it carries through to the created checkout. You can pass several codes comma-separated, though whether they stack depends on the store's discount combination settings. One documented restriction: a code that itself contains a comma cannot be passed in a URL.
Does an add-to-cart link replace what is already in the cart?
Yes, and this surprises people: our live testing confirmed a cart permalink replaces the visitor's existing cart contents rather than adding to them. If a shopper had two items in their cart and clicks your permalink for one product, their cart now holds only your product. Shopify does not document this behaviour explicitly, but it reproduces consistently, so plan campaigns accordingly.
Do cart permalinks check stock before adding items?
No. In our testing, a permalink for a sold-out variant still moved toward checkout, with enforcement happening only at or after the checkout renders. So a link you printed on packaging keeps "working" after stock runs out, in the sense that it loads, but the buyer hits a wall later. If stock is volatile, prefer linking with the cart-page option so buyers see availability before payment details.
Do cart permalinks work on a password-protected or draft store?
No. Shopify documents two hard limitations: cart permalinks cannot bypass storefront passwords, and selling plans (subscriptions) do not work with them. If your store is pre-launch behind a password, the link will stop at the password page. For subscription products, link to the product page instead and let the buyer choose the plan there.
Can I prefill the buyer's email or shipping address?
Shopify documents checkout prefill parameters such as checkout[email] and checkout[shipping_address][city]. In practice, community reports suggest address prefill can fail on the newest checkout, so treat prefills as best-effort rather than guaranteed. This generator focuses on the parameters that behave consistently: items, quantities, discount codes, the landing choice and an order note.
Why should I shorten a cart permalink before sharing it?
A permalink with two variants and a discount code easily exceeds 100 characters of IDs and parameters, which is unreadable in a bio, brittle in print, and impossible to say out loud. Shortening it to a branded slug like go.yourstore.com/bundle fixes that, and adds measurement: you see clicks, with bot traffic filtered out, before buyers ever reach Shopify, so you can compare placements. The cart permalink itself records nothing.
Do these links work on a custom domain, or only myshopify.com?
Both. Shopify's help centre says to start with your store domain, and our live tests confirmed permalinks work directly on custom domains, while myshopify.com URLs redirect to the store's primary domain with the cart path preserved. Use whichever domain your buyers know; the custom domain is the better choice for anything public because it keeps your brand in the address.
Is this generator free, and do you store my product data?
Free, no account needed. When you paste a product URL, our server fetches the store's public product JSON once to list the variants, applies rate limits and size caps, and returns the result to your browser. We do not store the product data server-side; your link history lives only in your own browser's localStorage, and you can clear it any time.

Make every cart link measurable

Shorten your permalinks into branded links with human-verified click counts, free to start.