Bitta Retail POS guide

End of day

Run the day close: preview, confirm, and post the day's completed POS sales into consolidated Business Central documents, handle failures safely, schedule the run, and reconcile with the Daily Reconciliation report.

status: verified applies-to: 1.0.0.121rev: 5

End of Day is the operator's day close: it takes every completed, unposted POS sale for a chosen date and posts it into real Business Central documents, with a preview before anything is written and a clear result message after. This page covers running the day close. The accounting mechanics behind it - grouping rules, posting modes, the archive, and failure isolation - are on Consolidated posting.

What End of Day does

End of Day (EOD) selects every Released, unposted POS sale for a chosen date, groups the sales into consolidation groups, and posts one consolidated Sales Invoice per group (or creates one unposted Sales Order per group in the deferred mode). Return groups always post as consolidated Sales Credit Memos. Each successfully posted group also writes one row to the Posted Daily Sales archive.

Only Released sales are in scope: open, untendered sales and already-posted sales are never touched. Rerunning is always safe - groups that already posted are excluded by the Released + unposted filter and will not post again.

Who can run it: EOD is an administrator task, enforced before anything is created or posted. Only users with the shipped BAA POS - Admin permission set can run it; a cashier attempting the run gets a clear error ending "...Nothing has been posted."

When to run: typically once per day, after the stores close their shifts, for that business date.

Running End of Day

  1. Open Tell Me (Alt+Q) and search POS End Of Day (also findable as EOD, Daily Posting, Consolidate, Day Close; it is also linked from the POS admin role center).
  2. Pick the Posting Date (defaults to the work date) and set Create Sales Orders (Not Posted) for this run if you want unposted orders instead of posted invoices, then choose OK.
  3. Read the read-only preview carefully. It is computed by the same code the run executes, so preview and run cannot disagree: it shows how many unposted sales in how many groups, the stores and terminals involved, how many return groups, plus the up-front skip classes - sales with no customer (skipped) and groups whose customer or item mapping fails (will not post, with the reason per group).
  4. Confirm. Declining keeps the dialog open with nothing written; if nothing is in scope, a plain "nothing to post" message appears and no confirmation is shown at all.
  5. Read the result message: nothing to post, full success ("posted N consolidated Sales Invoice(s) covering M POS sale(s)..."), or a failure summary listing each failed group with its reason.

TIP

Before running EOD, run the Daily Reconciliation report with Posting State = Unposted to preview what still needs posting; run it again with Posted afterwards to confirm.

When something fails

Every consolidation group posts in isolation - one bad group never kills the run and never rolls back groups that already posted. After a partial run, work the failure summary top to bottom:

  1. Map the named customers and items (the Map to BC actions on POS Customers / POS Items).
  2. Assign customers to any skipped sales.
  3. Rerun EOD for the same date. Groups that already posted will not post again; only the previously failed groups post.

See Consolidated posting for exactly how isolation works, and Troubleshooting for the common mapping failures and their fixes.

Scheduling the daily run

The app can maintain one recurring Business Central Job Queue entry per company so the day close runs automatically:

  1. Open POS Setup and set Enable Daily Consolidation, Daily Consolidation Time, and Daily Operations Time Zone ID. The configured time zone controls both the local wall-clock schedule and the posting date, including daylight-saving transitions.
  2. Choose Synchronize Daily Operations Schedule. This explicit action saves Setup and creates or repairs the recurring Job Queue entry - setup changes and upgrades never enqueue work implicitly.
  3. Review outcomes on POS Daily Operations Runs: Running, Succeeded, Completed With Issues, Skipped, Failed, or Interrupted, with navigation to the standard Job Queue entries and logs.

The scheduled runner uses the same posting body as manual EOD - there is no second posting engine. The queue uses daily recurrence, three attempts, a five-minute retry delay, and a two-hour timeout.

NOTE

Test a sandbox schedule through its configured time zone, execution user, and posting result before enabling production scheduling.

The Daily Reconciliation report

The POS Daily Reconciliation report (Tell Me -> POS Daily Reconciliation) is the printable day-close control sheet. For one business date it ties together document totals, tender detail, shift expected-versus-counted variances, cash movements, and settlement status, with detail levels from Summary down to Transaction:

  1. Run it at Detail Level = Shift to see each drawer's variance beside the day's sales, then drill to Tender or Transaction for anything that looks off.
  2. Turn on Exceptions Only to list just the rows that need attention (variances and control breaks).
  3. Keep Include Settlement on to confirm every tender slice settled and none failed unexpectedly.

Split tenders never double-count a document's totals - document totals are emitted once per transaction while tender, shift, and movement facts keep their own rows. The full report catalog is on Analytics and reporting.

Shifts and End of Day

Shifts and EOD are deliberately independent layers: EOD does not close shifts, and closing a shift posts nothing. The shift close reconciles the physical drawer; EOD reconciles the ledger. EOD selects sales by date and Released status regardless of any shift, so a Released sale from a still-open shift will be consolidated.

Recommended daily order:

  1. Cashiers close their shifts and print Z reports - see Shifts.
  2. A supervisor reviews over/short - see Supervisor operations.
  3. An administrator runs POS End Of Day for the date.
  4. With per-tender settlement on, settlement entries post automatically - see Per-tender settlement.
// next step

Ready to try Bitta Retail POS?