Use Case #3. Thin client cash register

You have a POS working in a browser. Or very simple online POS inside mobile device. And you need a storage for your data and processing for your receipts.

To fetch taxes, categories, products and commodities see Use Case #1. Simple Articles consumer.

Fiscal operations are presented in this table:

JSON
Java
Why?

POST /registrations/
{cashRegisterName}/balance

setBalance()

to withdraw and deposit

GET /version

getThisVersion()

to make sure thin client has the top latest version of articles

GET /registrations/{cashRegister
Name}/version

to make sure this cashier does not get in conflict with another cashier

POST /sales

create(), sample

to make a sale

GET /sales/{identifier}/receipt

to get a receipt

POST /sales/{identifier}/receipt

to confirm the receipt is printed

POST /days/current

to close the day

GET /days

to get days

GET /days/{dayId}/report

to get an X-/Z-report