OASIS v6.0
Release date: May 23rd, 2025
OASIS 6.0 is a major update packed with new features and enhancements designed to optimize and elevate the quality of AiFi's Spatial Intelligence Products. This release focuses on providing clients with advanced tools and APIs to understand customer behavior, streamline operations, and customize the end-user experiences.
AI for Spatial Understanding
Smarter, Faster Shopper Tracking
We've significantly upgraded our people-tracking system to offer greater accuracy, smoother performance, and improved support for high-traffic environments. This ensures more reliable shopper journey tracking, even in busy stores. Key enhancements reduce false identifications and improve how we follow individuals across the space—making the tracking services more precise and dependable.
More Stable Video Processing
We revamped an important internal service, and improved the overall stability and performance of video processing. Now with smarter error handling, better monitoring, and more consistent video output. This results in smoother integration with visual systems and faster access to the footage by downstream services.
Frictionless Commerce
Integrations & Systems
Fortress integration
Fortress powers a Loyalty application that supports numerous teams and clubs across the USA and Europe, enhancing customer experiences. The new integration between AiFi and Fortress, enables clients to offer their loyal customers exclusive discounts and the ability to pay with loyalty points at all AiFi-powered autonomous stores.
Shopify Integration is discontinued
AiFi has discontinued support for Shopify integration. AiFi now offers a few options for Order Calculations, such as AiFi Tax, Avalara and Oracle Simphony integrations that support all major required features, such as product inventory management, bottle deposits, and tax handling.
AiFi Tax - Bottle deposit
AiFi Tax, our tax-calculator service now allows to configure bottle deposit fees and assign them to products. This allows to charge customers with an additional non-taxable fee upon checking out with the applicable products. Bottle deposit fees are excluded from revenue calculation - they're not taxable and are reported separately in the Products per Receipt and Products Taxation reports.
RFID products support
A cutting-edge RFID service is now transforming frictionless retail by seamlessly connecting vision-based systems with rich product data. By linking RFID tag reads to specific shopper behaviors, retailers can now accurately identify product variants—such as sizes, styles, and colors—with unprecedented precision. This breakthrough delivers deeper product-level insights, enhances inventory accuracy, and captures in-store interactions with exceptional fidelity. The result? Smarter merchandising, better stock management, and a truly elevated shopping experience.
API Improvements
IMPROVED Shopper ID in webhooks and API
We now add a new entity: shopperId in the webhooks and APIs. While customer
entity represents a group of people joined by a payment method, shopper
represents a unique tracked shopper inside the store. It's useful for the
following real-time scenarios:
- Detect individual shoppers entering or leaving the zone/store (previously you would only track that someone from the group entered the zone, but wouldn’t know who, if it's a repeated shopper or not)
- Track shopper-level flags for use-cases like alcohol checking: instead of
checking everyone in the group, only check the shopper who has
restricted_interactionflag - Track shopper-level interactions to prevent fraud, and spot-check less people
Webhooks: checkout_zone/entered, checkout_zone/left Endpoints:
/admin/v2/stores/{storeId}/zones/{zoneId}/shoppers
{
"sessionId": "d3a00526-1864-4f6e-bb2d-46e3ab7fa780",
"session": {...},
"customer": {
"externalId": "string",
"metadata": {},
"id": "string",
"role": "customer"
},
"storeId": 0,
"store": {...},
"storeExternalId": "string",
"timeOfOrigin": "2019-08-24T14:15:22Z",
"timeOfIssue": "2019-08-24T14:15:22Z",
"checkoutZoneId": "string",
"specialAttention": true,
"shoppingSessionFlags": [],
"shopper": {
"shopperId": "string",
"shopperFlags": "POTENTIALLY_INTERACTED_WITH_ALCOHOL",
"interactionsCount": 0,
"restrictedInteractionsCount": 0
},
"cart": [{...}]
}
IMPROVED Interaction counts (shopper and session)
We've improved the AI-powered service that allows retailers to retrieve information about shopper interactions. The API now exposes interaction counts: how often the shopper interacted with gondolas, which is useful for estimating the likelihood of fraud and interactions with restricted items.
Note: Interactions are available both on shopper level and on session level (aggregated of interactions of all shoppers in the group).
"shopper": {
"shopperId": "string",
"shopperFlags": "POTENTIALLY_INTERACTED_WITH_ALCOHOL",
"interactionsCount": 0,
"restrictedInteractionsCount": 0,
"reappeared": true
}
NEW Zone list API
It's now possible to query list of zones via API.
[
{
"id": "string",
"labels": ["none"],
"name": "string"
}
]
NEW Metadata dictionary for customer and session
A free-form metadata object was added to both customer and session entities.
It’s a storage object that can be used for storing arbitrary data.
Metadata object, customer level
Best suited for long-lived customer-related properties.
"customer": {
"id": "42",
"externalId": "my-customer-94325",
"role": "customer",
"metadata": {
"exampleKey": "exampleValue"
}
}
Metadata object, session level
Best suited for short-lived properties specific to a shopping trip.
"metadata": {
"events": [...],
"exampleKey": "exampleValue"
}
NEW Adding event to a shopper
Retailers can assign products to specific shoppers in real time.
Example Flow:
- Shopper steps into a zone in front of a bar.
- Employee opens application to see people in the zone.
- Employee selects the person; item is assigned to their receipt.
Endpoint: POST /api/admin/v2/stores/{storeId}/events/handoff
{
"uuid": "04178fa1-0b07-4e3f-b3ca-6c60d528cf82",
"timestamp": 1611928852,
"products": [
{
"productReference": "1234567890128",
"quantity": 1,
"referenceType": "barcode"
}
],
"metadata": "{\"key\": \"value\"}",
"shopperId": "string"
}
NEW Zone API with shopper faces
Returns shoppers in a zone, with facial images and coordinates for the last 5 minutes.
{
"storeId": 0,
"storeExternalId": "string",
"store": {
"oasisApiStoreId": 0,
"aifiUniqueStoreId": "string"
},
"cameraImages": [
{
"cameraId": 0,
"frameUri": "string"
}
],
"shoppers": [
{
"shopper": {
"shopperId": "string",
"shopperFlags": ["POTENTIALLY_INTERACTED_WITH_ALCOHOL"],
"faceCoordinates": [
{
"cameraId": 0,
"location": {
"topLeft": { "x": 0, "y": 0 },
"bottomRight": { "x": 0, "y": 0 }
}
}
],
"interactionsCount": 0,
"restrictedInteractionsCount": 0
},
"session": {},
"customer": {},
"enteredAt": "2019-08-24T14:15:22Z"
}
]
}
NEW Spatial AI APIs
APIs for 3rd-party hardware interactions inside the store.
Example Flow:
- Shopper interacts with device.
- Retailer sends event via spatial API.
- AiFi sends webhook with session and shopper IDs.
Endpoint: POST /api/v1/spaces/1/interaction/code-scan
{
"eventId": "70d68692-21e5-4cb3-8b18-fdf29c9f2278",
"locationId": "94fce589-fa98-4dfd-bc56-26526174e8a2",
"timeOfOrigin": "2024-11-20T11:58:46Z",
"metadata": {
"test": "true"
}
}
{
"eventId": "{initial-event-id}",
"association": {
"actor": {
"id": "{recognized-shopper-id}",
"oasisExtraMetadata": {
"session": {
"id": "{recognized-session-id}"
},
"shopper": {
"id": "{recognized-shopper-id}"
}
}
}
},
"metadata": {
"string": "{same-metadata-sent-initially}"
},
"timeOfIssue": "2024-11-20T11:58:46Z",
"timeOfOrigin": "2024-11-20T11:58:46Z"
}
NEW Notification about interactions with restricted products
Webhook triggers after shopper interacts with restricted products.
Webhook: /restricted-products-interactions
{
"sessionId": "d3a00526-1864-4f6e-bb2d-46e3ab7fa780",
"customer": {},
"storeId": 0,
"store": {},
"storeExternalId": "string",
"timeOfOrigin": "2019-08-24T14:15:22Z",
"timeOfIssue": "2019-08-24T14:15:22Z",
"eventId": "string",
"shopper": {},
"session": {},
"shoppingSessionFlags": ["POTENTIALLY_INTERACTED_WITH_ALCOHOL"],
"productIds": ["string"],
"gondolaIds": [0]
}
Shopper Experience
Entry Displays
Phone verification process
To help reduce fraud, we’ve added the ability to require phone number verification before entering a store. When enabled, users must verify their phone with a one-time code.

Customizable Terms & Conditions
You can now add fully configurable Terms & Conditions across multiple screens in the user flow. The text is viewable in full screen, and you can choose whether users must accept via checkbox before proceeding.

Customizable Consent Screens
You can now add fully customizable consent screens to the store entry flow:
- Add multiple screens shown in sequence
- Customize header, message text, button labels, and icon (including icon color)
- Configure one of the buttons to block store entry and reset the flow if selected
This gives you full control over user consent and messaging before store access.
