the customer journey platform

Every channel you are on. One journey.

uxjo brings Instagram, Facebook, Google, YouTube, WhatsApp and email into one inbox, one contact record and one report, so you answer, publish and measure in the same place.

No credit card needed Meta Tech Provider Approval-first AI
InstagramAnswer and publish
OStheolivestudioSponsored
Olive linen jacket on a hanger
likes theolivestudio Linen, back in every size. PRpriya.rIs this in medium?captured DMdev.mDo you ship to Pune?
FacebookAnswer and publish
OSThe Olive StudioYesterday at 09:12
Weekend hours are back. Open till 9pm, Friday to Sunday.
The shop interior
· 34 comments LikeCommentShare AKAsha K.Are you open Sunday morning?captured
Google BusinessReply and post
linen jacket near me
SponsoredThe Olive Studio · Linen, in stock todaytheolivestudio.in
The Olive Studio ★★★★★· Clothing store · 1.2 km Open now · Closes 9 pm
MessageDirectionsCall
WhatsApp openedfrom the Google listing Contact createdsource: Google Business, attributed
YouTubeVideos and comments
Linen shirts being folded4:12
How the linen is cut, start to finish views · 2 days ago OSThe Olive Studio1.2K subscribersSubscribe 312Share PRpriya.rDo you ship to Pune?captured SNsn.textilesWhich loom is this?
EmailSend and measure
OSThe Olive Studioto 1,240 opted-in contacts
Your olive linen is backSent 09:00 · suppression honoured
Rail of linen clothing
OpenedClicked PRPriya R.clicked through to the cataloglogged
WhatsAppAnswer and send
Linen, back in every sizeThe Olive StudioMessage from an adSaw your ad. Is the olive linen jacket in medium?09:41
Jo · staged, awaiting approval

Yes, olive in medium is in stock. Want me to open checkout here?

Approve and sendEdit
Yes, olive in medium is in stock. Want me to open checkout here?09:41 · approved by Anita
Your channels

What uxjo does on each channel. Exactly.

One method, every channel. Answer the message, publish the post, reply to the review, and keep what each one did recorded day by day.

WhatsApp

Send
  • Inbox, approved templates, broadcasts
  • Journeys, forms, in-chat checkout
  • Catalog, orders, opt-out capture

Instagram

Answer
  • Compose, tag products, publish or schedule
  • Reply, hide or remove a comment
  • DMs in the shared inbox, insights daily

Facebook

Answer
  • Publish and schedule Page posts
  • Moderate and reply to comments
  • Messenger answered in the shared inbox

Email

Send
  • Templates, campaigns and journeys
  • Opens and clicks recorded per contact
  • Opt-out and suppression honoured

YouTube

Measure
  • Videos with their thumbnails and watch data
  • Comments held against the contact
  • Channel and per-video insights, daily

Google Business

Reply
  • Reply to a review from a scored draft
  • Business media kept in sync
  • Monthly performance and search keywords
Then

Six channels in. One journey out.

PR Priya Raman signals on one contact
Journey runs Jo drafts A person approves Sent, then logged
Instagram
Facebook
Google
WhatsApp
Email
YouTube

CaptureEvery signal from every channel is recorded, not just seen.

PR Priya RamanWhatsApp · from a Click-to-WhatsApp ad
Connected, listening
Olive linen jacketOlive linen jacketClick-to-WhatsApp adSaw your ad. Is this in medium?09:41
Jo · staged, awaiting approval Olive linen · MediumIn stock · ₹6,400

Yes, olive in medium is in stock. Want me to open checkout here?

Approve and sendEdit
Yes, olive in medium is in stock. Want me to open checkout here?09:41 · approved by Anita
Template · olive_restock_2026 · approved Olive linen jacket

Your size is back. Olive linen, medium, ready to collect or ship today.

View catalogueTalk to us 09:42 · delivered
Yes please09:42
Secure checkoutIn-chat
Linen jacket · Olive · M₹6,400
Total₹6,400
Order #4821 confirmed. Tracking follows here.09:43
APPROVED BY ANITA09:41chain 9f2c…a41
A message arrivestrigger · WhatsApp
Jo reads intentgrounded in your catalog
Branch on intentcondition
Ready to buyopen checkout in chat
Just browsingadd to a nurture journey
One platform

Everything the journey needs

Jo, your operator

Bring your own model and key. Jo answers from your catalog and knowledge base, and every write it proposes waits for a person to approve it.

Journeys that convert

Triggered flows move people from first message to paid, automatically.

In-chat mini-apps

Checkout, booking and forms, inside the thread.

Paced, opt-out aware

Throughput limits and suppression protect your number.

One measurement layer

A Facebook post, an Instagram post and a Google review, read the same way.

How it works

Four moves, in order.

What happens between a customer touching a channel and the work being recorded. Keep scrolling to step through each one.

A message arrivesinbound on WhatsApp
Jo reads intent and draftsgrounded in your catalog and knowledge base
Staged, nothing sentshown in full, waiting on a person
Approvedsends, then logged
Edited or rejectednever leaves the queue
audit 4c1f9a · approved by Anita

Nothing sends itself.Jo stages the write in full and a person confirms it. The confirmation is what gets recorded.

Live
TriggerKeyword “price”
ConditionKnown contact?
YesSend price list
NoAdd to nurture

Build the path once.Drop a trigger, branch on what you know, publish. The journey runs on every matching message from then on.

Comment on a reelTapped a Google adOrdered in chatClicked the campaignComment on a videoMessaged the page
PRPriya Ramanfirst seen: Instagram · owner: Anita customer linen repeat Pune consent opted insuppression clearDSAR ready Comment captured2dAd tap attributed2dOrder #4821 paid1dCampaign clicked4h

One record, every signal.What each channel captured is filed against the contact, with tags, owner, consent and notes on the same card.

InboxCatalogBroadcastBillingOwnerManagerAgent
Audit chain, each entry hashed onto the last #9f2cTemplate approvedseq 2,417#4c1fReply sent by Anitaseq 2,418#a70eBroadcast launchedseq 2,419#bd53Contact exportedseq 2,420
chain verified, no gaps

Who may do what, and what was done.Permissions are set per role and per module. Every write appends to a hash-chained log, so tampering shows up as a break.

Templates and broadcasts

Approved once. Sent at the right pace.

Message templates carry an image header, your variables and real buttons. Broadcasts go out under per-number throughput limits, with opt-outs already excluded.

Folded linen shirts on a retail shelf
Back in stock

Hi {{1}}, the olive linen jacket is back in your size. Reserved for 24 hours.

Reserve mineNot now
ApprovedMarketing
A plated dish on a restaurant table
Table confirmed

Booked for {{1}} at {{2}}. Reply to change it, or see tonight's menu.

See menuReschedule
ApprovedUtility
A calm treatment room in a wellness clinic
Appointment reminder

Your session with {{1}} is tomorrow at {{2}}. Reply STOP to opt out.

ConfirmMove it
ApprovedUtility
The stack

Your store, your tools, your code.

uxjo does not ask you to move off what you already run. It reads your catalog, sells from it inside the conversation, and writes the order back to your system. Anything the interface can do, your code can do over the API.

Commerce

Catalog in, order out

The product your store already knows about becomes a card a customer can buy from in chat. When they pay, the order goes home.

Your storecatalog · 248 products
Synced into uxjoolive linen jacket · 6 in stock
Sold in the threadorder #4821
Olive linen jacketOlive linen jacket · M₹4,200paid
Catalog and orders are shippedSync runs over the API
Developers

An API, not a black box

Keys you rotate, requests you can read, and signed webhooks that retry. Jo runs on the same operator tools your code can call.

POSTapi.uxjo.com/v1/messages
# send a template to a contactcurl https://api.uxjo.com/v1/messages \ -H "Authorization: Bearer uxjo_live_sk_4f2a" \ -d '{ "to": "+91••••••2280", "template": "order_shipped" }'201 accepted · queued, pacing applied
Signed webhooks, retried on failure
order.paidapi.acme.com/uxjo200
message.receivedapi.acme.com/uxjo200
contact.createdhooks.acme.com/crm-sync200
journey.completedhooks.acme.com/crm-sync200
Every delivery signedEvery write auditedRead the docs →
Connect the rest of your stack over the API and signed webhooks
Analytics

Every channel measured the same way.

One recording layer, one grid, one set of day-by-day trends. Compare a Facebook post to an Instagram post to a Google review without exporting anything.

See the measurement model
app.uxjo.com/analytics/content
All channels5 Instagram Facebook Google YouTube WhatsApp
Live sync
ItemChannelDateReachResponse28 day trend
Linen, back in every sizeReel
Instagram
Jul 18
24,180reach
1,347likes
Weekend hours, Friday to SundayPhoto
Facebook
Jul 17
8,942reach
241reactions
5.0Priya R. left a five star reviewReview
Google
Jul 16
4.8rating
210stored
How the linen is cutVideo
YouTube
Jul 14
4,310views
96comments
Linen restock broadcastBroadcast
WhatsApp
Jul 12
1,204delivered
38%replied
Recorded daily, per channel 34 search keywords 210 reviews stored Compare any two rows without an export
Click-to-WhatsApp attribution

From ad click to order, on one line.

This is why a customer journey platform touches advertising APIs. When someone taps a Click-to-WhatsApp ad or an organic post, the referral stays attached to the contact and the conversation that follows.

01Ad or organic postCampaign drafts are staged and approved before anything goes live.
02Tap to WhatsAppThe referral arrives with the conversation, not separately.
03Contact createdReferral stored on the record, with consent state and owner.
04Conversation and outcomeReply, journey, order. All of it traceable back to the click.
Contacts and CRM

Every contact ends in a stage you can see.

A conversation is not a result. Contacts carry tags, notes, an owner and consent, so you can tell what happened without reading the thread.

  • Owned. One person is responsible for each contact
  • Tagged. Segment by anything you record, then send to that segment
  • Consented. Opt-outs and suppression are held on the contact, not in a spreadsheet
See how contacts work
StageNewWorking
OutcomeWonLost
ConsentOpted inOpted out
from Instagram ad bought once Bengaluru owner: Anita
Control

Built for the person who signs off.

Governance is not a plan tier here. It is how the data layer is built.

01

Role-based access, in the database

Roles by module and scope, enforced where the data lives rather than in the interface.

02

Tamper-evident audit log

Every entry hash-chained to the one before it, so an edited history does not stay hidden.

03

Forced tenant isolation

Row-level security is on by default. One tenant cannot read another, even by mistake.

04

Per-contact encryption

Envelope encryption on contact data, with keys held per record.

05

Search without decrypting

Blind-index lookup finds a person by phone or email without exposing the field.

06

Consent you can prove

Opt-out capture, suppression lists and DSAR handling built into the contact record.

Start free. Scale when it pays for itself.

Connect one number, run a journey, and only move up when the volume is real.

Talk to usStart free