The till knows the dog, the coupon and the stock.
A groom, a bag of treats and a toy go on the same ticket, rung up by the same person. Discounts are applied before tax and worked out on the server rather than trusted from the screen, stock is checked before the sale completes, and voiding a sale puts the stock back.
- Services, retail and add-ons on one ticket
- Coupons, loyalty points and manual discounts applied before tax
- Stock checked before the sale completes, and reversed if it is voided

How a sale goes through
Fast at the counter, and strict about the two things that cost money: price and stock.
Add the groom, then the treats.
Scan a barcode or search by name; services and retail lines sit on the same ticket so the client pays once and the record of the visit stays in one place.
Discounts before tax, worked out server-side.
Coupons, loyalty points and manual discounts are applied in the right order and the maths is redone on the server, so what the client is charged does not depend on what the browser sent.
Stock is checked before the sale completes.
Every retail line is checked against what is actually available, and a shortfall stops the sale rather than producing a negative count you discover next week.
Void it, and stock comes back.
Voiding a sale reverses the inventory movement automatically, so a mistake at the till does not leave a permanent dent in the count.
A till that refuses to be wrong.
Each of these closes one way a sale can ring up differently from reality.
One ticket
Services, retail and add-ons rung up together and paid for once.
Barcode or search
Scan the fast path; search by name for anything without a barcode.
Coupons & loyalty
Fixed or percentage coupons and accumulated points redeem at the till.
Mixed payments
Card, cash and split payments recorded on the same sale.
Server-side reprice
Totals, discounts and tax recalculated on the server, not trusted from the screen.
Void reverses stock
Voiding a sale puts the stock back rather than leaving a dent in the count.
A penny out twice a day is real money by the end of the year.
A separate till for retail
- Client pays twice for one visit
- Two records of the same afternoon
- Stock in a system the till cannot see
- Loyalty that does not apply across both
Retail bolted onto a booking tool
- Totals trusted from the browser
- Discounts applied after tax
- Stock going negative unnoticed
- Voided sales leaving the count short
PawFora
- Services, retail and add-ons on one ticket
- Discounts before tax, recalculated server-side
- Shortfall stops the sale before it completes
- Voiding reverses the inventory movement
Common questions about pos & checkout
Can a groom and a bag of treats go on the same ticket?
How do coupons and loyalty points apply?
What happens if we try to sell something we do not have?
If a sale is voided, does the stock come back?
POS & Checkout is one part of Retail.
Every capability shares the same catalogue, stock, suppliers and numbers.
Products & variants
Variants are the sellable unit, so price, barcode and stock never blur between sizes.
Read more →Inventory management
Stock held per variant, with every movement traceable to a document and low stock flagged from live counts.
Read more →Stock counts
Counting as a real document with its own states, an inventory freeze, and approval separated from counting.
Read more →Retail reporting
What sold, what is quietly dying, and margin based on weighted landed cost rather than retail price.
Read more →Ring up the whole visit in one go.
Services and retail on one ticket, server-side pricing and stock guards — alongside the rest of PawFora. Seven days free, no credit card.
Start free trial or see pricing first