Product Docs
Developer Hub
Build custom reward programs using Extole.
Everything your team needs to implement, customize, and scale referral and reward experiences across web, mobile, and backend systems.
Want to see the platform in action? Request a sandbox
integration examples
<script type="text/javascript" src="https://share.brand.com/core.js" fetchpriority="high" async></script>
<span id="extole_zone_global_header"></span>
<script type="text/javascript">
/* Start Extole */
(function(c,e,k,l,a){c[e]=c[e]||{};for(c[e].q=c[e].q||[];a<l.length;)k(l[a++],c[e])})(window,"extole",function(c,e){e[c]=e[c]||function(){e.q.push([c,arguments])}},["createZone"],0);
/* End Extole */
extole.createZone({
name: "global_header",
element_id: "extole_zone_global_header"
});
</script>
import { Extole } from "@extole/react-native-sdk";
const extole = new Extole("share.brand.com", "your-app-name");
function ExtoleScreen({ navigation }) {
const [extoleView, setExtoleView] =
useState<JSX.Element | null>(null);
useEffect(() => {
extole.configure(extoleView, setExtoleView, () => {
navigation.navigate("Promo");
});
}, []);
return <View style={{ flex: 1 }}>{extoleView}</View>;
}
<Stack.Screen name="Promo" component={ExtoleScreen} />
// From Extole iOS SDK docs (condensed)
import ExtoleMobileSDK
@main
struct ExtoleApp: App {
@StateObject var extole =
ExtoleImpl(programDomain: "share.brand.com")
var body: some Scene {
WindowGroup { NavigationView { extole.getView() } }
}
}
// Identify + send events
extole.identify("email", ["partner_user_id": "123"], { _, _ in })
extole.sendEvent("purchase", ["order_id": "A1001"])
// From Extole Android SDK docs
implementation 'com.extole.mobile:android-sdk:1.0.+'
// Initialize once at app startup
Extole.init(
context = context,
appName = "your-app-name"
)
// AndroidManifest.xml
<meta-data
android:name="com.extole.PROGRAM_DOMAIN"
android:value="https://share.brand.com/" />
// Exchange identity + event data
extole.identify(email, mapOf("member_id" to "123"))
extole.sendEvent("purchase", mapOf("order_id" to "A1001"))