Skip to content

POS & Sales Reports

Overview

The POS report group in the admin console is where you read back what your tills did — sales by payment type, cash reconciliation per shift, best-selling items, discounts given, and PayNow transfers received. Every report here draws on orders rung up on the POS tablet, so the figures reflect exactly what your cashiers tendered.

You'll find them in the sidebar under Sales → POS. There's nothing to set up — each report is a screen with a filter bar and a table you read or export.

Scope

Most reports share the same filters — date range, outlet, outlet register, and channel — so once you've learned one, the rest read the same way. A couple are restricted: Manual PayNow Report is superAdmin-only.

How it works

Each report is a custom screen with a filter bar across the top. Pick your date range (quick ranges — Today, Yesterday, This Week, This Month, Last Week, Last Month — or a custom from/to), then narrow by outlet, outlet register (till), and where relevant channel and member type, and the table redraws.

Two settings configured elsewhere shape every figure on these screens:

  • Cash rounding — the rounding mode and value on the Outlets → Edit outlet → Order tab round cash totals, which flow through to the reports.
  • Service charge — the service-charge type and rate on the same Order tab decide what lands in the Service charge column.

So if a total looks off, check those two settings first. See Cash Rounding for the rounding rules.

Three-month date range cap

The Orders export (from the Orders list) needs both a from and a to date and a range of three months or less — a warning blocks the export otherwise. Split a longer period into quarterly exports.

The report screens have the same limit: Sales Summary, Sales by Item, Sales by Category, Sales by Member, Sales by Modifier, Payment Report, Discount Report, Void Item Report and PayNow Report all refuse a range longer than three months with "Date range must be 3 months or less". The Shift Report is stricter — one month at a time.

The reports

Sales Summary

Your headline takings report. Sales totalled across the period, broken down however you slice it.

/rewardlyPos/salesSummarySales → POS → Sales Summary.

FilterWhat it does
Interval / HourGroup rows by interval or by hour of the day.
Quick rangeToday / Yesterday / This Week / This Month / Last Week / Last Month, or a custom from/to.
OutletsOne branch or all.
ChannelAll Channels, Online, POS, Kiosk, or Grab.
Member typeMember vs non-member sales.
Outlet registerA single till.

There's no tender filter here — the Payment types panel on this screen is a read-only summary, not a filter. To reconcile by tender, use the Payment Report.

Key columns: Date / Hours, Total, Discount, Service charge, Delivery fee, Gross, Final Total, and Customers, with Grand Totals at the foot. The split between member and non-member, and between online and in-store channels, is the report's main job — use it to see how much of the day came through loyalty members or off the kiosk.

Here Customers is the number of unique customers — one per bill, with a member's repeat orders in the same period counted once. It also drives the average-spend-per-customer figure. This is not the same as the Shift Report's Diners, which counts every person at the table; see Where the Diners number comes from below.

Shift Report

The cash-and-sales reconciliation report. One row per shift, so you can see whether the till balanced.

/rewardlyPos/shiftReportSales → POS → Shift Report.

ColumnWhat it shows
Open ShiftsShifts still open.
Opened / ClosedWhen the shift opened and closed.
Opened By / Opening ManagerWho opened it.
Opening Cash / Closing CashThe float counted in at open and the cash counted at close.
DinersTotal diners served in the shift. Dine-in counts each order's diner number; takeout and delivery count 1 per paid order.
Total Sales / Gross Sales / Net SalesSales totals for the shift.
Delivery SalesDelivery revenue.
Final TotalThe shift's final figure.
Unaccounted OrdersOrders not tied to a shift (orphans) — investigate these.

This report pairs directly with the POS tablet's shift open/close. A cashier opens a shift with a counted float and closes it with the counted cash; that's what fills the Opening Cash and Closing Cash columns here. See Registers & Shifts for the cashier's side.

Two register settings affect the cash side:

  • Show Expected Cash Total in Till on Shift (Outlet Register setting) — when on, the cashier sees the expected till total at close, which feeds the reconciliation.
  • Shift cash threshold (Outlet Register setting) — the allowed variance between counted and expected cash before the POS refuses the close.

Create Xero report

The Shift Report has a Create Xero report action that pushes the shift's sales, tax, service charge, rounding, and payment figures into Xero using your account mapping. Connect Xero and map your accounts first — see Xero Integration.

Where the Diners number comes from

For a dine-in order, the diner number is whatever the cashier enters in the Pax Number field on the POS. If they enter nothing, the table's PAX Number (its seat count, set per table under Tables) is used instead. Takeout and delivery always count 1 per paid order.

So the accuracy of this column depends on cashiers entering the real party size at the till. If a 4-seat table is used by 2 guests and nobody changes the number, the shift will report 4. Where the same number is printed on kitchen chits (the Print Pax Number register setting), staff usually keep it accurate already.

Diners will not match the Sales Summary

Both reports carry a people-count column, but they count different things and will not tally:

  • Shift Report Diners counts every person served — a table of four on one bill is 4.
  • Sales Summary Customers counts unique customers — the same table is 1.

They also cover different orders: the Shift Report only includes orders inside closed shifts per register, while the Sales Summary includes all orders by date. Use the Shift Report for covers served, and the Sales Summary for how many customers you reached.

Sales by Item / Modifier / Category / Member

Four sales breakdowns, each at a different grain:

ReportWhat it shows
Sales by Item (/rewardlyPos/salesByItem)Units and revenue per product — your best-sellers.
Sales by Modifier (/rewardlyPos/salesByModifier)Sales attributed to each modifier option (extra shot, oat milk, …).
Sales by Category (/rewardlyPos/salesByCategory)Sales rolled up by product category.
Sales by Member (/rewardlyPos/salesByMember)Sales attributed to each loyalty member.

They share the standard outlet / register / channel / date filters. Use Sales by Item for menu decisions, Sales by Category for the high-level mix, and Sales by Member to see who your biggest spenders are.

Filter sales by product Tag

Sales by Category also has a Tags filter, so you can pull sales for any cross-category grouping you've tagged — e.g. "vegan", "seasonal", or "new menu". Select one or more tags in the filter bar and the report narrows to items whose product carries any of those tags.

To use it, first assign tags to your products: create tags under Administration › Tags, then set the Tag field on each product (Products & Inventory › Product › Products). Navigate to Sales → POS → Sales by Category, pick your date range and outlet, and choose your tag(s) in the Tags filter.

Historical orders

The tag is recorded on each order line at the time of sale. Orders placed before a tag was assigned to the product (or before this feature was enabled on your account) carry no tag, so they won't be counted when a tag filter is applied — recent date ranges give complete figures.

Payment Report

Payments grouped by tender type — cash, card, points, store credit, and so on — with tax and totals per group and overall. This is the report you reconcile against your card-machine settlements and bank deposits. It respects the same outlet / register / date filters.

/rewardlyPos/paymentReportSales → POS → Payment Report.

PayNow Report

Each PayNow transaction taken at the POS, so you can match them against your bank. SG-focused, since PayNow is a Singapore transfer scheme.

/rewardlyPos/report-paynowSales → POS → PayNow report.

Manual PayNow Report

A reconciliation view for manually matched PayNow transfers — the ones a cashier ticks off against an incoming notification rather than an integrated terminal.

superAdmin only

The Manual PayNow Report (/rewardlyPos/report-manual-paynow) is visible to superAdmin users only. If you can't see it in the POS menu, that's why — ask Rewardly support if you need it.

Discount Report

Every discount and voucher discount given over the period, split into program discounts (rules you configured) and manual open discounts (a cashier keying in a one-off), with totals. Use it to see how much margin you're giving away and through which channel.

/rewardlyPos/discountReportSales → POS → Discount Report.

Bottle Parking Report

For bars and lounges that hold members' bottles. This report lists bottles parked and used so you can audit what's still in the rack against what each member has drawn down.

/rewardlyPos/bottleParkingReportSales → POS → Bottle Parking Report. The bottle-keeping feature itself — how staff park and draw bottles at the counter — lives in Bottle Keeping.

For AI-powered natural-language reports, see Smart Report Builder — ask what you want in plain English and the AI fetches data, draws a chart, and writes an analysis. It lives at /rewardlyPos/aiReport in the same sidebar group.

Default setup

Bean & Brew example: at close on a Sunday, the owner opens Sales → POS → Shift Report, picks This Week and the one outlet, and checks the Closing Cash against Opening Cash plus the cash row of the Payment Report. Then Sales Summary with channel All Channels and member type toggled shows that members drove most of the weekend's takings — exactly what the Beans programme is meant to do.

There's nothing to configure on these screens. The two things that do need to be right beforehand both live on the Outlets → Edit outlet → Order tab:

  1. In the sidebar open Outlets → Edit outlet → Order tab and confirm your Rounding Settings (mode and value) so cash totals round the way you intend.
  2. On the same tab, set your Service Charge Type and rate so the Service charge column reflects reality.

With those right, every report below reads true. To export, open a report, set the date range and outlet, and use its export control.

Reference

There's nothing to install or switch on for this group — the reports populate themselves from POS orders. For the order-by-order detail behind these summaries, and for the payment side, see: