Your app.
Same Dazza.
Dazza adds AI customer service chat to your iOS, Android, React Native or Flutter app. It’s the same agent, knowledge and workflows as your website, signed-in customers are recognised, and every conversation lands in your team’s inbox.
A few lines.
Then it’s in.
Settings → Install → In your app has each snippet with your agent’s key already in it.
Add the SDK
React Native and Expo, Swift (UIKit and SwiftUI), Kotlin or Java, or Flutter.
Set your agent
One line with your agent’s key, from Settings.
Open the chat
From your own button, or use the ready-made one with an unread badge.
Sign customers in
Optional: pass the same signed login as your website.
import { DazzaButton } from "@dazzaio/react-native";
<DazzaButton agent="dz_…" label="Help" userToken={signedLogin} /> import Dazza
Dazza.configure(agent: "dz_…")
Dazza.identify(token: signedLogin) // optional
Dazza.present(from: self) // or .sheet { DazzaChatView() } Dazza.configure("dz_…")
Dazza.identify(signedLogin) // optional
Dazza.open(context) import 'package:dazza/dazza.dart';
DazzaChat.open(context, agent: 'dz_…', userToken: signedLogin); They’re signed in.
Dazza knows it.
Your server signs a short login for the customer and the app passes it in. Dazza treats them as verified, so workflows about their own orders and account run without an email code. Sign out, and the next person on the phone starts fresh.
- Signed with your secret (HS256), on your server
- Kept out of server logs
- Sign in and out without reopening the chat
// Any web view, any framework
https://app.dazza.io/w/dz_…?embed=app#token=<signed login>
// The page tells your app what happened
{ "source": "dazza", "type": "ready" | "message" | "close" }
// Sign in or out later, without a reload
window.Dazza.identify(token) // or null Small in your app.
Big on the details.
Unread badges
A callback for every new reply, from Dazza or your team.
Your team, in the app
When someone on your team replies, the customer sees it in the app.
Remembers the chat
Conversations carry on between launches on the same phone.
Links open properly
Links in answers open in the phone’s browser, not inside the chat.
Your colours and name
The same look you set for your website chat.
Updates itself
The chat is served by Dazza, so improvements reach your app without a release.
Does it work with Expo?
Yes. Add react-native-webview with npx expo install and use the React Native SDK.
We use a different framework. Can we still add it?
Yes. Load your agent’s chat link with ?embed=app in any web view. The page sends simple messages your app can listen for.
Do app conversations count towards our plan?
Yes, the same as a website chat. Follow-ups in the same conversation don’t count again.
Can we send push notifications for replies?
Not yet. While the chat is open, your app gets a callback for every reply, so you can show a badge.
Which plans include the mobile SDKs?
Growth, Scale and Enterprise. See pricing.