Skip to main content

Flow diagrams

Pay at Table integrations are currently standalone from Pay at Counter and Online payments. This is because the current version of the Tables API uses an asynchronous WebSocket protocol for its messaging.

The following diagram demonstrates an example payment flow that Dojo terminals could use to interact with your EPOS. Each SUB operation describes a message that Dojo sends to a connected EPOS. In response, each PUB operation describes the message that the EPOS sends back.

Check out the other flow diagrams to get more detailed information on which logic to apply for each message. There is one diagram for each Tables API operation:

  • GetBillItems - retrieves information about the bill items attached to a session.
  • GetFullBill - get a full bill including all charges, items, taxes, and service charges.
  • ListBillItems - provides a list of bills for a specified session. Multiple bills can be attached to a single session.
  • GetSession - requests information about a single session, either currently active or historical.
  • ListSessions - requests a list of multiple sessions.
  • LockSession - locks a session in anticipation of a payment being processed against it. Locking prevents double-spends.
  • GetTable - requests information about a single table.
  • ListTables - requests a filtered list of tables.
  • RecordPayment - confirms to the EPOS that a payment (full or partial) has been processed.