In commencing your integration with the Doshii POS API, the follow sequence should be followed:
1. Implement the Onboarding integration. Within Doshii, every Venue Location must belong to an Organisation.
- Create the Organisation that the venue belongs to, if it doesn't already exist within Doshii. This will generate the Doshii Hashed Organisation ID, which can be used in subsequent calls to create locations.
- Create the Location for the venue. This will generate for you the Doshii Location Token, used for JWT authentication, and Hashed LocationID. You can also create the Location by using the `location` object during Organisation creation.
- When creating the Location, ensure to include the location classification, address, postcode, city and state.
- If your POS supports venue operational hours you may optionally assign operating hours, either as part of the Create the Location endpoint, or via the Location Operating Hours endpoint.
- If your POS supports multiple POS terminals within a venue location you may optionally register these using the Create POS Terminal endpoint.
2. Doshii uses WebSockets to maintain notifications between POS and Partner Apps. Each websocket connection represents a venue location. After creating a location with Doshii, create the WebSocket connection, and commence sending heartbeats to Doshii. This is how we monitor the connectivity and health of the POS system at the location.
3. Once a location has been created, and a WebSocket connection is established, Doshii also requires menu data from the POS, in order to facilitate certain Partner App channels. Synchronise the menu using the Create Menu endpoint.
Additionally, any physical tables at the venue location that are defined within the POS should also be created within Doshii. You can create tables using the Create Table endpoint.