Qerko aspires to be an open platform for comfortable payments right at the table. Our main goal is simplicity for all of the participating parties. Therefore we use standardized technologies to make the implementation as easy as possible.
Video below showaceses the process.
The main function of Qerko is facilitating payments through the so-called fast checkout process - it enables the customer to pay their bill in the restaurant using the Qerko app without having to tag down the waiter, split the bill etc. In the app, the customer scans the QR code, picks their own meals and drinks from the bill, pays their part and leaves the restaurant.
The process is enabled by the communication between the POS system and Qerko servers. For us to show any useful information in the app, we need to know what’s going on in the restaurant, so we simply ask for this information from the POS system.
First of all, tables need to be paired up with their respective QR codes for the app to be able to show the appropriate bills to the customer. To do that, Qerko requests the table list using the getTableList method, which in turn appears in the Restaurant admin website, where the QR codes can be paired manually.
After the QR codes are paired, the customer is able to scan them with the app, which looks up the requested table and attempts to show its contents, which are requested from the POS system using the getTableContents method. The available bills returned in the response are then displayed in the app for the customer to choose.
When the customer picks a bill, a method is called to get the contents of the single requested bill, which can in turn be paid in the app by the customer. When the customer decides to pay using the app, Qerko validates the payment on its own as well as in the payment gateway and triggers a payment in the POS system using the payment method. If the POS system accepts the payment, Qerko requests the receipt details and confirms the payment using the paymentProcessed method. In the last step the payment is confirmed using the paymentClosed method.