Skip to main content

Integrations

My-Scan doesn't run standalone — it depends on a set of platform and retail systems for identity, configuration, catalog/pricing, payments, and loss prevention. This page describes each of those systems: what it is, why My-Scan needs it, which business flows rely on it, and where to find more detail.

BAS (Basket Audit Service)

What is it? The service that runs a post-checkout rescan or audit session in the Cloud host environment — a store employee re-verifies some or all of a shopper's scanned items.

Why is it needed? Rescan/audit execution is independent of the Core Service, so a rescan can run and report back asynchronously without blocking basket processing.

Which flows use it? Rescan.

Which APIs communicate with it? My-Scan's BasketAuditPushController receives the rescan result (completed / stopped) back from BAS asynchronously; there's no other public API surface documented for this exchange.

Where details can be found? BAS is an external loss-prevention ecosystem service — see Architecture for how it fits alongside the Core Service.

BAES (Basket Audit Evaluation Service)

What is it? The service that evaluates configurable rules to decide whether a basket requires a rescan, and if so, whether it should be a full or partial rescan. Referred to as the "Basket Audit Determination Service" in the My-Scan architecture.

Why is it needed? Rescan determination is rule-driven and can change independently of the Core Service's own logic, so it's evaluated by a dedicated service rather than hardcoded into checkout.

Which flows use it? Rescan.

Which APIs communicate with it? The Core Service calls BAES to evaluate rescan rules and receives a Full / Partial / none decision; no public API is documented for this call.

Where details can be found? Like BAS, BAES is an external loss-prevention service — see Architecture.

CCC (Customer Controlled Configuration)

What is it? The platform-wide configuration system used across Hii Retail products to store tenant- and store-level settings (config kind/target/value model).

Why is it needed? Many of My-Scan's behaviors are configurable per tenant or store — for example whether certain totals are shown in the basket, and whether abandoned baskets automatically block the customer — and CCC is the platform's standard mechanism for that kind of configuration.

Which flows use it? Price Calculation (tenant/store-configured net price display) and Abandoned Trips (the EnableCustomerBlockingForAbandonedTrips setting).

Which APIs communicate with it? Not documented for My-Scan specifically today — the flows above describe configuration values MyScan reads, not the CCC API calls that resolve them.

Where details can be found? Customer Controlled Configuration. For the target/inheritance model and how My-Scan resolves tenant- and store-scoped settings, see Configuration.

IAM (Identity and Access Management)

What is it? Hii Retail's platform identity service — issues and validates the bearer tokens used to authenticate API calls, and manages tenants, users, and permissions.

Why is it needed? Every inbound Shopper, POS, and Administration API request to My-Scan must carry an Authorization: Bearer <token> header issued by IAM (or OCMS/workload identity), plus a Tenant-Id resolved from the token.

Which flows use it? Authentication is required for every flow — see Authentication Flow and the Quick Start prerequisites.

Which APIs communicate with it? My-Scan doesn't call IAM APIs directly at request time — it validates bearer tokens issued by IAM against the request's Authorization header.

Where details can be found? Identity & Access Management.

OCMS (Oauth2 Client Management Service)

What is it? The service used to issue and manage OAuth2 clients and tokens, including service-to-service (workload identity) tokens.

Why is it needed? In the Cloud host environment, My-Scan authenticates inbound requests and authenticates its own outbound service-to-service calls using tokens issued via OCMS or workload identity; Tenant-Id also falls back to configured OCMS settings when it's absent from the token claims.

Which flows use it? Authentication is required for every flow — see Authentication Flow and the Quick Start prerequisites.

Which APIs communicate with it? My-Scan's outbound workload identity authenticator fetches scoped tokens from OCMS for calls to other services; inbound requests are validated against tokens OCMS issued.

Where details can be found? Oauth2 Client Management Service (OCMS).

PnP (Products and Prices)

What is it? The product, price, and promotion platform — the source of item, pricing, and promotion data for retail products.

Why is it needed? My-Scan resolves every scanned barcode to item description, price, promotions, and age/security attributes via a configurable price engine (or the ItemData Service for on-prem), backed by product and pricing data from this platform.

Which flows use it? Item Scanning and Price Calculation.

Which APIs communicate with it? Not documented for My-Scan specifically — item/price resolution is described functionally (via the Checkout Engine / ItemData Service) rather than as a direct PnP API integration in the current MyScan docs.

Where details can be found? Products, Prices & Promotion.

SSA (Self-Service Analytics)

What is it? The reporting service that receives finalized transaction data from self-service checkout flows.

Why is it needed? After a ticket is uploaded by a POS, My-Scan forwards the transaction to SSA for reporting, so completed self-scan transactions are visible for analytics regardless of which host environment processed them.

Which flows use it? POS Handover.

Which APIs communicate with it? My-Scan forwards a POS transaction event to SSA after ticket upload; no public API reference is documented for this exchange.

Where details can be found? SSA has no separate public documentation today — see Architecture: Event Flow for the one place it's currently described.

Socket.IO

What is it? The real-time messaging protocol underlying the Hii Retail Attendant / PubSub integration that My-Scan publishes events to.

Why is it needed? My-Scan uses this channel to publish basket-lifecycle and assistance events (e.g. BasketUpdated) so store attendants and monitoring tools receive live updates without polling, and to receive control-resolution events back.

Which flows use it? Age Verification (assistance/control requests to an attendant) and the basket lifecycle events described in Event Flow.

Which APIs communicate with it? My-Scan publishes the BasketUpdated event (mys.public.event.basket-updated.v1) and assistance-request events via the Attendant/PubSub integration; see the Attendant API's Socket.IO topics for the consuming side.

Where details can be found? Attendant API — Socket.IO and Socket.IO Service.

POS (Point of Sale / SCO)

What is it? The in-store point-of-sale or self-checkout terminal that a shopper's basket can be handed off to for payment, instead of paying on their own device.

Why is it needed? Not every shopper pays on their device — POS handover lets a finalized basket be downloaded, paid at a till or SCO, and the payment result reported back, while My-Scan prevents double-processing by blocking downloads during an active payment.

Which flows use it? POS Handover and Payment (the "cannot be downloaded while payment is in progress" rule).

Which APIs communicate with it? The POS API — download the finalized ticket, then upload the payment result back to My-Scan.

Where details can be found? POS API reference and POS Handover.

HiiConnect

What is it? Hii Retail's payment platform, which connects to payment service providers (PSPs) such as Softpay for processing and reversing payments.

Why is it needed? When a shopper pays directly on their device, My-Scan's payment processing and reversal calls are handled through this platform rather than integrating with each PSP individually.

Which flows use it? Payment.

Which APIs communicate with it? My-Scan's payment processing and reversal calls, described functionally in Payment as calls to the "Payment Provider"; no dedicated My-Scan-facing HiiConnect API is documented here today.

Where details can be found? Hii Connect — Card & Gift Card Payments.

Softpay

What is it? A payment service provider (PSP) connector, integrated via HiiConnect, that lets a shopper pay directly from the My-Scan mobile app.

Why is it needed? It's the mechanism behind My-Scan's direct mobile payment option, as an alternative to POS handover.

Which flows use it? Payment — specifically direct mobile payment.

Which APIs communicate with it? My-Scan's payment processing call, routed through HiiConnect rather than integrating with Softpay directly.

Where details can be found? Softpay is documented as a PSP connector under Hii Connect — Card & Gift Card Payments.