// Mini POS wiki
Customer 360 & Loyalty
Knowing who you're serving: the POS customer record, attaching a customer to a sale, the at-a-glance Customer 360 panel on the register, and the current state of loyalty.
Knowing who you're serving: the POS customer record, attaching a customer to a sale, the at-a-glance Customer 360 panel on the register, and the current state of loyalty.
POS customers See status matrix
What it is
A standalone POS customer catalog (BAA POS Customer) that can optionally map to a Business Central customer. Mapping is what unlocks AR features — On Account charges, credit limits, and the customer's BC document history — while an unmapped POS customer still works for walk-in identity and receipts.
Where to find it
Tell Me → POS Customers. The BC Customer list also shows a POS mapping count.
Setup
| Field / Setup | What it does |
|---|---|
| BC Customer No. | Maps the POS customer to a BC customer (enables On Account, credit, history). |
| Auto Map Customers to BC (Setup) | Auto-creates/links a BC customer for new POS customers. |
| Cash Customer No. (Setup) | The walk-in customer used when no specific customer is attached. |
| Active / Blocked | Controls whether the customer appears in the register lookup. |
Attaching a customer to a sale See status matrix
What it is
The register's Customer button opens a touch-first lookup (active, unblocked customers) with a quick-create option. Attaching a real customer is required before On Account and drives the status-bar customer chip.
How to use
- Tap Customer, search or pick, or quick-create a new one inline.
- The sale now carries the customer; the status bar shows the customer chip.
Customer 360 panel See status matrix
What it is
A read-only, at-a-glance panel opened by tapping the register's status-bar customer chip (shown only when a real, non-walk-in customer is attached). It's built fresh from live data each time.
| Section | Shows | Requires mapping? |
|---|---|---|
| Identity | Name, phone, loyalty card number | No |
| Credit / AR | Credit limit and current balance | Yes (mapped BC customer) |
| Open documents | Outstanding BC sales orders and quotes (counts only) | Yes |
| Lifetime stats | Sales count and totals | No |
| Recent purchases | Last 10 completed sales; tap a row to expand its lines | No |
| Notes | Free-text customer notes | No |
How to use
- Attach a mapped customer, then tap the customer chip in the status bar.
- Read the panel; tap a recent-purchase row to expand its lines (no round trip). Close when done.
Notes & limits
- Read-only by design — its only actions are Close and an inert "on this sale" marker. It sits under the lock screen, so a locked register can't leak customer data.
- Credit/AR and open documents are blank for an unmapped POS customer (there's no BC customer to read).
Loyalty Implemented; release validation pending
What it is
Mini POS now has a governed, company-scoped multi-program loyalty foundation. Administrators can maintain programs, versioned rules, tier benefits, memberships, ledger views, controlled adjustments, and POS repair exceptions. The server-side evaluator contract produces deterministic proposals for Points, Visit/Stamps with Value rewards, Cashback, and Tiers. Tier proposals can supply an approved Business Central pricing context or approved POS discount layer; evaluators do not write commerce or loyalty facts directly.
The production lifecycle durably reserves Value redemption as an internal Voucher tender and Item Rewards against exact earned roots, validates exact root capacity, and finalizes earning and redemption atomically with sale completion. Durable accounting covers issue, redemption, restoration, reversal, adjustment, opening liability, and breakage, with exact G/L, customer-ledger, settlement, payment-line, and voucher-root evidence plus reconciliation and governed upgrade recovery. Scheduled expiry runs through the governed Job Queue owner with frozen work items and retry evidence. Item Rewards create protected mapped Commerce Authority lines with exact item, variant, UOM, stock, tax, posting, return, and actual-cost identity. Exact partial, repeated, and final returns are persisted for every program type and reward item. Gift receipts deliberately omit loyalty. On the register, selecting a customer can auto-enroll eligible programs; the cashier sees membership, usable units/value, debt, tier, and next expiry, and the Tender screen offers server-owned Value and exact Item Reward choices.
Receipt refunds now stage one frozen refund aggregate before any provider request. Cash and every other return tender are included in that aggregate; each integrated card allocation receives its own exact-source provider leg, retry identity, and capture audit. A captured leg is never resent, and the return cannot finalize until every active card leg has captured. This authority is shared by ordinary and loyalty-bearing returns without creating loyalty records for an ordinary return.
Administration workspace
Use the POS Admin Role Center's Loyalty Administration group to open Loyalty Programs, New Loyalty Program, Loyalty Memberships, Loyalty Entries, Loyalty Balance Adjustment, Loyalty Rules, Loyalty Tier Benefits, and POS Repair Exceptions. Configuration is protected by validation and table guards: activated or referenced facts cannot be silently rewritten, and membership and balance changes go through server-owned services.
| Program type | Implemented now | Still required before release |
|---|---|---|
| Points | Governed earning, root-based Value redemption, register balance/debt/expiry display, frozen receipt facts, exact accounting, and exact return/reopen reversal. | Final tagged-package runtime and browser acceptance. |
| Visit / Stamps | Visit- or quantity-based earning, Value or Item conversion, protected BC item reward lines, cashier reward selection, and exact return/reopen reversal. | Final tagged-package runtime and browser acceptance. |
| Cashback | Money-normalized earning and redemption, register balance display, frozen liability/breakage accounting, and exact precision-preserving reversals. | Final tagged-package runtime and browser acceptance. |
| Tiers | Tier evaluation, approved BC pricing/POS discount benefits, linked earn multipliers, register tier display, and exact spend/tier reversal. | Final tagged-package runtime and browser acceptance. |
Legacy customer fields
Loyalty Card No. is the customer identity used for loyalty enrollment. Governed Membership, Member Balance, Ledger, Activity, Rule, and Program records are the only current loyalty authority; hidden retired counters are not read by the register or loyalty services.
The Customer 360 open-document section is context only: it shows order and quote counts, not document numbers, totals, invoice history, or a drilldown into the standard customer-document inquiry.
Notes & limits
- Item Rewards are implemented end to end in source. Tender selection creates a protected mapped Commerce Authority line; standard BC posting owns inventory, Item Ledger, Value Entry, actual cost, and COGS. Completion, partial/repeated return, reopen, recompletion, and retry retain exact root and sale-line identity.
- Multi-program returns are durable now. Partial and repeated returns calculate each program's cumulative frozen target and persist only the new delta. Points restore exact redeemed roots; Visit/Stamp and Cashback preserve threshold and precision remainders; Tier returns preserve exact spend reversal and transition. A retry is idempotent.
- Debt and expiration stay truthful. If returned earning was already spent, the signed return debt remains in the governed balance while available redemption is floored at zero; later earning repays that debt first. Value restored to an already-expired root is re-expired immediately in the same operation and never becomes redeemable.
- Lifecycle hardening is implemented. Completion and retries recompute frozen tax/commerce authority, validate persisted loyalty graphs before output, and fail closed on mismatched receipt, reservation-root, or G/L evidence.
- Task 13C lifecycle authority is integrated. Reopening writes an append-only inverse before the basket changes, and recompletion uses the next completion generation. Cancelling an Open sale atomically releases Prepared or Active Value reservations. The completed-cancellation reversal boundary is internal; the public register still permits cancellation of Open sales only. EOD invoice/order retries do not duplicate loyalty Activity, Detail, Ledger, or completion-generation records.
- Refund recovery is supervised. Open Loyalty Refund Recovery to inspect the aggregate parent and exact child leg. Retry Provider retries only an uncertain/unavailable child; Start New Attempt is for a definitive terminal outcome; Record Confirmed Refund requires a provider reference and evidence note; Finalize Return performs no provider call and is enabled only after all active children captured.
- Historical ambiguity remains fail closed. Upgrade materializes uniquely provable legacy refunds. An open
REFUND_PLANorREFUND_HISTORYmigration exception requires exact source-data correction by a supported partner process. Rerun After Correction does not guess missing financial provenance. - Operator surfaces are implemented. The register exposes the active customer's governed balances and tender rewards; manager attention includes debt, expiring lots, refund recovery, and reconciliation; Activity, Reconciliation, and Expiry Audit reports use frozen records.
- Scheduled expiry is implemented. The hourly Job Queue coordinator freezes one run timestamp, isolates membership work, preserves retry evidence, and exposes Expiry Runs plus the Expiry Audit report.
- End-to-end acceptance is pending. Validate sale completion, return, accounting, expiry, reports, and cashier presentation from one tagged package before production use.
Administrator loyalty setup lab
- In a fresh evaluation company, run Demo Data Guide. It creates Draft templates
DEMO-POINTS,DEMO-VISITS,DEMO-TIERS, andDEMO-CASHBACK; it does not activate a financial policy for you. - Open POS Admin > Loyalty Administration > Loyalty Programs. Open each template and inspect its active Rules.
DEMO-VISITSrewards mapped itemDEMO-I1;DEMO-TIERShas BASE/SILVER thresholds and a 5% approved POS discount for SILVER. - For Points and Cashback, confirm the Voucher tender is active, visible at the test terminal, has a BC Payment Method, and settles to the intended direct-posting G/L account. Put that same account in Redemption Expense Account No. when accrual accounting is off.
- Choose Validate. Resolve every named field error. Then choose Activate. Activation freezes the evaluator version and active policy fingerprints.
- Do not edit an activated policy in place. Suspend it, choose Create Policy Version, edit the new draft, validate, and activate it.
Cashier earning and redemption lab
- Open DEMO-T1 and attach
DEMO-C5. Active templates using Auto On Customer Selection enroll idempotently. - Confirm the Loyalty chip shows active memberships, usable units/value, debt, tier, and next expiry. Add an item and confirm the projection refreshes immediately.
- Complete enough eligible sales to cross the configured threshold. Open Tender: Value programs show a server-calculated redemption choice; Item Rewards show the exact earned reward root.
- Complete with Loyalty plus Cash, Card, or On Account. Loyalty remains its own Voucher payment line; it never converts a manual Gift/Voucher line.
- Print a normal receipt and verify frozen earn/redeem detail. Print a Gift receipt and verify customer loyalty information is absent.
Supervisor return and recovery lab
- Return part of a loyalty sale from the original receipt. Confirm only the newly due earning is reversed and redeemed roots are restored exactly.
- Repeat the return, then return the final quantity. Confirm each operation is incremental and a retry does not duplicate ledger, activity, accounting, or provider work.
- If returned earning was already spent, confirm a signed debt remains and available redemption is zero. Later earning must repay debt first.
- Use Loyalty Refund Recovery only for a captured external refund whose local finalization needs attention. Never resend a captured provider leg.
Reports and evidence
- Loyalty Activity Report: Program/customer/date filters over finalized Activity, Detail, and Ledger facts.
- Loyalty Reconciliation Report: Member Balance, Ledger, Accounting, and Reversal evidence; use Attention Only for exceptions.
- Loyalty Expiry Audit: Expiry Run, Detail, Ledger, and Accounting evidence by date and program.
- For acceptance, record the POS sale/document, completion generation, payment line, loyalty operation/root entry, accounting entry/G/L register, return/reversal plan, and report output. Do not capture credentials, tokens, PAN, or provider secrets.