M MahirRMS Docs
Ctrl K

Day Close

At 1 a.m. a tired manager should not be deciding what to check — the system should. Day close in MahirRMS is a supervised routine: it checks the day before you close it, counts the cash against what should be there, runs stock consumption where you can watch it, and only then commits the day.

Before: the pre-flight checklist

The Day Open/Close screen shows a live checklist for the business day:

  • Running orders — unsettled orders block the close (their money is not accounted for yet). A shift configured to allow pending delivery orders downgrades this to a warning.
  • Unapproved vouchers — manual vouchers awaiting approval are flagged.
  • Open registers — every register must close (drawers counted) before the day can.
  • Wastage reminder — a branch that usually records wastage but has none today gets a nudge.
  • Previous close status — a prior day whose consumption never finished must be repaired first.

Blocking items disable the close button and say exactly why. The checklist refreshes on its own; fix the issue and the button unlocks. Each close journals the checklist results, so you can always see what state the day was in when it closed.

The glance strip

Above the registers the close screen shows the day at a glance: order count, gross sales, discounts, voided orders and expected cash across drawers — a thirty-second sanity check before you commit anything.

Counting the cash

Each register closes with a physical count. The variance limit and blind counting rules apply here: a count too far from expected is refused with the reason journaled, and under blind counting the cashier never sees the target figure.

During: supervised consumption

When you start the close, the day's stock consumption runs in the background — and the screen shows it working: which department it is on, progress, elapsed time. The day is saved as a draft at this point. Nothing irreversible has happened yet.

  • If consumption succeeds, the close either commits automatically (if the business enables auto-commit) or waits for a manager to review the consumption summary and press Finalize.
  • If consumption fails, the close does not silently pass. The screen says so, and offers Retry.

Businesses running multiple shifts back-to-back usually enable auto-commit so the next shift isn't waiting on a review; single-shift businesses often prefer the manual Finalize as a nightly checkpoint.

When things go wrong: retry and override

Retry re-runs consumption cleanly — half-finished results from the failed run are backed out first, so retrying never double-counts. After three failed attempts, a manager with authorization may override: the day closes without consumption, the override is journaled, and a detailed report is emailed to the business's audit address. An overridden day is flagged for repair — support can re-run its consumption later, and stock reconciliation will refuse to post over it until then.

After: the commit

The final commit is what makes the day official: the new shift's registers are created for the next day, bank settlements sweep, and the branch's "last closed" marker advances to the end of the closed window — so late-night sales that happened during the close land in the next day, never lost between two days.

History

Every close — its checklist, its consumption result, who finalized it and when — is kept in the day close history, viewable per branch. When two managers disagree about "what happened Tuesday night", the history answers.

Recommended setup: multi-shift branches → auto-commit ON; single-shift branches → manual Finalize. Either way, set the audit email address — it is where failure and override reports go at 3 a.m. so the morning starts informed.

Last updated August 19, 2026