↑↓select↵openescclose

HPOS 2 API

Horeca24 Partner API v1

Send orders into a restaurant's till and receive their status through signed webhooks.

The Partner API connects a delivery or ordering platform (the partner) to a restaurant's Horeca24 till. You send orders in. The restaurant handles them in its till, and you hear back through signed webhooks. The menu comes to you as a file under a stable URL.

Every endpoint, every webhook event and the menu file format is documented in the API reference tab, generated from the OpenAPI 3.1 specification.

How it works

How the Partner API connects you to the restaurant's till
How the Partner API connects you to the restaurant's till
flowchart TB
    P["<b>Partner</b><br/>your platform"]
    A["<b>Partner API</b><br/>ping · webhook · orders<br/>cancel · delivery"]
    T["<b>Restaurant till</b><br/>Horeca24"]
    M[("<b>Menu file</b><br/>stable URL")]

    P -->|"calls with your API key"| A
    A -->|"signed webhook events"| P
    A <-->|"orders ring in,<br/>the restaurant decides"| T
    T -.->|"menu sync writes"| M
    P -->|"GET, no key"| M
How the Partner API connects you to the restaurant's till
  • One connection is one restaurant and one partner channel. The restaurant creates the connection in its till and gives you two things: the base URL and an API key. The key belongs to that one connection. There is no partner-level account and no link step. If you serve many restaurants, you hold one key per restaurant.
  • We push the menu. When the restaurant syncs its menu or switches an item on or off, we write the menu file and send you menu.updated with the file's URL and hash. The URL stays the same for the connection. Download the file from there whenever you need it.
  • Your prices count. Each order line carries its own name, gross price and tax rate, and the till takes them as you sent them. We check that your sums add up. We do not refuse a line because of its price, or because the restaurant switched the item off after your last copy of the menu.
  • The restaurant decides. Acceptance (with a pickup time), rejection, ready, completion and cancellation by the restaurant reach you as order.* webhook events. You can cancel an order, and if your own courier delivers, you can send courier updates.

The API is for server-to-server calls only. It is not made for browsers.

Get started

Core concepts

Events

Help