Skip to content

Selling — the till ​

The screen a cashier uses all day.

Serving a customer ​

  1. Go to Retail → Till.

  2. The first time, choose which location you are selling from. Trackapt remembers your choice on that device, so you will not be asked again. The selector locks as soon as there is anything on the basket.

  3. Scan the item — or type its SKU (such as brd-wht) into the scan box and press Enter. It appears on the basket and a green line confirms it. If the label will not read, search for it by name; if it carries no label at all, tap its quick key. For an open-price product the price pad opens first.

  4. Keep scanning. Scanning the same item again adds one more, and so does picking it from the search a second time or tapping its quick key again.

  5. Adjust as needed:

    • − and + on a line change the quantity. − on a quantity of one takes the line off, so it asks first.
    • Tap the quantity itself to type a different one on the quantity pad, then confirm. It takes a decimal point, for things sold by weight, and up to 9,999 on one line.
    • × at the end of a line takes it off entirely — after asking.
    • Void basket clears everything and starts again — after asking.

    Every line taken off and every void is recorded against your name, with the lane and what came off. See Voids and removed lines.

  6. The footer keeps the item count and the total in front of you at all times.

  7. Click Take payment.

The sale is recorded, the basket clears, and you are ready for the next customer.

At a shared counter login, check in first

If the till's login is a shared station, nothing in Retail works until somebody checks in with their own PIN. Whoever is checked in works at their own level, up to the shared login's: a refund, for instance, goes through without a supervisor's PIN only where both the person and the login are at level 3 or above. Check out at the end of your shift.

Take payment records the sale, not the money

Take payment records what was sold and for how much. Take the cash or the card the way you normally do. Trackapt does not ask which, and does not record it.

It does record which currency the basket was rung up in, where your shop takes more than one — see below.

Taking more than one currency ​

If your shop has set up currencies, the till shows a button per currency in the top right. If it has not, there is no such button and nothing on this screen mentions currency at all.

  1. The basket opens in your main currency — the one your reports are totalled in.
  2. Click another currency's button to ring the basket up in it. Every line already on the basket is re-priced to that currency's shelf prices, and the total follows.
  3. Everything else works exactly the same: scan, tap keys, take payment.

Your choice sticks between customers, so a lane mostly taking one currency is set once at the start of a shift.

What the till charges depends on one setting

With Sell in any currency off (the default), the till charges only the shelf price you set in that currency. A product you have not priced in a currency cannot be sold in it: scanning it says so, its quick key goes dead and reads not sold, and switching a basket that contains one is refused with the product named — the basket is left exactly as it was, so you are never half-way between two currencies.

With it on, an unpriced product is charged its main-currency price converted at the rate in force, rounded up. A price you typed still wins. A product pinned to the currency it was stocked in is never converted and behaves as it does with the setting off.

What the change calculator does

Cash given is in whichever currency the basket is in, and so is the change it works out. Switching currency clears the box, because what the customer was going to hand over is now a figure in a different currency.

Working out the change ​

Counting change in your head with a queue waiting is where mistakes happen, so the till will do the sum for you. It is entirely optional — ignore the box and nothing changes.

  1. Ring the basket up as usual.
  2. In Cash given, next to the total, type what the customer handed over.
  3. The answer appears beside it as you type:
    • Change — in green, what to hand back.
    • Still to pay — in amber, how much short the money is.
  4. Take the payment and click Take payment as normal.

The box clears itself after every sale and whenever you void a basket, so the last customer's cash can never be read against the next one's shopping.

This is a calculator, not a record

What you type is never saved and appears in no report — Trackapt does not track your cash drawer. It is there only to save you the arithmetic. Leave it empty for a card customer, or whenever you would rather count it yourself: it never blocks Take payment.

The box only appears when there is money to collect.

Refunds ​

A refund is taken against the sale it reverses, and gives back what the customer paid — never more of anything than was sold.

  1. Click Return. The Return window opens over the till.
  2. Find the sale:
    • type or scan the receipt number and press Enter, or
    • with no number to hand, pick the days the customer came in (and, if you like, an item they bought) and click Find sales, then pick theirs.
  3. Each line shows what was sold, what has already come back, and the price paid. Type how many are coming back — never more than what is left (All fills in the rest).
  4. For each line choose what happens to the goods: Restock (back on the shelf) or Write off (cannot be sold again — it then shows in Shrink). Damaged and Expired write off by default.
  5. Choose a reason. Other needs a note.
  6. If you are below level 3, a supervisor picks their name and types their PIN on your till. A supervisor is a team member of this app at level 3 or above who has set a PIN, or the account holder once they have set one — see Supervisor PINs. A cashier at level 3 or above approves their own.
  7. Click Refund, and give the customer the amount shown.

The price, tax and cost come from the original sale — whatever was paid, in the currency it was paid in. A second refund of the same goods is refused with Only N of M sold can still be returned, or has already been returned in full.

Refunds need the connection: only Trackapt can check the sale and the supervisor's PIN. A delisted item can still be refunded.

If a refund fails, press Refund again before closing the window. The till does not keep a refund to send later and never re-sends one by itself: a refund needs the supervisor's PIN at the moment it is taken, and a PIN is never stored. Pressing Refund again in the same window sends the same refund — it is recorded once, however many times it is pressed.

A refund that was started and not finished shows on the sale as being completed, and the units it holds cannot be refunded by anyone else until it is settled. How it is settled depends on how far it got:

  • It stopped before anything was written. Once it has stood still for half a minute, the next refund of the same sale line — that line of that receipt, not the same product on another receipt — releases its units automatically, and the unfinished refund is recorded as abandoned.
  • It stopped part-way through being written (a server restart or a database fault mid-refund). The lines it had already written are refunded: their money is on the ledger and in the Tax summary. The rest of it is held until its own Refund button is pressed again in the window that sent it. No other refund releases it — taking the refund again from the start is refused for those units.

If that window was closed, a supervisor can release it. Look the sale up in Return: a supervisor — someone whose own sign-in can approve refunds — sees Release beside the refund being completed. Release is refused until the refund has stood still for half an hour; Trackapt says when. That way a refund that is merely slow is never cut off. The supervisor gives a reason and confirms. Releasing:

  • keeps every line already written. Those are refunded: their money stays on the ledger and in the Tax summary, exactly as they were;
  • gives back the units of every line that was not written, so they can be refunded again — by a fresh refund, against the same receipt;
  • pays nothing out and takes nothing back. It moves no money; it only frees units the unfinished refund was holding;
  • records who released it, when and why. The supervisor is whoever is signed in — never a PIN typed at someone else's till. At a shared counter login it is the person checked in at the station, and the station is noted beside them. The release cannot be undone or repeated.

A refund with nothing written is recorded as abandoned; one with some lines written is recorded as released, worth only those lines.

Refunds never give back more money than the sale took. Each line of a sale keeps a running total of the money and tax refunded against it, and Trackapt refuses to let it pass what the customer paid. Refunded in parts, a line adds up to exactly what was paid, to the cent: the part that completes the line refunds whatever is left, so rounding never leaves or over-pays a cent.

Refunds without a receipt ​

Click No receipt in the Return window when there is truly nothing to find the sale by. This is only possible where the shop has set a limit for it in Retail setup; with no limit set it is switched off. Such a refund:

  • is at today's shelf price,
  • may give back no more than the limit, in total,
  • always needs a supervisor's PIN, whoever is at the till,
  • and cannot include an open-price product (find its receipt instead).

Supervisor PINs ​

A supervisor sets their own PIN once, under Retail → Setup → Refunds — at least four characters, not one character repeated. Only people at level 3 or above can hold one, and it stops working by itself if their level is lowered. A supervisor must be a team member of this app, or the account holder: the Supervisor list in the Return window offers nobody else, and a PIN from anybody else is not accepted. Five wrong PINs from one cashier lock that cashier out of that supervisor's approvals for fifteen minutes; the supervisor stays available to everyone else. Each lockout after that is twice as long as the last — thirty minutes, an hour, two hours, up to a day — until that cashier gets that supervisor's PIN right, which starts it again at fifteen minutes. Only ten wrong PINs across cashiers lock the supervisor themselves. Every refused PIN is listed on the Voids & refunds report with the cashier who asked. The refund records the supervisor Trackapt checked — not a name typed on the till.

Nobody approves their own refund ​

A refund that needs approval needs a second person. If you name yourself as the supervisor, the refund is refused with A refund needs a second person to approve it., and nothing is counted against your PIN.

At a shared counter login, the person asking is whoever is checked in, not the counter. Trackapt works out whether that person is the supervisor you named in one of two ways:

  • If the person is linked. An admin can link each person on a station's list to who they are elsewhere in your organisation — a team member, or the account holder. Open the station's list (Who works at…) and choose them under Linked person, which offers Account holder and the team members of this app; a shared station login is never offered. Once you are linked, you cannot approve your own refund as that team member, or as the account holder, however the two names are spelled. Another supervisor's PIN still works.
  • If the person is not linked. Your name on the station's list is compared with the supervisor's name, ignoring capitals, extra spaces and accents. A name spelled differently — Sue on the list and Susan on the team — is not caught.

If you are the account holder and you work the till, link yourself. The account holder signs in with a login name, not a person's name, so the name comparison can never match it. Linking your entry on the station's list to Account holder is how Trackapt knows it is you, and stops you approving your own refund with the holder's PIN.

Only an admin signed in with their own login can set or remove a link — never from a shared counter. One team member can be linked to only one person, and removing a link asks first. Every link and unlink is recorded with who made it, when, and what it changed from and to.

When a linked team member is removed from the team, their links go with them: the person on the station's list is no longer linked, and the change is recorded against the admin who removed them. Until they are linked again, their name is compared, as above — so a team member removed and invited back under the same name is still caught. If a list ever shows Linked to a removed team member, the link names nobody and Trackapt compares the name instead; choose who the person is now, or unlink them.

Voids and removed lines ​

Nothing comes off a basket in one press. Void basket, the × on a line, and − on a quantity of one all ask first, and the buttons say what will happen (Void / Remove, or Keep).

Once confirmed, each void and each removed line is recorded — who, when, which lane, which items, and what they came to — and appears on the Voids & refunds report. The record is saved on the device first and sent when the network allows, so it is kept even when the till is offline.

Typing a SKU ​

A product's SKU is the shop's own short code for it, such as BRD-WHT — set in the catalogue. Type it into the scan box and press Enter: Trackapt tries it as a barcode first, then as a SKU, so a code that happens to be both one product's barcode and another's SKU always rings up the barcode's product, exactly as the scanner would. Capitals do not matter.

A SKU typed into the name search works too, and the product whose SKU it is exactly is listed first. Enter rings it up when exactly one product has that SKU, even if other products also matched the letters. A long run of digits (eight or more) typed into the name box is still treated as a scan.

Hardware checkout lanes look codes up the same way, so a lane can sell a barcodeless product by its SKU.

Open-price products ​

A product marked Open price in the catalogue has no fixed price: the cashier says what this one costs.

  1. Ring it up any way — scan, SKU, search, or its quick key. Quick keys work offline, and so does this.
  2. The price pad opens, filled with the product's suggested price if it has one. Type the price (the first key replaces the suggestion) and press the confirm button or Enter. Cancel — or Escape — adds nothing.
  3. The line appears marked open price. Click its price to change it.

Each open-price product rung up gets its own line. Holding its quick key asks how many first, then the price. The pad takes no more decimals than the basket's currency has.

The basket's currency is locked while it holds an open-price line. A typed price was typed in that currency, and there is no shelf price to convert it from, so the currency buttons refuse to switch. Remove the open-price line, switch, and ring it up again.

The pad only listens to keys pressed after it opens: the Enter that picked the product from a search never also confirms the price. And it ignores a scanner — a burst of characters arriving faster than anyone types, ending in Enter, is taken as a scan and leaves the price as it was. Finish pricing (or cancel) before scanning the next product.

Only open-price products take a typed price

Every other line is charged the shelf price Trackapt holds for the moment the sale was rung up — whatever the lane sends. A sale taken offline before a repricing is still booked at the old price the customer was shown. If a lane ever sent a different figure (an out-of-date screen, for example), the sale is booked at the shelf price and the lane's figure is kept beside it for audit.

Quick keys ​

The grid of keys is for the things a shop sells that carry no printed code — loose produce, bakery, a carrier bag. Its heading says what you are looking at: Quick keys somebody laid out under Retail → Setup, or Best sellers, the products this location has sold most in the last 60 days, where nobody has.

  • Tap a key to put one on the basket. Tap it twice to add two.
  • Hold a key (or right-click it) to type how many on the quantity pad — for twelve of something, or a weight.
  • The refresh button beside the heading fetches the keys again — use it after somebody has changed a price or laid out new keys.
  • A key marked delisted, or one reading not sold because the product cannot be sold in the basket's currency, cannot be pressed.

The whole grid is fetched when the till opens, so the keys keep working when the connection drops.

Laying the till out ​

Once there are keys, three layout buttons appear in the header, side by side. They carry icons rather than words; point at one and its tooltip names it. The one in use is filled in. Each chooses how the screen is arranged on this device:

IconIts tooltipLayout
A list of linesScanner laneKeys tucked under the scan box, beside the basket. The chevron beside the keys' heading hides or shows them.
A grid of squaresTablet laneKeys given the room, with scanning secondary.
A monitorWide screenKeys across the top, scanning and the basket underneath.

The device remembers the layout you chose, and whether you left the keys hidden.

The full screen button, rightmost in the header, gives the till the whole display, with the menu and the browser out of the way; press it again, or press Esc, to leave. It is only there where the browser allows it, and it is not remembered between visits.

When a label will not scan ​

Beside the scan box is Or find it by name. Type part of the product's name — or part of its barcode or SKU — and the matches appear under both boxes with their shelf prices and codes. Click one and it goes onto the basket exactly as a scan does. On a phone the two boxes sit one above the other instead.

If the scanner fires while the caret is in the name box, nothing is lost: a full barcode followed by Enter is rung up at once, exactly as if it had gone into the scan box.

Use it for a torn, creased or worn label on something that has no quick key of its own. It is the third way onto a basket, and the order to reach for them in is:

  1. Scan it — fastest, and what the lane is built around.
  2. Tap its quick key — for the things sold without a printed code at all: loose produce, bakery, a carrier bag.
  3. Find it by name — for the label that will not read on something too uncommon to have earned a key.

Press Enter to ring up the only match. Where your term narrows to exactly one item, Enter puts it on the basket without your hand leaving the keyboard. Where more than one matches, Enter does nothing: ringing up whichever happened to be listed first is a mischarge nobody notices until the customer reads the receipt. Type another letter or click the one you want.

The caret goes back to the scan box the moment you pick something, so the next scan lands where it should.

Delisted items are in the list, marked delisted. You cannot sell one — the till says so and refuses. To take one back, use Return — see Refunds.

This needs the connection, exactly as scanning does

Searching asks Trackapt what matches, so it stops working when the network does — and so does scanning, for the same reason. The quick keys are the ones that keep working offline, because the whole grid is fetched when the lane opens and every tap after that is answered from the device. If the connection has dropped mid-shift, the grid is what to reach for.

Selling with the camera ​

A lane running on a phone or a tablet has a scanner already — its camera. The camera button beside the scan box opens it, and items go onto the basket as they are read; it stays open so you can scan a whole basket without touching the screen. See Scanning with the camera.

The camera only ever scans into the basket. Refunds are taken with Return.

When the internet drops ​

The till keeps working. Every sale is saved on the device the moment you press Take payment, and sent to Trackapt afterwards. A cashier never waits for the network to hand over change.

If sales are waiting to be sent, a banner appears at the top:

3 sales not yet sent — oldest 12 minutes ago. [Send now]

They will be sent automatically as soon as the connection returns, and the lane keeps trying on its own — after a few seconds at first, then less often, at most a minute apart — until they are gone. Send now forces an immediate retry.

Unsent sales the device could not read ​

If the till finds unsent sales on the device that it cannot read, it keeps them aside, exactly as it found them, and says so at the top of the till:

1 record of unsent sales on this device could not be read and has been kept aside.

Do not clear the browser's data on that device. Ask a manager to recover those sales: they stay on the device until somebody deals with them, and they may be the only record of money already taken.

Sales that need attention ​

Occasionally Trackapt refuses a sale outright — say the product was set up as open-price after the till loaded its quick keys, and the line carries no typed price, or the product is no longer set up for selling. Sending it again as it is will not change the answer, so that sale is set aside and every other sale keeps going up. A red panel lists what was set aside:

1 unsent sale needs attention — USD 3.00 · 2 lines · the reason Trackapt gave

[Retry] [Discard]

Fix what the reason says (re-list or price the product), then press Retry. Discard removes the sale from the lane without recording it — it asks first, because it is the one way a sale the customer paid for never reaches your figures. Set-aside sales are kept on the device, like the banner's, until you choose.

Closing the till with that banner showing does not lose the sales. They are written to the device's own storage the moment you press Take payment, before anything is sent, so they survive closing the tab, quitting the browser and shutting the machine down. Open the till on that same device again and they go up as soon as it has a connection.

They are on the device that took them, so that device has to come back

Two things will still lose them:

  • Clearing the browser's site data for Trackapt, or running a browser set to clear it every time it closes. Never sell from a private or incognito window — that throws the storage away when the window shuts.
  • Selling on a device that then never comes back — a lost tablet, a wiped machine. The sales are not on the server yet, so nothing else can send them.

If a lane is going to be out of action for a while, get its banner to clear first, from anywhere it has a connection.

Things that will surprise you otherwise ​

The till will sell stock you do not have. If the ledger says zero and a customer is holding one, the till sells it and the figure goes negative, rather than refusing a paying customer over a data problem. A negative figure is a signal to go and count that item.

Tax is worked out for you. Once the shop has tax codes, the basket shows the tax under the total, one line per code (for example VAT 15% incl.: 3.00). Under a code whose prices include the tax — the usual case — the total is the shelf prices added up; under a code where tax is added at the till, the total includes it. The till re-reads the shop's tax codes every minute, whenever the screen comes back into view and whenever the connection returns, so a rate change takes effect at the till from the moment it applies — even on a till left open overnight. If a re-read fails (the shop's internet is down while its own network is up), the till says so once and stops asking until the connection comes back or a queued sale gets through, keeping the codes it last had.

The till's tax is checked against the setup. With each sale the till sends the tax it charged on every line. The server checks that against the shop's tax setup as it stood when the sale was rung up — the rate, whether the code included the tax, which code was the default and which code the item carried — so a sale that waited offline while somebody changed the setup is still checked against the setup the customer was charged under. Where the two agree, that is what is booked. Where they do not, the line is booked with the till's tax if the difference is one the setup explains — a code the shop had, at a rate and treatment that code carried in the week up to the sale, applied to the price Trackapt booked for the line — and with the setup's figure if it is not. Either way the line is flagged: the Tax summary counts flagged lines, and Price audit shows what the till charged and what was booked, so a manager can look into them. A shop with no tax codes sees no tax at all.

A refund against a receipt gives back each line's own tax. Because it is taken against the sale line it reverses, it refunds that line's tax under that line's own code, exactly what the customer paid for it, and never more of a line than was sold. The Margin report shows revenue net of tax, and the Tax summary adds it up for a VAT return.

Messages you may see at the till ​

MessageWhat it means
Nothing in this shop carries 5012345678900.That barcode is not on any product. Either it was mis-scanned, or the product has never been made sellable.
Milk has been delisted and cannot be sold.Somebody has taken it off sale. It can still be refunded with Return.
Only 2 of 3 sold can still be returnedSome of that line has already been refunded. Refund no more than what is left.
A refund needs a supervisorYou are below level 3. A supervisor picks their name and types their PIN.
Supervisor approval was not acceptedThe PIN was wrong, or that person has no PIN. They type it again, or set one in Retail setup.
Refunds without a receipt are switched offThe shop has set no no-receipt limit. Find the sale, or ask a level-6 user to set a limit.
This shop has no selling location yet.Nobody has created a location yet.