Skip to content
oozmi

Give sales the customer truth before the call.

Orders, invoices, tickets, credit state, loyalty and store credit, and storefront behavior on one record — because finance, support, and the store write to it too. No tab chase, no reverse-ETL, no version of the account that lives only in sales.

Problem

Before the call, your rep rebuilds the customer from five tabs. None of them agree.

The renewal call is in ten minutes. Finance has one number, the storefront has another, support has a ticket no one mentioned, and the last promise lives in someone’s sent mail. The rep becomes the integration layer, stitching a customer together by hand, every time, and still walking in half-blind.

5 apps open · 1 customer
Finance / ERP
balance €4,210 2 invoices overdue
Ecommerce
last order 9 days ago cart abandoned twice
Helpdesk
2 open tickets 1 escalated, no one flagged it
Inbox
“delivery by Friday” promised, nowhere on record
Spreadsheet
tier 2 · churn risk? last edited by Marko, March
Five apps, five logins, five versions of one customer. The rep reconciles them by hand before the call — and the gaps surface on the line.

The record One row, every module

The customer the rep opens is the customer everyone wrote to.

Orders, tickets, invoices, credit state, loyalty and store credit, the campaigns they’ve seen, what they did on the storefront last night — all on one record, because sales, finance, support, and the store write to the same row. Nothing is fetched from somewhere else and reconciled. It’s already here.

What one record makes possible

Four things that fall out of sales, finance, support, and the store sharing one row.

Build any segment

Describe the customers you want. Get the segment, live.

Assemble conditions in a query builder, or just write what you mean and let AI build it. Either way you’re selecting against the live record — orders, wishlists, email activity, loyalty tier, store credit, support history — not a CSV that was stale the moment it was exported.

  • As granular as you can imagine — combine any signal from any module
  • A live query, not a frozen list — it stays current as customers move in and out
  • The same segment the storefront prices against and the campaign sends to — one definition, no re-export

Loyalty, credit & win-back

Everything a best-in-class CRM does to keep customers — on the same live record.

Loyalty tiers, points, store credit, and win-back campaigns aren’t a separate app bolted on with a nightly sync. They read and write the same record as orders, pricing, and finance — so a point earned, a credit spent, or a customer going quiet is true everywhere the moment it happens.

Loyalty tiers on the record

Points and tiers that move as orders land

To Platinum 360 pts to go

Earned on every paid order — no points table to reconcile against the ledger.

Store credit spendable

Credit earned, then spent at checkout

Return refund
+€20
Referral reward
+€15
Balance
€35

Applied at checkout on the storefront — the same balance finance sees.

Win-back running

Lapsing customers reactivated on a rule

  • No order in 45 days
  • Send −10% + 100 bonus points
  • 118 customers in the window now

A standing rule, not a campaign someone has to remember to run.

Win-back, end to end

Win back a tier that went quiet — in one surface, not four tools.

A reactivation campaign is the canonical CRM job. On oozmi it runs against the same record the storefront, OMS, and finance use, so each step reads live truth and writes back to it — no export, no reverse-ETL, no waiting for the data to agree.

  1. Segment

    Find the quiet accounts.

    Tier 2 customers with no order in thirty days, built from live orders, not a list someone exported last quarter. The segment is a query against the same row the storefront prices and finance closes.

  2. Offer

    Set the incentive once.

    A tier-priced discount the storefront will honor for exactly this segment, for exactly this window — set on the record, not in a promotion engine that has to be reconciled against the catalog later.

  3. Publish

    Send and price in one write.

    The email goes out and the storefront prices the same accounts the moment they land — one transaction, not a send here and a sync there. No reverse-ETL, no overnight job, no gap where the customer sees the old price.

  4. Read results

    Watch it on the record.

    Reorders, revenue, and who’s still quiet — tracked against the same accounts, on the same data the campaign ran on. The result isn’t a separate analytics export. It’s the row updating in place.

Next step, 25 minutes

Bring one account workflow your team hates.

The renewal prep, the campaign that needs a ticket, the forecast no one trusts. We’ll rebuild it on one record in front of you and show you what drops out — the tabs, the sync wait, the reconciliation. If it holds up against your real accounts, we talk further.