Shifts and cash
A shift is one stretch of trading on one register, from counting the float to counting the drawer. Every sale, payment, refund and cash movement belongs to a shift, so at closing time the till can tell you what should be in the drawer.
Before you begin
- A paired tablet. See Registers and devices.
- A person serving who has Sell at the till. Opening and closing a shift need nothing more.
Open a shift
The till asks for one before anything can be sold.
- Count the cash in the drawer.
- Enter it as the Float. Enter 0 if the drawer starts empty.
- Press Open shift.
A register can have one shift open at a time. This is enforced in the database, so two tablets pressing the button together leave one shift open, not two. A second tablet on the same register joins the shift that is already open.
Put cash in or take it out
When cash goes into the drawer or comes out for a reason other than a sale, record it. Open Shift from the menu and press Cash in or Cash out.
- Enter the amount.
- Type a reason or tap one. For cash in they are Float top-up and Change from the bank. For cash out they are Bank deposit, Petty cash and Paid a supplier. A reason is required.
- Press Put in or Take out.
Each movement is saved with who did it and when. It shows on the X and Z reports and counts in the expected cash. Pressing the button twice, or a retry after a dropped connection, records the movement once. A movement made after the shift has closed is refused.
The X report
The X report shows the shift so far. Run it as often as you like. It changes nothing.
Open Shift from the menu to see it on screen, or press Print X report for an 80 mm printout. It has the same sections as the Z report below.
Close the shift
- Open Shift and press Close shift.
- Count the drawer. Count it by notes and coins, or switch to One total.
- Add a note if you like, and confirm.
The till asks for the count before it shows what the drawer should hold, so nobody counts towards a target.
Counting by notes and coins lists the denominations of the store's currency. US dollars, euros, pounds, Swiss francs, Canadian dollars and Australian dollars each get their own notes and coins. Any other currency counts as one total. The coin-by-coin count is kept on the Z report.
When the shift closes the till shows The drawer balances, The drawer is short or The drawer is over, with Counted 120.00, expected 124.00, and freezes the Z report. Print Z report prints it.
Closing doesn't wait for card refunds. A refund to a card can sit at the payment provider for days, and the drawer isn't touched by it, because cash and store credit refunds are done at once. The Z report lists those refunds under Card refunds still waiting, with how many there are and their total, and each one counts in the period reports once the provider confirms it.
What stops a shift from closing
The till names the order when it refuses, as Order #1042 or Orders #1042, #1043, so you know where to look.
| Why | What the till says | What to do |
|---|---|---|
| A sale with items on it is open and not parked | A sale is still open on this register. Finish it, park it or void it first. | Finish it, park it or void it. |
| A sale rung up on this shift still owes money, or a card payment for it, or for an earlier order the shift took money for, is still on the reader | Order #… still owes money or has a card payment on the reader. Finish paying it before closing the shift. | Finish paying it, or settle the card payment. |
| A payment or a refund on this shift is still going through | Order #… has a payment or refund still going through. Try again in a moment. | Wait a moment and close again. |
| A counter order was completed on this register but isn't on the shift | Order #… was charged on this register but is not on the shift. | See below. |
| It was closed already | This shift has already been closed. | Nothing. Another tablet closed it. |
| Something else is happening on the register | Something else is going through on this register. Try again in a moment. | Wait a moment and close again. |
An earlier order that is only part paid doesn't stop the close. It was owed before the shift opened and may go on being owed after it.
A payment or refund that is still going through for longer than any request can take (three minutes) is retired by the close. The request it belonged to can write nothing more, so it can never land on a closed shift.
A counter order that is not on the shift is rare. It happens when a sale was completed but the till never recorded it, for example because a connection died at the wrong moment. The till's charge, sent again, puts the order on the shift that was open when it completed and credits it to whoever completed it. The till does this by itself when it retries a charge it wasn't sure about. If that shift has closed since, the till says the order can't be put on a shift now, and you can sort it out from the order in the admin.
Parked sales are left alone and counted on the report as still parked.
Expected cash
The till works out what should be in the drawer like this:
- the float
- plus the cash payments taken on the shift, on its own sales and on earlier orders, counting the amount that paid for the sale and never the amount handed over, because the change went back out of the same drawer
- minus the cash refunds the till gave on the shift. A refund given from the order screen in the admin is on no shift's drawer
- plus cash in
- minus cash out
Cash rounding is already inside the cash payments, so nothing extra is added for it.
For example, a float of 100.00, cash taken of 155.20 (a customer handed over 200.00 and got 44.80 back), cash refunds of 131.20, 20.00 put in and 10.00 taken out gives 100.00 + 155.20 − 131.20 + 20.00 − 10.00 = 134.00. If the drawer holds 130.00, the difference is −4.00 and the drawer is short.
A shift's sums assume one currency, the shift's own.
The Z report
The Z report is the X report frozen at closing. It carries:
- the number of sales and their total
- Payments on earlier orders: money the shift took for orders it didn't sell, such as a booking's balance, with the order numbers. It isn't a sale, so the sales count and total leave it out, but it is in the payment totals and the drawer, so the two lines add up to what was taken
- totals by payment type: cash, card by payment provider, store credit, gift card, pay link and paid online
- refunds by payment type
- Card refunds still waiting: the count, the total and the orders
- discounts, with discount codes, automatic sales and staff discounts on separate lines
- tax by rate
- totals by staff member
- sales voided and sales still parked
- the cash drawer: float, cash taken, cash refunds, cash in, cash out, expected, counted and the difference
- every cash movement with its reason, who made it and when
- your closing note
Once closed, it never changes, even if prices or settings change later. The card refunds it lists as waiting stay listed, even after the provider confirms them. The period report picks them up then.
The owner's message
When a shift closes with a difference bigger than your limit, you get a message in your notification channels, once for that shift. It says which register, how much and links to the shift in the admin.
The limit is Tell me about a cash difference over under Point of sale → Settings → Cash. It is set per currency in minor units, and a currency you leave out uses 500, which is 5.00 in a currency with two decimals. A difference of exactly the limit is not reported.
The message is the Cash difference at close row on the Notifications screen. Switch it off or change its channels there.
Shifts in the admin
Open Point of sale → Shifts. The table lists every shift with the Register, when it was Opened and Closed, who Opened it, and once it has closed its Expected and Counted cash and the Difference. Press a shift to open it: its X report while it is open, or its Z report as it closed, with the cash in and out and every sale rung up on it, each linked to its order. Filter by register and by dates, and sort or search any column.
Open a shift to see its X report while it is open or its frozen Z report once it has closed. That includes the sales, tenders, refunds, discounts, tax, takings by staff, the drawer sums, every cash movement with its reason, and every sale rung up on it, each linked to its order.
You need kahunacart.pos.manage for these screens. A cashier can print a shift's report for their own register at the till.