Configuration
Reconciliation is configured in Customer Controlled Configuration, through the Hii Retail Config Portal or its API. Settings are made per store, and most can also be made per workstation. A workstation's value wins for that till. A value set higher in the business unit tree applies to every store below it that has no value of its own.
Every setting has a default in Customer Controlled Configuration. A store that never changes a setting runs with its default, shown in the tables below.
🛑 Check the settings before a store's tills start trading. Transactions are reconciled with the settings in force when they arrive, and changing a setting later does not reprocess them. See What Reconciliation receives.
Tender settings​
rec.tenders-config.v1 holds one entry per tender, set per store. Its default is an empty list: nothing is counted
until you add the tenders. Each entry is the tender's id and a config object:
| Field | Meaning | When not set |
|---|---|---|
doReconcileAmount | the cashier counts the tender's value | not counted by value |
doReconcileQuantity | the cashier counts the number of pieces, for example vouchers | not counted by number |
maxAllowedDeviationAmount | how far one till audit's counted value may differ from the expected value and still be approved | 0: the count must match exactly. A tender whose expected amount is 0 is not checked. |
maxAllowedDeviationQuantity | the same for the number of pieces | 0 |
maxAllowedStoreDeviationAmount | how far the store's total for the day may differ before an explanation is asked for when the day is closed | no store limit |
maxAllowedStoreDeviationQuantity | the same for the number of pieces | no store limit |
defaultInitialBalance | the float a drawer starts with, when floats are FIXED | no float for this tender |
maxAllowedAmount, minAllowedAmount | highest and lowest expected amount in a drawer before a warning is sent. 0 switches the warning off. | no warning |
isCashChanger | the tender is handled by a cash changer, counted in its own till audit | an ordinary drawer tender |
A tender with neither doReconcileAmount nor doReconcileQuantity is shown with its expected amount, but nobody
counts it. Card tenders are usually set up that way.
The tender's name, currency and type come from the tender configuration itself (che.tender), not from these
settings.
Store and workstation settings​
| Setting | Values | Effect | Default |
|---|---|---|---|
rec.accountability-type.v1 | OPERATOR, WORKSTATION, NONE | whose drawer a transaction goes into, see Drawers and floats. 🛑 NONE means the store is not reconciled at all. | WORKSTATION |
rec.maximum-reconciliation-attempts.v1 | a number | counts allowed before a till audit is locked | 3 |
rec.initial-balance-mode.v1 | FIXED, FLUCTUATING | the float is the tender's defaultInitialBalance, or what was counted last time | FIXED |
rec.has-initial-balance.v1 | true, false | false for a till that starts without a float. Per workstation only. | true |
rec.do-auto-create-daily-reconciliation.v1 | true, false | one till audit per drawer per business date. Ignored with FLUCTUATING floats. | false |
rec.do-auto-submit-end-of-day.v1 | true, false | submit the day automatically | false |
rec.reason-code-tender-loan.v1 | a reason code | a paid-in with this reason code is a cash loan from the safe | none |
rec.reason-code-tender-deposit.v1 | a reason code | a paid-out with this reason code is a cash deposit to the safe | none |
rec.do-ignore-tender-pickup.v1 | true, false | ignore transactions that take cash from the drawer to the safe | false |
rec.use-single-cash-changer.v1 | true, false | one cash-changer till audit for the whole store, not one per workstation | false |
rec.do-auto-create-daily-cash-changer-reconciliation.v1 | true, false | one cash-changer till audit per business date | true |
rec.do-include-cash-changer-in-end-of-day.v1 | true, false | the day can close only when the cash changers are counted too | true |
rec.do-ignore-tender-loan-for-cash-changers.v1 | true, false | ignore loans into a cash changer | false |
rec.do-ignore-tender-deposit-for-cash-changers.v1 | true, false | ignore deposits out of a cash changer | false |
Display settings​
These say what the store wants to see and be asked for in the counting and end-of-day screens. Reconciliation stores them. The frontend, such as Hii InStore, reads them to decide what to show. They are set per store.
| Setting | What the store wants | Default |
|---|---|---|
rec.show-deviation-details-in-till-audit.v1 | the deviation per tender shown once a till audit is locked. The API's latest-count deviations (counts:deviations) answer with the deviations only when this is on. | false |
rec.show-deviation-details-in-end-of-day.v1 | the deviation details shown in the end-of-day view | false |
rec.do-display-change-shift.v1 | each till audit shown split into shifts | false |
rec.show-reconciliation-deviations-before-comment.v1 | the deviation per tender shown when the cashier is asked to explain | false |
rec.show-reconciliation-spot-balance-comment.v1 | a comment asked for with each spot count | false |
rec.do-skip-reconciliation-recount-comment.v1 | no comment asked for on a recount outside the limit | false |
If something looks wrong​
| Symptom | Check |
|---|---|
| A store's transactions never show up in any till audit | rec.accountability-type.v1 is NONE for the store or the workstation |
| A tender is not offered for counting, or nothing is | the tender is missing from rec.tenders-config.v1, or has neither doReconcileAmount nor doReconcileQuantity |
| Every count with the smallest difference is rejected | maxAllowedDeviationAmount is not set, so the limit is 0 |
| A count is approved although the drawer holds cash that was not expected | the tender's expected amount was 0, so the tender is not checked |
| A till audit locks too soon, or too late | rec.maximum-reconciliation-attempts.v1, including any value set on the workstation |
| Each cashier's sales end up in the till's audit, or the other way round | rec.accountability-type.v1, including any value set on the workstation |
| The float is wrong, or missing | rec.initial-balance-mode.v1, defaultInitialBalance, and rec.has-initial-balance.v1 on the workstation |
| A new till audit is not started for each day | rec.do-auto-create-daily-reconciliation.v1, which FLUCTUATING floats switch off |
| The day cannot be submitted although every drawer is counted | an open cash-changer till audit; see rec.do-include-cash-changer-in-end-of-day.v1 |
| Cash loans and deposits do not reach the safe | the POS records them as paid-in and paid-out: set the two reason-code settings |