Proximity Insight · Platform capability overview

The Loop

Clienteling for the AI era. One connected system that turns everything happening in your stores into smarter customer relationships — constantly learning, constantly adapting, and pulling the levers that grow the business: automatically, measurably, and safely.

Behaviour and activity feed the platform. The platform analyses it and reacts with meaningful, relevant signals, which influence behaviour and activity — over and over. The more times the loop runs, the more targeted the signals get.

Why it exists: clienteling is the foundation

Everything on this page serves one relationship: an associate and a customer. The platform gives every associate a Customer 360 that knows the whole story, a unified inbox where the conversation lives — email, SMS and WhatsApp in one thread — capture at the counter that starts a relationship in seconds, and Next Best Actions that say exactly who to reach, why, and when.

The loop is what makes that relationship smarter every time it turns: activity becomes insight, insight becomes an action in an associate's hands, the outcome is measured, and the next suggestion is better than the last.

Most retail platforms have some of these pieces. What makes this one different is that every stage is one connected system, out of the box — the output of each stage is the verified input of the next, every decision can explain itself, and the loop measures its own effect instead of asserting it. And it runs in real time: no overnight batches — actionable insights refresh in seconds — so the platform influences people in the moment, while the customer is still in the store, still in the conversation, still in the basket. Nothing here is a roadmap slide: every capability on this page runs today, end to end, on a demonstration tenant you can see live.

flowchart LR
  A(["Store & customer
activity
sales · captures · messages"]):::world B(["Sense
every signal,
one fabric
"]):::cap C(["Understand
Insight Warehouse —
always fresh
"]):::cap D(["Think
scores, segments,
governed AI
"]):::cap E(["Act
NBAs & journeys,
guarded
"]):::mid F(["Learn
uplift vs
held-back control
"]):::brass A --> B --> C --> D --> E --> F F -. "every turn gets smarter" .-> A linkStyle 5 stroke:#A87E3F,stroke-width:2.5px classDef world fill:#2B3036,stroke:#4E5651,color:#F2EFE6,stroke-width:1px classDef cap fill:#1E4D40,stroke:#163A30,color:#F2EFE6,stroke-width:1px classDef mid fill:#2E6B5A,stroke:#1E4D40,color:#F2EFE6,stroke-width:1px classDef soft fill:#E7EEE9,stroke:#B9CCC2,color:#1E3A30,stroke-width:1px classDef brass fill:#A87E3F,stroke:#8A6630,color:#FFF8EA,stroke-width:1px classDef guard fill:#3A3F45,stroke:#A87E3F,color:#F2EFE6,stroke-width:2px
The loop: six stages, one system. Outcomes feed the next turn — the platform gets more targeted the longer it runs.

The six stages, in detail

1Sense — every signal, one nervous system

Nothing that happens is lost

Every sale, capture, message, appointment, service case, product import and segment change publishes a named business fact onto the platform's internal messaging fabric — not raw database noise, but events with meaning: a sale completed, a customer was captured, someone entered a segment.

2Understand — a real warehouse, built by configuration

The Insight Warehouse

Not a BI export bolted on the side — a genuine analytical layer inside the platform. Each dataset is a configuration document: what it derives from, how it aggregates, which events keep it fresh, and the quality checks it must pass. Adding a new dataset is authoring, not an engineering project.

3Think — customer insight that shows its working

The platform's core currency

On top of the warehouse, the platform computes customer insight per customer, from their real history: recency-frequency-monetary standing, predicted lifetime value, churn risk, engagement, lifecycle stage, category and brand affinity, price point. It refreshes on every relevant event as well as on schedule, and it surfaces exactly where the relationship happens — the Customer 360 an associate opens before saying hello.

4Speak — governed AI throughout

Augmented intelligence: AI where it earns its keep, governed everywhere

The design philosophy is augmentation. AI drafts, suggests, summarises and explains; associates and the deterministic engine decide. It makes the associate faster and the platform more articulate — it never replaces the relationship, and it never gets the last word on a customer.

AI sits at the heart of the platform — and the platform is AI-ready out of the box: connect one key and seven AI capabilities light up everywhere language helps; remove it and everything still runs on its deterministic baseline. All of it flows through one governed gateway: the AI can only choose from what the platform hands it, spend is metered to the cent against a monthly budget you set, and every surface degrades gracefully when there is no key, no budget, or no signal.

Ask it — real questions, live answers

5Act — insight in an associate's hands

Actionable Insights: the heartbeat

Intelligence that stays on a dashboard is decoration. Here it lands as Actionable Insights — Next Best Action cards on an associate's home screen that read like a colleague's advice, not a task queue. The name is the promise: not a report to interpret, an action to take, with the insight attached:

For anything longer than one decision, Customer Journeys: multi-step sequences that enrol on any signal, wait durably for days if needed (a wait can hold for the customer's best contact window), branch on the customer's intelligence, act through cards or messages, and exit the moment the goal is reached — a customer who buys leaves the winback journey immediately.

Consent and contact guardrails are decided once, at the platform's choke points, and every acting surface inherits them: opt-outs always win, frequency caps stop pressure stacking, quiet hours have the last word — and a refusal is a recorded outcome, never a failure and never a silent drop.

flowchart LR
  E(["Signal fires
capture · purchase · segment entry"]):::world --> H{"Hold-back
draw"}:::brass H -->|"control group"| HB(["Recorded, not actioned
the honest comparison"]):::soft H -->|"enrolled"| W(["Wait
durable — hours or days,
optionally until their best window
"]):::cap W --> B{"Branch on their
intelligence"}:::brass B -->|"high value"| A1(["Personal outreach card
to their associate"]):::cap B -->|"otherwise"| A2(["Guarded message
consent checked at send"]):::guard A1 --> G{"Goal met?
they purchased"}:::brass A2 --> G G -->|"yes — any time"| X(["Exit immediately"]):::mid G -->|"not yet"| W2(["Next step…"]):::soft classDef world fill:#2B3036,stroke:#4E5651,color:#F2EFE6,stroke-width:1px classDef cap fill:#1E4D40,stroke:#163A30,color:#F2EFE6,stroke-width:1px classDef mid fill:#2E6B5A,stroke:#1E4D40,color:#F2EFE6,stroke-width:1px classDef soft fill:#E7EEE9,stroke:#B9CCC2,color:#1E3A30,stroke-width:1px classDef brass fill:#A87E3F,stroke:#8A6630,color:#FFF8EA,stroke-width:1px classDef guard fill:#3A3F45,stroke:#A87E3F,color:#F2EFE6,stroke-width:2px
A journey's life: hold back a control group, wait durably, branch on who the customer is, act through guarded paths — and leave the moment the goal is reached.
6Learn — the loop proves itself

The stage most platforms skip

+41.7 pts
purchase-rate uplift on the demonstration winback journey — measured against a held-back control group, not asserted
Seconds
from a sale at the till to refreshed insight, segment moves and journey goal checks
7
AI capabilities under one governed, metered, switchable gateway

Sixty seconds after a sale

The clearest way to see the loop is to follow one receipt. A customer buys a coat at the till. Watch what the platform does — all of it automatic, none of it configured for this specific sale:

That is the loop in one minute of real time: sense, understand, think, act, learn — from a single receipt.

Journeys the loop makes better

Customer journeys

The store colleague's day

All joined up — out of the box

This is the part that is genuinely hard to build and impossible to fake: every capability below ships connected to the others. One sale at the till touches all of them, with no integration project.

flowchart TD
  subgraph IN["  What happens  "]
    S1(["Sale at the till"]):::world
    S2(["Customer captured"]):::world
    S3(["Message · appointment · case"]):::world
    S4(["E-commerce & imports"]):::world
  end
  HUB(["Signal fabric
durable · self-healing · PII-free"]):::cap S1 --> HUB S2 --> HUB S3 --> HUB S4 --> HUB subgraph UNDERSTAND[" Understand "] WH(["Insight Warehouse
facts & marts"]):::cap ATT(["Sales attribution
who influenced this sale"]):::mid end HUB --> WH HUB --> ATT subgraph THINK[" Think "] CI(["Customer insight
value · churn · lifecycle · affinity"]):::cap SEG(["Living segments"]):::mid REC(["Recommendations
from your own transactions"]):::mid end WH --> CI CI --> SEG WH --> REC subgraph ACT[" Act "] NBA(["Next Best Actions
why · worth · moment"]):::cap JRN(["Customer journeys
wait · branch · act · exit on goal"]):::cap end SEG --> NBA SEG --> JRN CI --> NBA REC --> NBA GUARD(["Consent · opt-outs · frequency caps · quiet hours
decided once, inherited everywhere"]):::guard NBA --> GUARD JRN --> GUARD GUARD --> OUT(["Outreach &
associate action"]):::world OUT --> MEAS(["Measured outcomes
uplift vs held-back control · best contact windows"]):::brass MEAS -. "tunes the next suggestion" .-> NBA OUT -. "back into the loop" .-> HUB linkStyle 17,18 stroke:#A87E3F,stroke-width:2.5px classDef world fill:#2B3036,stroke:#4E5651,color:#F2EFE6,stroke-width:1px classDef cap fill:#1E4D40,stroke:#163A30,color:#F2EFE6,stroke-width:1px classDef mid fill:#2E6B5A,stroke:#1E4D40,color:#F2EFE6,stroke-width:1px classDef soft fill:#E7EEE9,stroke:#B9CCC2,color:#1E3A30,stroke-width:1px classDef brass fill:#A87E3F,stroke:#8A6630,color:#FFF8EA,stroke-width:1px classDef guard fill:#3A3F45,stroke:#A87E3F,color:#F2EFE6,stroke-width:2px
One sale updates the warehouse, rescores the customer, moves segments, checks journey goals, credits the associate — and the measured outcome tunes the next suggestion.

Customer 360

History, insight scores, open conversations, appointments, cases and next actions on one screen — with "why" one click away on every derived number.

Unified inbox

Email, SMS and WhatsApp in one thread per customer, with AI reply suggestions in the brand's voice, summaries and sentiment.

Next Best Actions

Suggested by rules and AI, ranked by learned value, timed to the customer's best window, completed on real outcomes.

Customer journeys

Enrol on any signal, wait durably, branch on intelligence, message through the guarded path, exit on goal — with a control group held back per journey.

Living segments

React to events in seconds; every entry and exit is a signal that can raise actions, enrol journeys, or notify external systems.

Customer insight scores

Value, churn risk, engagement, lifecycle, affinity — computed from real history with business-time correctness, explained in the glass box.

Recommendations

Bought-together, complementary and popularity models built from the retailer's own orders — feeding cards, baskets and outreach.

Insight Warehouse

Declarative datasets with quality gates, event-driven freshness and structural GDPR erasure — the trusted ground every decision stands on.

Ask-anything analytics

Plain-English questions answered live from a governed measure catalogue — including "who is our best customer and what should we do next?"

Sales attribution

Multi-touch credit for the associates whose captures, messages and appointments led to the sale — automatic, per transaction.

Proven uplift

Deterministic holdout groups at every decision point; contacted-vs-held-back results per nudge, segment and journey, on a screen.

The glass box

Every decision the brain makes — segment moves, actions raised, journeys enrolled, timing learned, AI spend — visible and explainable.

Capture at the counter

A relationship starts in seconds at the till — consented, deduplicated, immediately scored, and immediately eligible for a welcome journey.

Appointments & events

Bookings are both a signal into the loop and an action out of it — a card can propose the appointment that wins the customer back.

Service cases

An opened case is a signal: resolve it through SLA-tracked workflow, then let the loop raise the relationship-repair action that follows.

Abandoned baskets

An e-commerce basket left behind becomes a personal nudge to the customer's own associate — recovery through relationship, not another automated email.

Best contact windows

The platform learns when each customer actually engages — morning, afternoon, evening — advises the card, and lets journeys wait for the moment.

Outbound webhooks

Every signal in the loop can also notify your other systems — durable, retried, and observable — so the loop extends beyond the platform.

"If we're using AI, how do we secure our sensitive data?"

Sending customer data to a cloud AI needs a real answer — how do we get the benefit while keeping sensitive data safe?

1 · The AI sees signals, not identities

Every AI feature has a fixed, code-enforced contract of what it may see. Next-best-action suggestions are generated from behavioural signals — lifecycle stage, spend level, churn risk, interests, top categories — never a name, email, phone number or address. The AI advises on "a high-value customer at risk of lapsing", not on a person it can identify.

2 · Questions go to the AI — your data does not

When someone asks "how much did we take this month?", the AI sees the question and a catalogue of available measures — the answer is computed inside the platform's own warehouse, and the data never leaves. "Who is our best customer?" never sends your customer list anywhere: the ranking is deterministic, in-platform, over a fixed set of approved measures.

3 · AI proposes; the platform decides

Every AI output is a suggestion, validated against strict schemas before anything happens. No score, value or number a decision rides on is ever AI-computed — scoring is deliberately deterministic. And consent, opt-outs, frequency caps and quiet hours are enforced by the platform after the AI, every time, without exception.

4 · Your key, your agreement, your budget

Each retailer connects their own AI provider key, so data flows under their own commercial agreement with the provider — under Anthropic's API terms, inputs and outputs are not used to train models. Spend is capped by a hard monthly budget, and every single call is audited: which feature, how many tokens, what it cost, whose key.

5 · Every AI capability is opt-in, and fails safe

A master switch plus a switch per capability. The features that do see message text — reply drafting and conversation summaries — are individually opt-in, and even they see role-labelled conversation content, not contact records. No key, no budget, or switched off? The platform runs its deterministic baseline — the loop works fully without AI; AI makes it better, never dependent.

flowchart LR
  subgraph PLATFORM["  Inside the platform — sensitive data stays here  "]
    CRM(["Customer records
names · contacts · addresses"]):::world WH2(["Insight Warehouse
transactions · history"]):::cap SIG(["Behavioural signals
lifecycle · spend level · churn · interests"]):::mid ANS(["Answers & rankings
computed in-platform"]):::cap CRM -.->|"derives"| SIG WH2 -.->|"derives"| SIG end GATE{"Governed AI gateway
per-capability switches ·
budget · audit
"}:::brass SIG ==>|"signals only"| GATE Q(["Plain-English questions
+ measure catalogue"]):::soft ==> GATE GATE ==> LLM(["Cloud AI
your key, your agreement"]):::guard LLM --> PROP(["Proposals & wording"]):::soft PROP --> VAL(["Schema validation ·
consent & guardrails"]):::cap VAL --> ANS style PLATFORM stroke:#1E4D40,stroke-width:2px classDef world fill:#2B3036,stroke:#4E5651,color:#F2EFE6,stroke-width:1px classDef cap fill:#1E4D40,stroke:#163A30,color:#F2EFE6,stroke-width:1px classDef mid fill:#2E6B5A,stroke:#1E4D40,color:#F2EFE6,stroke-width:1px classDef soft fill:#E7EEE9,stroke:#B9CCC2,color:#1E3A30,stroke-width:1px classDef brass fill:#A87E3F,stroke:#8A6630,color:#FFF8EA,stroke-width:1px classDef guard fill:#3A3F45,stroke:#A87E3F,color:#F2EFE6,stroke-width:2px
What crosses the boundary: signals and questions. What never does: names, contact details, addresses, or your customer list.

Configurable and extensible — by design

Everything above is configuration, not code. That is what makes the loop deployable per brand, per market, per tenant — and extensible without waiting for a platform release.

You want to…You author…
Track a new measureOne dataset or measure definition — instantly askable in plain English
Target a new audienceA segment definition — reactive membership, transitions raising actions, from day one
Automate a new momentA journey on the visual designer — enrol, wait, branch, act, exit on goal
Change how actions are suggestedSwap the suggestion provider — rules, AI, or your own propensity model, per tenant
Shape any behaviour per brandTenant scripts and hooks at the platform's extension points
Orchestrate anything elseThe general workflow engine — 25+ step types behind the same designer that builds journeys

Journeys themselves are proof of the design: they run on the same general workflow engine — 25+ step types behind one visual designer — that powers catalogue imports, integrations and scheduled operations across the platform. Build a journey today and you are using the same muscle that moves a quarter-million-product catalogue tonight.

And every switch — pillars, AI capabilities, budgets, holdout share, guardrails — is per tenant, so one platform serves many brands at different stages of adoption, safely.

What a retailer gets out of it

The loop's outcomes are the ones a board actually cares about — and each one is a direct consequence of a stage above, not a hope:

Put together, that is the competitive position: a brand that engages more — and more personally — with every customer than its competitors can, while running leaner: one connected system doing the work of a CDP, a campaign tool, a BI stack, a clienteling app and an automation platform stitched together.

And underneath those, the operational wins:

…and the loop is one pillar of a whole platform

Everything above rides on — and feeds — the rest of the platform: full point-of-sale and commerce (baskets, pricing, promotions, discounts, gift cards), order management and in-store fulfilment (pick, pack, dispatch, reserve & collect, the stock ledger), appointments and events, service cases with SLA hooks, unified communications across providers, and multi-touch sales attribution.

It is multi-tenant to the core, integrates first-class with Salesforce, Shopify, Akinon, SAP and commerce clouds — catalogue imports measured in hundreds of thousands of products — and every capability, including this entire loop, is configured, observed and explained from one Console.

And crucially, the loop is not a module or an add-on: it is foundational — first-class, native, and glued into every pillar of the solution. The till feeds it, the inbox feeds it, the appointment book feeds it, the case queue feeds it — and every one of those surfaces gets smarter because of it. No connectors, no sync jobs, no second system of record.

Native, yet loosely coupled — and that is deliberate. Every stage talks to the next through events and contracts, never hard wiring, so any stage can be swapped without touching the rest: bring your own propensity model, Snowflake-computed scores, or another intelligence engine or data warehouse behind the same contracts — they land in the same action cards; swap messaging providers; swap AI providers; point a stage at your own systems. Loose coupling is how this architecture is always designed. The loop ships complete out of the box — and opens up wherever you want to bring your own.

The loop is the brain; the platform is the whole body it thinks for.