---
title: Subscription
description: The Doshii API is based on asynchronous communication. When a request is submitted, the communication with the App at the other end is performed asynchronously. For your POS to be notified of any chan
---

[Skip to content](https://support.doshii.com/developer-support/subscription#main-content)

English

Show submenu for translations

Doshii Connect Pty Ltd

Open main navigation

Close main navigation

- English
  
  Show submenu for translations
- Go to Doshii Connect Pty Ltd

 Go to Doshii Connect Pty Ltd

 Help for Partners

- There are no suggestions because the search field is empty.

1. [Help for Partners](https://support.doshii.com/developer-support?hsLang=en)
2. [Webhooks](https://support.doshii.com/developer-support/webhooks?hsLang=en)

# Subscription

The Doshii API is based on asynchronous communication. When a request is submitted, the communication with the App at the other end is performed asynchronously.

For your POS to be notified of any changes, it needs to establish some callback mechanism. Doshii currently supports two types of communication - **[WebSockets](https://support.doshii.com/developer-support/websockets-pos-partners?hsLang=en)** and Webhooks. 

In this article, we'll cover how webhooks can be used to be notified of Doshii **[events](https://support.doshii.com/developer-support/hc/en-us/articles/13153476463769-doshii-event-index?hsLang=en)**. See the following wikipedia [article](https://en.wikipedia.org/wiki/Webhook) for more information on what a webhook actually is.

To begin, you must first create an endpoint hosted externally to Doshii that will support the following:

- A POST request
- Content-Type of *application/json*
- Can be either HTTP or HTTPS
- Can be protected with some level of authentication
- The endpoint must be reachable from the internet
- Support the payloads described in each of the Doshii events
- Must be capable of responding to a webhook verification check

Once you have an endpoint that is reachable from outside your corporate firewall, you will need to subscribe that webhook with Doshii and associate it to the relevant Doshii **[events](https://support.doshii.com/developer-support/hc/en-us/articles/13153476463769-doshii-event-index?hsLang=en)** that you are interested in receiving. See the Doshii API on how to [**create a webhook subscription**](https://support.doshii.com/developer-support/create-delete-webhook?hsLang=en).

 Authentication

The authentication details for a webhook have been broken up into the following categories to allow for flexibility in how the credentials are passed to your webhook implementation.   
There are 2 optional string properties that can be submitted during a webhook subscription, *authenticationKey* and *authenticationToken*. Depending on which properties are submitted will depend on how Doshii passes the credentials through in the *Authorization* header.

The logic is as follows:

1. If both *authenticationKey* and *authenticationToken* are provided, Doshii will send a Basic Auth request with a base64 encoded string of the concatenation of the two properties separated by a colon: 
   
   ```
   'Basic base64(authenticationKey:authenticationToken)'
   ```
2. If only *authenticationToken* is provided, Doshii will send a Basic Auth request with a base64 encoded string of the *authenticationToken*: 
   
   ```
   'Basic base64(authenticationToken)'
   ```
3. If only *authenticationKey* is provided, Doshii will treat that as the raw value for the *Authorization* header
4. If nothing is provided in either property, no *Authorization* header will be sent

 Webhook Verification

When a webhook is submitted to Doshii, the webhook will be verified before it is accepted. This process requires Doshii to be able to access the webhook endpoint using the URL and credentials supplied as part of the request. In addition, it will send a query parameter called *verify* with a unique hashed ID.   
For the webhook to be verified, the webhook must respond with that hashed ID and a status code of 200. 

### Example

If a *webhookUrl* of *https://some.external.site/doshii/webhook* is submitted, Doshii will immediately call the following endpoint

```
https://some.external.site/doshii/webhook?verify=eaae16a0-2100-4dc0-9223-62bdcc222345
```

Doshii will expect to receive the following response:

```
200 OK
eaae16a0-2100-4dc0-9223-62bdcc222345
```

Once the webhook has been verified it will immediately become active and any events associated to that webhook that are broadcast by Doshii will cause the webhook to be invoked with the event payload.

- [API concepts](https://support.doshii.com/developer-support/api-concepts?hsLang=en)
- [Members](https://support.doshii.com/developer-support/members?hsLang=en)
- [Model](https://support.doshii.com/developer-support/model?hsLang=en)
- [FAQ - Developers](https://support.doshii.com/developer-support/faq-developers?hsLang=en)
- [Resources](https://support.doshii.com/developer-support/resources?hsLang=en)
- [Orders](https://support.doshii.com/developer-support/orders?hsLang=en)
- [Rewards](https://support.doshii.com/developer-support/rewards?hsLang=en)
- [Check-ins](https://support.doshii.com/developer-support/check-ins?hsLang=en)
- [Getting started - App partners](https://support.doshii.com/developer-support/getting-started-app-partners?hsLang=en)
- [Employees](https://support.doshii.com/developer-support/employees?hsLang=en)
- [Getting started - Doshii Dashboard](https://support.doshii.com/developer-support/getting-started-doshii-dashboard?hsLang=en)
- [Quick start for developers](https://support.doshii.com/developer-support/quick-start-for-developers?hsLang=en)
- [Onboarding](https://support.doshii.com/developer-support/onboarding?hsLang=en)
- [Location](https://support.doshii.com/developer-support/location?hsLang=en)
- [All App Partners Event](https://support.doshii.com/developer-support/all-app-partners-event?hsLang=en)
- [Menus](https://support.doshii.com/developer-support/menus?hsLang=en)
- [Loyalty / Checkins](https://support.doshii.com/developer-support/loyalty-checkins?hsLang=en)
- [WebSocket - App partners](https://support.doshii.com/developer-support/websocket-app-partners?hsLang=en)
- [All POS vendor events](https://support.doshii.com/developer-support/all-pos-vendor-events?hsLang=en)
- [Loyalty / Gift Cards](https://support.doshii.com/developer-support/loyalty-gift-cards?hsLang=en)
- [Devices](https://support.doshii.com/developer-support/devices?hsLang=en)
- [Tables](https://support.doshii.com/developer-support/tables?hsLang=en)
- [Workflows](https://support.doshii.com/developer-support/workflows?hsLang=en)
- [FAQ - Doshii Dashboard](https://support.doshii.com/developer-support/faq-doshii-dashboard?hsLang=en)
- [Bookings](https://support.doshii.com/developer-support/bookings?hsLang=en)
- [Transactions](https://support.doshii.com/developer-support/transactions?hsLang=en)
- [Webhooks](https://support.doshii.com/developer-support/webhooks?hsLang=en#main-content)

    - [App Partners](https://support.doshii.com/developer-support/webhooks?hsLang=en#app-partners)
    - [POS Vendors](https://support.doshii.com/developer-support/webhooks?hsLang=en#pos-vendors)
- [App Partner Guide](https://support.doshii.com/developer-support/app-partner-guide?hsLang=en)
- [Authentication](https://support.doshii.com/developer-support/authentication?hsLang=en)
- [Getting started - POS vendors](https://support.doshii.com/developer-support/getting-started-pos-vendors?hsLang=en)
- [Ordering](https://support.doshii.com/developer-support/ordering?hsLang=en)
- [Reservations](https://support.doshii.com/developer-support/reservations?hsLang=en)
- [Pilot](https://support.doshii.com/developer-support/pilot?hsLang=en)
- [Bulk data](https://support.doshii.com/developer-support/bulk-data?hsLang=en)
- [Playbooks](https://support.doshii.com/developer-support/playbooks?hsLang=en)
- [Rejection codes](https://support.doshii.com/developer-support/rejection-codes?hsLang=en)
- [Getting started](https://support.doshii.com/developer-support/getting-started?hsLang=en)
- [WebSocket - POS partners](https://support.doshii.com/developer-support/websocket-pos-partners?hsLang=en)
- [Events - App partners](https://support.doshii.com/developer-support/events-app-partners?hsLang=en)
- [Service channels](https://support.doshii.com/developer-support/service-channels?hsLang=en)
- [Events](https://support.doshii.com/developer-support/events?hsLang=en)
- [Concepts](https://support.doshii.com/developer-support/concepts?hsLang=en)
- [Apps](https://support.doshii.com/developer-support/apps?hsLang=en)

# Doshii Connect Pty Ltd

Doshii Connect Pty Ltd Help Center

Copyright © 2026, Doshii Connect Pty Ltd