Give people a reason to keep going

with agentic in-app support.

Help people get unstuck. Explain a plan. Invite an honest review.
All inside the app they already use.

Human replies, useful actions and explicit support rules · AI requires configuration

A useful next step, in the conversation.Native iOS 17+ · SwiftUI & UIKit
InboxExample
Maya ChenA purchase on my new phone
Alex LeeWhere do I find my settings?
Sam RiveraA question about the app
Only the apps you can access.
Maya ChenLuteal · Development example
Needs reply
Today · example messages

I moved to a new phone. Where’s my purchase?

Jamie · Luteal team

Hi Maya! Let’s check Restore purchases in your settings. I’m here if you need a hand.

Private noteKeep the useful details with the conversation.
Reply to Maya…
9:41
LutealYour rhythm. Your space.
Luteal supportA little help, right here.
Illustrative conversation

I moved to a new phone. Where’s my purchase?

Delivered
Jamie · Luteal team

Hi Maya! Let’s check Restore purchases in your settings. I’m here if you need a hand.

Find your next stepA registered destination in your app.
One question. Both sides of the conversation.

Help before they give up.

Answer the question where it happens. Keep the context and give people a way forward, without sending them out of your app. Read the guide

Fictional Luteal examples · controls work locally · nothing is sent
A real conversation. In the product they already use.
Native iOS
Swift · Expo · Flutter
One team inbox
App-scoped access

Good support is good for your app

A question about access. A plan that needs explaining.
A chance to listen before someone leaves.

The moment before goodbye

Catch the friction.
Keep the person.

When something gets in the way, give people somewhere to turn.

A question, with context.Luteal · Maya’s conversation

Pick up the conversation

Keep account history scoped

Cross-device history needs your host’s verification.
Keep the context
A useful upgrade

The right next step.
When it makes sense.

Explain the options. Open the plan your app already owns. Let the customer decide.

Host-owned actions
An honest opinion

Ask fairly.
Learn something.

Offer an optional review to eligible users. No sentiment filter. No incentives.

Neutral review requests
Built for the place they are
17+
Native iOSSwiftUI & UIKit

Help without
the detour.

No separate customer password. A conversation inside your app.

A shared picture

Your apps.
The right people.

JamieSupport teammate Can reply
Access is granted for each app.

App-specific access. Private notes. One team inbox.

Built for these moments. Retention, revenue and reviews depend on your app and the care you give.

Three clear steps

Bring hej into your app, then check the whole conversation.

See the setup guide
Your app in hej
Luteal
Your app. Your workspace.
01

Make room for your app.

Create your workspace and add an app.

Swift source packageLobbyHelpRow(client: support) {
  showHelp = true
}
Your configuration. Your host.
02

Bring help into your app.

Install the SDK and follow your setup guide.

The conversation, connected.

Customer question received

Your reply displayed in the app

Illustrated setup checklist
03

Meet on the other side.

Send a question. Reply. Check both ends.

SwiftUIUIKitiOS 17+

Native chat that feels at home. Set your colors, choose your conversation style and keep your own navigation.

Make it yours
Luteal
9:41▮▮▮
LutealYour rhythm. Your space.
Luteal supportA little help, right here.
Today, 9:41 AM
I moved to a new phone. Where’s my purchase?
Delivered
Hi Maya! Your purchase is tied to your Apple account. Let’s get it back on this phone.
Open Settings → Restore purchases. I’m here if you need a hand.
A reply from your app’s team
Write a message…
Conversation style Preview
Feels right at home.
Your colors, naturally.
Illustrative Luteal conversation
Jamie · Luteal team

Here’s the place you’re looking for.

Open your settingsA next step owned by your app.
A tap is an interaction, not a purchase or completed review.
Try an example card. Nothing leaves this page.
A helpful answer can go somewhere

Open a registered screen, point to a plan or invite an honest review. Your app handles the action. hej keeps the conversation around it.

An opened card is never proof of a purchase or completed review.Explore native actions
For the humans behind the app

The question, the history and the private notes. Find the conversation again, keep a useful reply handy and give each teammate the access they need.

5 apps5 seats App-scoped access
Continue
Team inboxExample
Maya ChenA purchase on my new phoneNeeds reply
I moved to a new phone. Where’s my purchase?
To Maya in Luteal
Illustrative inbox · reply and private-note controls work locally
Thoughtful follow-through.
A clear stopping point.

First questionA support moment

Check before sendingTiming · access · conversation

A labelled replyFrom Automation, not a person

Illustrated rule · no message is sent
A thoughtful touch, at the right time

Acknowledge a first question, check an unanswered conversation or follow up after resolution. Preview the rule. Choose the timing. Enable it when you’re ready.

Clearly labelled Automation. Current conversation checks before each send. Never an automatic resolution.See support rules
A little less distance

Every conversation
starts with a hello.

Let people ask in their own words.
Keep the conversation close to home.

English: HelloArabic: مرحبًاFrench: BonjourJapanese: こんにちはSpanish: HolaKorean: 안녕하세요Hindi: नमस्तेPortuguese: OláUrdu: ہیلوItalian: CiaoGerman: HalloSwedish: Hej
Supported connection paths

Your app. Your stack.
Your connections.

Start with native chat. Configure the connections you need, per app and environment. These are interfaces and adapters, not customer logos or proof of a live connection.

  • SwiftUI: Native SDK.
  • UIKit: Native SDK.
  • APNs: Provider setup required.
  • RevenueCat: Adapter · setup required.
  • Superwall: Adapter · setup required.
  • Adapty: Adapter · setup required.
  • Telegram: Binding & setup required.
Read-only MCP · access token required

Read app-scoped public conversations through an MCP connection. Choose the apps and environments a token can access, set its expiry, and revoke it when it is no longer needed.

Set up read-only accessClient setup and verification are separate. No client is connected by this example.
A smaller permission surfaceRead only
Apps
Only the permitted app and environment.
Conversations
Scoped lists and public conversation history.
Explicit boundaries
No internal notes, profile email fields, media files or send tools.

Current workspace permissions are checked on every request. A token is access, never a claim that a client has connected.

A plan you can understand

One workspace for a family of apps.
Clear allowances. No automatic overages.

Choose the cadence that works for your workspace.
$15 USD per month · one workspace

The monthly subscription renews monthly at $15 USD. Checkout availability is shown in your workspace. Live payment activation is a separate gate; no charge is taken when you create a workspace.

How allowances work
workspaceEarly pilot
$15USD / month

Billed monthly. Renews monthly.

5 appsOne workspace
5 seatsYour small team
1,000 threadsProduction / month
2 GB storageCurrent stock
100 assistsMonthly · requires configuration
ContinueDevelopment allowance: 100 active threads / month.

A few useful answers

Explore the docs
How is the workspace billed?

Choose $15 USD per month or $150 USD per year. These are recurring subscriptions: the monthly plan renews monthly, and the yearly plan renews annually. Checkout availability and the final billing terms are shown in your workspace. Sandbox testing is separate from activating paid production access.

What can I try now?

Create a workspace and development app, install the native source SDK and complete a real two-way conversation. The pilot includes private photos, registered action cards, team access, saved replies and explicit support rules. External provider connections have separate setup requirements.

How does hej help my app business?

It gives your team a way to respond where customers get confused: explain a feature, help restore access or point someone toward a plan that fits. Retention and revenue depend on your app, response and customer need; we do not claim measured gains.

Where does AI fit?

Configured AI can draft replies or summarize public conversation context with source references. A person reviews human drafts. Optional automatic replies are separately enabled and restricted to complete published navigation answers; configuration and live quality checks remain separate. The inbox works without AI.

Can I offer a plan or ask for a review?

Register the paywall, screen or approved link your app can open, then send a card from the inbox. Your app owns the purchase flow. Review actions are optional and neutral, available to all otherwise-eligible users without sentiment filtering or incentives. A tap is not a completed purchase or review.

Do customers need another account?

No. Guests can ask for help inside your app. Verified history uses an assertion signed by your backend, with separate app and environment boundaries. The local API and Swift implementation are tested; hosted account exchange has its own readiness gate.

Will support feel like part of my app?

Choose Native, Soft or Compact conversation appearance, then set your colors and support copy. Your app retains its navigation, purchase flow and notification delegates. The Swift SDK supports iOS 17 and later through SwiftUI and UIKit. Expo and Flutter source clients also provide native foreground text chat; their guides list the current platform limits.

What happens when I’m away?

Enabled support rules can send a clearly labelled reply after checking timing and conversation activity. Preview a rule before enabling it. Push notifications and Telegram still need separate provider setup.

What happens at an allowance?

There are no automatic overages. Already-counted eligible threads can continue; newly active threads use your configured support email fallback at the cap. Production threads and assists reset monthly. Storage is current stock. Checkout is in isolated testing; paid production access is not enabled.

Make the next question easier to answer

Start with one app and one real conversation.
Build the rest of the workflow from there.

ContinueEarly pilot · no payment required
A thoughtful place
to ask for help.