Developers





  • Integration Overview
    • Integration Overview
  • API
    • About
    • API Setup
    • API Device
  • Authentication
    • Basic
  • Webhooks
    • Webhooks
  • Build an App
    • Introduction
    • Till and BO Apps
    • Dashboard Widgets
    • App Settings
    • Javascript Library
  • App Store
    • Introduction
    • Sign Up
    • Build
    • Submit
    • Approval
    • Launch
Developers
  • Home
  • Setup
  • Documentation
    • V2
    • V4
  • Examples
  • Support
  • Search

What Is A Webhook?


A Webhook is a HTTP notification which is set up to notify a third-party application whenever a specific event occurs. Webhooks allow any application(s) to react to events occurring in a centralised cloud-based application. For example, this means that you could set up Webhooks so that whenever a booking is created, updated or deleted in Epos Now, your Calendar application could automatically reflect this.

Getting Started


EposNow Webhooks are currently in Beta and initially expose only a few events which can trigger a Webhook to be sent. Webhooks on their own will not do anything - you must have some kind of application listening for, and reacting to, them. For testing purposes, a site like http://requestb.in may be useful to forward your Webhooks to, this will allow you to view the data which is sent by our Webhooks without the need for you to implement a full listener service.

Create an API Device


You must create a device of type ‘API’ in order to send Webhooks. Each device allows you to set a base API URL to which your Webhooks will be sent. If you wish to send your Webhooks to multiple domains, you will need to create multiple API devices.

When creating the device, you must also select an API Version & MIME Type.

  • The API Version is the version of the data models used. Unless you explicitly require an old data model, you should select the latest version.
  • The MIME Type is the data format used for your Webhook payloads such as JSON or XML.

After creating a device, you will be taken to the Web Integrations -> API -> REST API page. At the bottom of this page, you can see and manage all of your API devices.

From here you can select your device’s Webhooks, Advanced and Access Credentials buttons.

  • Advanced - allows you to change the device settings, and add Basic Authentication credentials (API Secret & API Key), if your end-point requires it.
  • WebHooks - takes you to the list of Webhook triggers for this device.
  • Access Credentials - allows you to regenerate the Epos Now access credentials for this device. Not currently used for Webhooks.

Push the Webhooks button - you will be taken to a list of your Webhooks which is initially empty. You can later edit or delete your existing Webhooks from this page. Push the Add Webhook Trigger button to create a new Webhook trigger.

The ‘Add Webhook Trigger’ page allows you to specify an event which you wish to trigger the firing of a Webhook.

The Route Path is the path, relative to the device’s API URL, to which the Webhook should be sent. As it is a relative path, it must begin with a “/”. The Event is the type of event which should trigger the Webhook to be fired.

Once a Webhook has been added to your API device, any event within the Epos Now software that is relevant to that Webhook will trigger the automatic sending of a Webhook to your defined end point. The end point is defined by the API Device’s API URL and the Webhook triggers Route Path.

Checking Sent Webhooks


If you wish to view a Queue of your Webhooks, this can be done from the Backoffice by navigating to Web Integrations -> API -> Webhook Queue

This shows a list of sent Webhooks. You can click the Details button on any entry to see detailed information about the data which was sent. You may also choose to resend any failed Webhooks.

Parsing Webhooks


WebHooks are sent to your end-point as HTTP POST requests. At your end-point, there are some HTTP headers which you should parse in order to understand the data. These are:

  • Content-Type & Content-Length: Standard Headers, which you may need to parse to determine the format and length of the data.
  • Epos-Object: The name of the data object which has been altered. E.g. If the event was “Update Booking”, this will be “Booking”.
  • Epos-Action: The name of the action which was performed on the data object. E.g. “Update”.

The content of the message is then formatted as specified in the Content-Type header, dependant on the type you set in your Backoffice. So be prepared to deserialize data in that format, for example JSON.

Typically, you would switch on the Epos-Object and Epos-Action headers, and implement your logic for each case.


EposNow
About Us
Contact Us
Documentation
API V2
API V4
Example Apps
Specials Board






© 2025 - Epos Now Ltd, Developers