> ## Documentation Index
> Fetch the complete documentation index at: https://docs.elasticfunnels.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Shopify Checkout

> Set up Shopify Checkout (cart redirect) as a merchant, assign to a domain, and map products to Shopify variant IDs

This guide explains how to set up Shopify Checkout as a merchant. When a visitor clicks a buy link, they are redirected to your Shopify store's cart and then to Shopify's native checkout. The overall flow matches the generic merchant setup; use this page for Shopify Checkout-specific notes.

<Note>
  **Shopify Checkout** sends customers to your Shopify cart (cart redirect). For draft-order checkout with Shop Pay one-click and bump support, see [Shop Pay](/merchants/shop-pay) instead.
</Note>

## Prerequisites

* A Shopify store with products (and variants, if you use multiple variants)
* Admin access to your Shopify store and to ElasticFunnels

## Step 1: Connect Shopify and enable Shopify Checkouts

1. Go to **Integrations** → **Operations**, find **Shopify**, and connect your store (see [Shopify Order Sync](/integrations/shopify-order-sync) for the full flow)
2. Enable **Shopify Checkouts** so postbacks are received for orders created, updated, or deleted in your store

When you enable **Shopify Checkouts**, a **Shopify Checkouts** merchant is created automatically and linked to the integration. You do not need to create the merchant manually.

## Step 2: Assign merchant to domain

1. Go to **Settings** → **Domains** → **Edit Domain**
2. Select your **Shopify Checkouts** merchant (created in Step 1)
3. Save

## Step 3: Map products

Each product must be linked to a **Shopify variant ID** (a numeric ID from your Shopify store).

1. Go to **Settings** → **Products** → **Edit** the product
2. Open the **Merchant information** tab
3. Find the row for your **Shopify Checkouts** merchant
4. Enter the **Shopify variant ID** (numbers only) for this product
5. Save

### How to find your Shopify variant ID

* **Products with variants:** In Shopify Admin go to **Products** → open the product → **Variants** → click the variant. The URL in your browser will look like `.../variants/36485954240671`. The number after `/variants/` is the variant ID.
* **Products with a single variant:** Open the product in Shopify Admin, add `.json` to the end of the URL, and press Enter. In the JSON, look at the `variants` array and use the `id` of the first (or only) variant.

<Info>
  Every Shopify product has at least one variant. Use the variant ID, not the product ID.
</Info>

## How it works

In your funnel, buy links use your **product code** (the same code you use for other gateways). When a visitor clicks add to cart or a buy link, we look up the **Shopify variant ID** you mapped for that product in **Merchant information** and redirect them to your Shopify store.

* They are redirected to your Shopify store at `/cart/{variantId}:1` (one unit of that variant)
* The click ID is passed as a cart attribute so conversions can be tracked
* From the cart they proceed to Shopify's native checkout

Shopify Checkout does **not** support upsells in the same flow. It is a simple cart redirect. For upsells and one-click Shop Pay, use [Shop Pay](/merchants/shop-pay) instead.

## Links and Funnels

Use `[BUY]`, `[UPSELL]`, and `[DOWNSELL]` tags so links auto-adapt per domain and merchant. Avoid pasting hardcoded Shopify cart URLs.

* See [How to set up a new merchant](/guides/how-to-set-up-a-new-merchant)
* See [Buy Links](/products/buy-links)
* See [Advanced Purchase Links](/products/advanced-purchase-links)

## Postbacks

Orders from your Shopify store (including those that started from a funnel cart link) are reported via the Shopify integration. Ensure **Shopify Checkouts** is enabled in your **Shopify** integration (**Integrations** → **Operations**) so postbacks are received for orders created, updated, or deleted in the store.

## Troubleshooting

* **"Product missing Shopify variant ID"**: In the product's **Merchant information** tab, enter the Shopify variant ID for the Shopify Checkout merchant. Use the steps above to find the variant ID in Shopify Admin.
* **"Shopify Checkout requires a linked Shopify integration"**: Connect Shopify under **Integrations** → **Operations** and ensure the merchant or domain is linked to that integration so the store domain is available.
* **Wrong gateway on checkout**: Verify the domain is assigned to your Shopify Checkout merchant.
* **Link not working**: Confirm the product has the correct Shopify variant ID in **Merchant information** for this merchant.
