Every commerce primitive, on one graph
Omni Commerce is API-first and multi-tenant. Turn modules on independently — they share the same customers, events and analytics, so the whole platform gets smarter with each one you enable.
Opt-in, metered, governed
Enable only what you need. Every module is independently metered and access is enforced on the server.
Offers & coupons
Targeted, stackable, expiring offers with server-enforced rules.
Rewards & loyalty
Points, tiers, referrals and reward widgets tied to real events.
Conversion tracking
Deterministic, server-side attribution across the funnel.
Publisher / affiliate network
Recruit partners and settle commissions from one ledger.
CRM & segments
A first-party customer graph shared by every module.
Journeys & automation
Trigger flows from any event across the platform.
Fulfillment & OMS
Orders, routing and fulfillment on the same event bus.
Analytics
Attribution, redemption and revenue that reconcile.
Events in, moments out
One event bus powers offers, rewards, attribution and fulfillment — all reconciled back to the source.
Emit an event
Send events like order_confirmed or signup from your stack — SDK, REST or webhook.
Resolve on the server
Eligibility, offers, odds and attribution are decided server-side. The browser never holds the truth.
Render the moment
loqal.js paints the offer or reward widget on any surface, themed to your brand.
Reconcile the outcome
Redemptions and conversions flow back to analytics and your ledger, tied to the same event.
Example event
POST /v1/events
{
"type": "order_confirmed",
"tenant": "acme",
"customer": "cus_8f28",
"value": 82.40,
"currency": "USD"
}
→ 200 OK
{
"widget": "spin_wheel_holiday",
"reward": "SAVE20",
"attributed_to": "pub_influencer_42"
}The whole is smarter than the parts
- A reward fired from an offer is attributed to the publisher who drove it — automatically.
- Segments built in CRM are instantly targetable by offers, journeys and widgets.
- Fulfillment and analytics read the same events, so revenue always reconciles.
- Integrations stay inert until you configure them — nothing fires by accident.
Ready to run commerce on one graph?
Spin up a tenant, wire an event, and watch offers fire in minutes. No credit card to start.