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

# Sandbox and production

> How the two environments differ in behaviour and data.

## Sandbox environment

**All products are fulfilled in sandbox.** After capture, a sandbox booking moves from `PENDING` to `COMPLETED`, so you can test the full booking lifecycle with any product. The [Fulfilment on Sandbox](https://docs.google.com/spreadsheets/d/1KYpqKTNvp17WV-huEURDxfcqwF2Iz_Cu357QFAZfVco/edit?gid=1429412760#gid=1429412760) sheet lists sample products you can start with.

* Sandbox should be used to validate: booking flow, webhooks, voucher rendering, and status transitions

> [!WARNING]
>
> Sandbox fulfilment is a **dummy fulfilment** and is not as exact as production. It is good enough to test the different flows of your integration, but you should still do some live testing in production before launch. See [Test before launch](https://partner.headout.com/docs/guide/checklist.md#test-before-launch).

### Seatmap iframe

The [Venue iframe](https://partner.headout.com/docs/api-partner/v2/seatmap/iframe.md) needs **no domain whitelisting in sandbox**. Sandbox does not check the `Referer` header and allows embedding from any origin, so you can embed from `localhost` or any development host. Production enforces the allowlist and returns `403` for unregistered domains, so ask the Headout partnerships team to register your production domains before launch.

### Seatmap test products

These are long-running sandbox shows, but not every date has a show. Fetch a current date and slot instead of hardcoding one: use [List availabilities - Seatmap](https://partner.headout.com/docs/api-partner/v2/seatmap/availabilities-by-variant.md) for `SEATMAP` products and [List availabilities - Normal](https://partner.headout.com/docs/api-partner/v2/availabilities/normal-availabilities.md) for `SVG` products.

| Product | `productId` | `variantId` | `inventorySelectionType` |
| - | - | - | - |
| Disney's The Lion King (London) | `3023` | `4700` | `SEATMAP` |
| Les Misérables (London) | `2863` | `4440` | `SEATMAP` |
| Mamma Mia! (London) | `3026` | `4713` | `SEATMAP` |
| Phantom of the Opera (London) | `3031` | `4727` | `SEATMAP` |
| The Mousetrap (London) | `3028` | `4720` | `SEATMAP` |
| Wicked (London) | `3037` | `4746` | `SEATMAP` |
| Palau de la Música Catalana, Gran Gala Flamenco Show (Barcelona) | `5180` | `8935`, `62726`, `62727`, `62729` | `SVG` |

For the full list, call [List products](https://partner.headout.com/docs/api-partner/v2/products/list.md) with a `cityCode` and filter the results client-side by `inventorySelectionType` (it is a response field, not a query parameter).

> [!NOTE]
>
> The sandbox environment has an expected daily downtime of **up to 5 minutes between 2:00 AM and 3:00 AM IST** for database maintenance. API requests during this window may fail.

## Production environment

* Real supplier behavior applies
* Ticket generation follows `hasInstantConfirmation`
* Cancellation and reschedule rules are enforced strictly


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.