Skip to main content

The Reconciliation API

Hii InStore does everything through this API, and so can your own client. This page groups the endpoints by what they are for. The API reference has the request and response schemas.

Base URL: https://reconciliation.retailsvc.com

Calls need a Hii Retail IAM token and the permission named for each endpoint below. Paths take the store's businessUnitId, and the till audit's reconciliationId where it applies.

Finding till audits and what to count​

EndpointPermissionAnswers
POST /api/v1/business-units/{businessUnitId}/reconciliations:search?skip=&take=rec.reconciliations.searchwhich till audits exist. Filter by status, operatorId, workstationId, reconciliationType, reconciliationDate.
GET /api/v1/business-units/{businessUnitId}/reconciliations/{reconciliationId}/entriesrec.tenders.getthe tenders and items to count in this till audit
GET /api/v1/business-units/{businessUnitId}/reconciliations/{reconciliationId}/sign-in-statusrec.reconciliations.get-sign-inwhether the cashier is still signed in at the till

Counting and approving​

EndpointPermissionDoes
POST /api/v2/business-units/{businessUnitId}/reconciliations/{reconciliationId}/counts:countrec.counts.countthe cashier's count. Answers APPROVED, REJECTED or LOCKED, with the attempts left.
GET /api/v2/business-units/{businessUnitId}/reconciliations/{reconciliationId}/counts:deviationsrec.counts.get-deviationsthe deviation per tender in the latest count, for a locked till audit. Empty unless rec.show-deviation-details-in-till-audit.v1 is on for the store.
GET /api/v1/business-units/{businessUnitId}/reconciliations/{reconciliationId}/counts-deviationsrec.counts.get-deviationsthe deviation per tender in the latest count, whatever the status and setting
POST /api/v1/business-units/{businessUnitId}/reconciliations/{reconciliationId}:approverec.reconciliations.approveapproves a locked or open till audit, with the explanation in comment
POST /api/v1/business-units/{businessUnitId}/reconciliations/{reconciliationId}:commentrec.counts.recountadds or changes the comment on the latest count, spot count or recount, chosen with countType. ⚠ Always send countType: without it, the call also approves an open or locked till audit.

A count is a list of counted tenders, each with an amount, a quantity, or denominations, and a list of counted items. How the answer is decided is in Counting the till.

The store manager's review​

EndpointPermissionDoes
POST /api/v2/business-units/{businessUnitId}/reconciliations/{reconciliationId}/counts:spotrec.counts.spota spot count. Answers whether the drawer is within the limits now, with the deviations.
POST /api/v2/business-units/{businessUnitId}/reconciliations/{reconciliationId}/counts:recountrec.counts.recounta recount of a completed till audit, with an optional comment
GET /api/v1/business-units/{businessUnitId}/reconciliations/{reconciliationId}/counts:historyrec.counts.get-historyevery count made on the till audit, optionally by countType: COUNT, SPOT or RECOUNT
GET /api/v2/business-units/{businessUnitId}/reconciliations/{reconciliationId}/grouped-counts:deviationsrec.counts.get-deviationsthe deviation per shift
GET /api/v1/business-units/{businessUnitId}/reconciliations/{reconciliationId}/cash-reportrec.reconciliations.cash-reportthe till audit's cash movements, opening amount, expected and counted amounts

Closing the day​

EndpointPermissionDoes
GET /api/v1/business-units/{businessUnitId}/reconciliations:totals?reconciliationDate=rec.counts.get-expectedthe store's totals per tender for a business date: expected, counted, deviation and the store-level limits
GET /api/v2/business-units/{businessUnitId}/reconciliations/end-of-day:not-submittedrec.end-of-day.get-not-submitthe business dates whose day has not been submitted yet
POST /api/v1/business-units/{businessUnitId}/end-of-day:submitrec.end-of-day.submitsubmits the day. Body: endOfDayDate and an optional comment.
GET /api/v1/operational-status?from=&to=rec.end-of-day.get-overviewacross stores, each business date's status: error when the day was not submitted, warning when it was submitted with an explanation for a deviation, ok otherwise

The rules for submitting are in Closing the day.

For the POS​

EndpointPermissionAnswers
GET /api/v1/business-units/{businessUnitId}/reconciliations/is-active?workstationId=&operatorId=&date=rec.reconciliations.status, or a workload identity token with the Tenant-Id headerwhether the till or cashier has an open till audit. If not, the answer includes the float to suggest per tender.

Asynchronous effects​

A count, an approval, a recount or a day submission is answered at once. The events it leads to, such as reconciliation-completed, and the update of the safe in Cash Management, follow within seconds. Read the results from the events rather than polling. See Receiving the events.