# Set up external checkout

> Hand the Endless Aisle bag over to your own web shop: the kiosk shows a QR code that opens your checkout with the products already in the cart.

With **External** checkout, the kiosk shows a QR code. The customer scans it and finishes the purchase in your own web shop on their phone. The order is handled entirely by your web shop: the kiosk doesn't know whether the customer bought anything.

## How the bag is passed to your web shop

The QR code opens your **Checkout URL** with the bag contents added as a `cart` parameter, followed by any extra parameters you set:

```text
https://shop.example.com/checkout?cart=[{"i":"<product ID>","q":<quantity>}]&utm_source=kiosk
```

- `i` is the product variant's ID in PhyGrid, and `q` is the quantity
- Your web shop must read the `cart` parameter and fill the customer's cart with these products. Ask your web shop developer to set this up, using the same product IDs as in PhyGrid

## How to set up external checkout

1. Open the Endless Aisle installation and go to the **Settings** tab
2. Expand **Features** and turn on **Bag**
3. Set **Checkout method** to **External**
4. Enter the **Checkout URL** of your web shop's checkout or cart page
5. Enter a **Checkout Label**: the heading above the QR code
6. Optionally, add **Additional Checkout Parameters** as key and value pairs, for example `utm_source` and `kiosk` to track kiosk sales
7. Optionally, turn on **Customize Options Label** to change the default "Home Delivery" heading and the text under it
8. Click **Save all changes**

## How to test external checkout

1. On the kiosk, add two different products to the bag and tap **Continue**
2. Scan the QR code with your phone
3. Check that your web shop opens with both products in the cart, in the right quantities

The QR code stays on screen for 90 seconds. After that, or when the customer closes it, the kiosk empties the bag and returns to the idle screen.
