Projects:Drawer Status Detection/Functional Specification
Contents |
Drawer Status Detection
Overview
The purpose of this project is to have the ability to detect the status of the cash drawer (Open/Close).
Scope
- Prevent the user to continue its labour if the drawer is opened.
- Set and alarm to notify the user that the drawer is still opened.
Functional Requirements
Definition
The drawer needs to be a type of drawer that sends its status: Whether it is opened or closed
There are five ways to open the drawer:
- Cash Up
- Cash Management
- Open Till
- Menu Button
- Closing an order
The top three will have their toolbar buttons disabled if the drawer is opened, if you click them an error will be raised. They will be enabled when the user closes the cash drawer.
The last two will raise a popup that prevent the user to continue if the drawer is still opened. The popup will disappear once the drawer gets closed.
User stories
Story 1:
- François, the WebPOS user, is opening the till.
- He clicks on Open Drawer button and the drawer gets opened.
- He finishes the initial count and clicks Done.
- As the drawer is opened an error will raise on the top right of the screen warning that the drawer must be closed to complete the initial count.
- François closes the drawer and clicks Done again.
- The till is now opened.
Story 2:
- François, the WebPOS user, is finishing a sale.
- The customer gives him 20$ while the total amount is 17'5$.
- 2.5$ change is shown a the top.
- François clicks Done button.
- The drawer is opened, the ticket is printed and a popup is risen notifying him that the drawer is opened and that he need to return 2.5$.
- François deposits the 20$, picks the change and closes the drawer.
- The popup disappears.
Story 3:
- François, the WebPOS user, clicks on Open drawer button from the menu.
- The drawer gets opened and a popup rises.
- He waits too much time and WebPOS raise an alarm.
- François closes the drawer.
- The popup disappears and the alarm stops.
Configuration
Allow detection
A new preference has been created to allow this new functionality. If Web POS Close Drawer Before Continue preference is enabled WebPOS will detect the status of the drawer (open/close) and the user will be force to close the drawer before continue its labor.
Allow alarm
A preference needs to be configured by setting a numeric value in milliseconds. When the drawer gets open and after the value previously inserted an alarm will begin to sound. If there are no value or it is 'N', no alarm will rise.
Web POS Time Allowed Drawer Sales is configured for the events of opening the drawer from sales or menu.
Web POS Time Allowed Drawer Count is configured for the event of opening the cash drawer from Cash Up, Cash Management or Initial Count.
Hardware url
In order to use this functionality Hardware url MUST be configured properly on POS Terminal window.
Status Checker
Every time the cash drawer gets opened WebPOS begins the detection of its status and it will stop once the drawer gets closed. There are 2 cases:
- Detection on load, on click "Open Drawer" button and on payments
- Detection Cash up, Cash management and Initial count
On the first one a popup will rise to prevent the user to continue its labor and the second one will only disable several buttons.
Popup
The popup will show only if the drawer gets opened. There are different cases:
Load
When WebPOS gets loaded it will check the status of the drawer. If it is closed it will be transparent to the user but if it is opened the popup will rise. It will ask to close the drawer.
Open Drawer button
On click the popup will rise, it will ask to close the drawer.
Payments
There are several cases on payments (the popup will only show if the payment method is cash or it has checked Allow open drawer):
- Exact amount paid
The popup will rise on click Done or Open and it will say that the exact amount has been paid.
- Change
The popup will rise on click Done or Open and it will show the change needed.
- Return
The popup will rise on click Done or Open and it will show the return needed.
- Overpayment
The popup will rise once Ok gets clicked on Overpayment popup and it will show the change needed.
- Layaway
The popup will rise on click Done or Open and it will show the change needed.
- Pay open tickets
The popup will rise on click Done or Open and it will say that the exact amount has been paid.