Pay at table allows the pos and the app partner share the responsibility of ordering and accepting the payment from the customer. In order for Pay-At-Table to be functioning correctly, the App and POS need to be subscribed to the Sales, Ordering and Table API.
Table API allows to share information about existing tables and checking if they have any opened (not paid) sales attached to them.
Sales API allows to share information about payment status, including partial payments.
Ordering API has to be used by the app to place any food orders for the table - Sales API cannot be used for this purpose.
The sequence diagram below depicts this flow:

The sequence diagram below depicts this flow:

The sequence diagram below depicts this flow:

The sequence diagram below depicts this flow:
