> For the complete documentation index, see [llms.txt](https://docs.ventrata.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ventrata.com/getting-started/certification/operator-connection-backend.md).

# Operator Connection (Backend)

Requirements and certification steps for systems we connect out to, so a Ventrata-powered Supplier can resell inventory you hold.

*Last updated: October 26, 2026*

{% hint style="info" %}
**Overview**

We connect out to your system so a Ventrata-powered Supplier can resell inventory you hold. You stay on your own system: every booking is created directly in it through your API, so you don't need a Ventrata login.

**Required:** an OCTO-compliant API covering OCTO Core. Pricing is strongly recommended.
{% endhint %}

***

## 1. What we require

| Capability                                                                                                                              | Level                | Notes                                                                                           |
| --------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | ----------------------------------------------------------------------------------------------- |
| OCTO Core: Get Supplier, Get Products, Get Product, Availability Check, Booking Reservation, Booking Confirmation, Booking Cancellation | **Required**         | [OCTO](https://docs.octo.travel/)-compliant. A non-OCTO API only by exception agreed in writing |
| Response times                                                                                                                          | **Required**         | Within the longest accepted times in section 2. Aim for the desired times                       |
| Pricing (`octo/pricing`)                                                                                                                | Strongly recommended | Net and retail prices                                                                           |
| Availability Calendar, Booking Update, Extend Reservation, Get Booking, Get Bookings                                                    | Strongly recommended | The rest of OCTO Core                                                                           |
| Other OCTO capabilities                                                                                                                 | Not used             | No need to build them for us                                                                    |

**Ground rules**

* Save the `resellerReference` we send and return it on every booking. Return your own `supplierReference` by confirmation at the latest.
* Return a scannable code on confirmation, such as a QR code or barcode. We don't support other delivery formats from Operator Backends yet.
* Return accurate availability, with the correct UTC offset for each date.
* Reject invalid requests with the standard OCTO error and HTTP 400. Ignore fields you don't use.
* Tell <connectivity@ventrata.com> within 24 hours of any issue affecting bookings, availability or tickets.

***

## 2. Response times

| Request                                            | Desired   | Longest accepted |
| -------------------------------------------------- | --------- | ---------------- |
| Availability calendar, under 30 days, with pricing | under 2 s | 10 s             |
| Availability check, 1–7 days, with pricing         | under 1 s | 10 s             |
| Availability check, 8–30 days, with pricing        | under 3 s | 10 s             |
| Booking reservation                                | under 1 s | 10 s             |
| Booking confirmation                               | under 1 s | 10 s             |
| Booking update                                     | under 2 s | 10 s             |
| Booking cancellation                               | under 1 s | 10 s             |
| Extend reservation                                 | under 1 s | 10 s             |
| Get supplier                                       | under 2 s | 60 s             |
| Get product                                        | under 2 s | 60 s             |
| Get products                                       | under 5 s | 60 s             |
| Get booking                                        | under 2 s | 60 s             |
| Get bookings                                       | under 5 s | 60 s             |

***

## 3. How to get certified

{% stepper %}
{% step %}

### Self-certify with OCTO

Pass Supplier Certification at [certify.octo.travel](https://certify.octo.travel/) against your staging environment.
{% endstep %}

{% step %}

### Email us

Send <connectivity@ventrata.com>, or post in your shared Slack channel, the details in section 4 below.
{% endstep %}

{% step %}

### We test your API

We send you anything to fix, and retest.
{% endstep %}

{% step %}

### We set you up

We add you in Ventrata and publish your help center article. Suppliers then connect with an API key from you.
{% endstep %}
{% endstepper %}

***

## 4. What to send us

Copy, fill in, and send. Share credentials separately through a one-time secret link, never in the email.

```
Subject: Certification request – [Company name], Operator Connection (Backend)

certify.octo.travel certificate link:
Staging base URL:
Production base URL:
Test products (enough capacity for a full test run):
Who Suppliers contact to get a production API key:

For our listing
Company name:
Website:
Short description:
Logo (800x320) and icon (400x400): attached
```

***

## What else applies to you

{% content-ref url="/pages/O0TC8UKCmgwQpG0q09dI" %}
[Partner Terms](/partner-terms.md)
{% endcontent-ref %}

{% content-ref url="/pages/3ZEiPP8fbKyeidXqivwB" %}
[Operator Connection (Backend) Terms](/operator-connection-backend-terms.md)
{% endcontent-ref %}

{% hint style="success" %}
**Questions?** Email <connectivity@ventrata.com>. We're happy to help.
{% endhint %}
