I wrote it as an answer to a question Cash 2 tills seperately but later I decided to move it to a tutorial topic to increase visibility. This tutorial is about tracking 2 till cash accounts separately and consolidating them to a main cash account on shifts.
If you need to know a total of “something” it will be a good idea to focus on accounting system. Now I’ll try to implement my idea by using accounting features and add step by step instructions. Please keep in mind I’m just trying to show you how certain SambaPOS features works. This is not the only possible solution. Since every business needs are different it will be better to try to understand how it works and implement your own solution.
While preparing this tutorial I made few changes to map entity screens to terminals. Please download latest version (4.1.36 or later) to test sample database.
I’ll start by creating two terminals.
I’ll create two additional Cash accounts.
First one for Till 1
… and the other one
I’ll create two payment types for both accounts.
I’ve labeled is as Cash 1
so I’ll know Till 1 settled that.
I’ll also map that payment type to Till 1 terminal
I’ll clone new payment type from Cash 1, name it as Cash 2, set account and map it to till 2 terminal.
I’ll also change Cash
payment template mapping to Server
terminal so users won’t see two Cash buttons.
I’ll also Sort payment types to display cash buttons on top.
I’ll go in front of both terminals and set their Terminal
setting.
This is how Till 1 terminal’s local settings should appear.
I’ll also do the same for Till 2
Now Payment Screen for Till 1 should appear like this.
… and Till 2 should appear something like this.
That means Cash amount will be stored under related accounts.
Now we need to merge till accounts on a consolidated account on shift.
I’ll create a new account type and a Main Cash
account. You can name these as your business needs. These account types should be different than Payment Accounts
First I’ll create the account type
… and the account.
On shift we’ll transfer till cash to Main Cash
account. So we need to create an account transaction type.
This transaction will transfer amount from till to main cash. Since we have multiple till accounts we’ll leave default source account empty. We’ll set it later.
I’ll create a Account Transaction Document type to create a transaction document for shift.
I’ll create a rule to automatically display transaction documents so no mapping is needed. I’ve configured Name, Account Type and Document Type.
We don’t want users to access accounting screen so I’ll create a new department to create a custom screen for users. They’ll click on Shift
button to complete shift operation.
I’ll create two entity screens for till 1 and till 2.
I have to assign a Ticket type and View Mode will be Custom
.
From Entity List
screen I’ll choose Entity Type
as Customers. Selected Entity Type is not important but I have to select one to enable this screen.
I’ll map this screen to Till 1
terminal.
I’ll customize entity screen to display an Automation Command button.
Now I’ll configure what will happen when I click Shift
Button. First I’ll create a new Automation Command
I’ll create a new Action to Display Shift Document
for Till 1
… and create a rule to execute this action (display shift document) when we click Shift
Button.
Finally I’ll map Entity Screen Button to Automation Command.
So When I click Shift
Button Shift Till1
command will execute and Shift Till 1 Rule
will start Shift Till 1
action to display transaction document.
To keep this tutorial short I’ll skip operations for Till 2. Briefly you need to do these:
- Clone
Shift Till1
automation command and createShift Till2
. - Clone
Shift Till 1
Action and createShift Till 2
action. Set Account Name toCash Till 2
. Correct Description - Clone
Shift Till 1
Rule and change it to handleShift Till2
command. It should executeShift Till2
action. - Clone
Till 1 Shift
Entity screen, change configuration for Till 2 and customize button to executeShift Till2
command.
Finally change All Tables, Customers and other possible Entity Screens mappings not to display for Shift
department. This is how I configured my Entity Screens.
To test terminals you can go to Local Settings
, change terminal (eg. Till1) , log off and test how it works for selected terminal.
Now I’ll test Till 1
I’ve cleared existing transactions for testing.
Till 1 settles 22.25.
Cash Till 1 displays 22.25.
User switches to Shift
department and clicks Shift
button.
He lefts $2.25 in cash and receives $20
This receipt automatically prints.
Next user settles 9.75
We should have $12 in Till 1 cash. (9.75 + 2.25)
User shifts with $12
This is what gets printed.
This printout displays only active work period transactions so when I restart work period it will list transactions from day start.
I’m skipping details about automatic printing and closing tills automatically when work period ends. You can find implementation details in sample sdf file.
Please feel free to ask questions.