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

# Going Live

> What you and Gomry exchange to connect a supplier, and what to verify before inventory reaches buyers

# Going Live

Connecting a supplier takes about a day of integration work on your side, then a catalog sync that runs unattended. Contact [support@gomry.com](mailto:support@gomry.com) to start.

## Before you build

Answer these first. They decide how much of your inventory can be sold through Gomry, and they are the most common source of late surprises.

| Question | Why it matters |
| - | - |
| **Which delivery formats do you sell, and in what proportion?** | Gomry currently sells `eticket` and `mobile_transfer`. `physical` is enabled per supplier once shipping is set up. Other formats are listed but not sold. |
| **How large is your catalog?** | Sets how long the first sync takes and how you page it. |
| **Do you rate limit, and how?** | A limit applied per application across every endpoint is common and often undocumented. A throttled sync looks exactly like an empty catalog. |
| **Do your orders deduplicate on a reference?** | Decides whether a lost reply can turn into a double purchase. See [Place order](/vendor-api/place-order). |
| **Can you sign webhooks?** | Decides between HMAC signing and an IP allowlist. See [Webhooks](/vendor-api/webhooks). |

<Tip>
  Measure the **whole** catalog, not the first few pages. Delivery-format mix can differ sharply between the start and the end of a catalog, and a sample from one end has misled us in both directions.
</Tip>

## What we exchange

| From Gomry to you | From you to Gomry |
| - | - |
| Your `vendorKey` | The HTTPS base URL of your integration |
| The API key Retail sends in `X-API-Key` | A sandbox or test environment we can buy against |
| A webhook signing secret, if you sign | Webhook source addresses, if you cannot sign |
| | Your rate limits, per endpoint or per application |

Gomry generates every key and secret. **Never pick one yourself**, and never send one back to us over email or chat in plain text.

### Turning on webhook signing

The order matters. Doing the last step first rejects every webhook in between:

1. Gomry generates the signing secret. It has no effect yet.
2. Gomry installs it on Retail.
3. You receive the secret and start signing.
4. Gomry switches your supplier to signed mode.

## Build checklist

<Steps>
  <Step title="Authenticate">
    Every endpoint requires `X-API-Key` and fails closed. A wrong key, a missing key, and `Authorization: Bearer` all answer `401`. See [Authentication and errors](/vendor-api/authentication).
  </Step>

  <Step title="Catalog">
    `GET /api/vendor/v1/catalog` returns real events from your sandbox, pages to the end, and ends with `nextPage: null`. Each page answers within 30 seconds.
  </Step>

  <Step title="Listings">
    `GET /api/vendor/v1/listings` answers within 4.5 seconds, sends `splits` exactly as your system has them, and sets `format` and `productKind` correctly.
  </Step>

  <Step title="Buy on the sandbox">
    Quote, then place an order, then find it with `GET /api/vendor/v1/orders?reference=…`. Replay the same order with the same reference and confirm you return the **existing** order rather than placing a second one.
  </Step>

  <Step title="Delivery">
    Fulfilment moves from `pending` to `ready` (or `shipped`), and credentials return a barcode value, not a link or a PDF.
  </Step>
</Steps>

## Switching on

Once your integration passes the checklist, Gomry sets your base URL and activates your supplier. Activation is the same decision as publishing your inventory: there is no setting that syncs your catalog without selling from it.

The first catalog sync starts on the next 15-minute cycle, with its own share of the time budget so a large catalog cannot hold it up. A catalog of around 100,000 events takes days to sweep the first time. It runs unattended and resumes where it stopped.

## Before inventory reaches buyers

We check these with you:

* **Start times are right.** An event whose timezone could not be resolved is stored with the wrong wall clock. Send `venue.timezone` and an honest `occursAt`. See [Catalog](/vendor-api/catalog).
* **Published formats match purchasable formats.** If a format appears in your listings but your order endpoint refuses it, a buyer sees the offer and the checkout fails. Either support it on orders, or tell us so it is withheld before it is published.
* **Non-admission items are labelled.** Parking and other add-ons carry `productKind`, so they are never sold as a ticket.
