Skip to main content
Deferred deep linking requires @masivo/rn version 2.2.0 or later.

What is deferred deep linking?

When someone taps a Masivo link without your app installed, they’re sent to the App Store or Play Store. Deferred deep linking recovers that original destination the first time the app opens after install, so the user lands on the right screen instead of the app’s default entry point. This feature is implemented entirely through @masivo/rn — there is no REST endpoint to call directly. The SDK handles device identification and the request to Masivo internally; you only need to wire a few pieces on app startup.

1. Provide platform adapters

The SDK does not bundle native modules for reading the Android Install Referrer or the iOS clipboard — you provide them via setAdapters:
Both adapters are optional. If you omit one, the SDK simply skips that matching method for that platform and falls back to IP-based fingerprint matching.

2. Configure persistent storage

resolveDeferred is designed to run once per install: it stores a flag so later app launches skip the request.
If you already call setDeviceStorage(...) for secure, Keychain-backed persistence of your device UUID, call it after setAsyncStorage(...). setAsyncStorage wires in-app, device, and deep link storage together; calling setDeviceStorage afterward re-points device storage to your secure adapter, while deep links and in-app messaging keep using AsyncStorage.
Skipping this step doesn’t cause incorrect matches — Masivo still resolves each pending click at most once, server-side — but every app launch will call the resolve endpoint again instead of only the first one.

3. Resolve on app startup

Call this once you know the customer identifier, early in your app’s lifecycle:
The call resolves to null when there is nothing to recover. Otherwise it resolves to: Wrap the call in try/catch — a network or server error throws instead of resolving, and the attempt is not marked as done, so it retries automatically on the next app launch.

How Android and iOS differ

  • Android works automatically for any link that redirects to a Play Store listing — no configuration needed on the link itself.
  • iOS requires the link to have Deferred deep linking via clipboard enabled in Advanced Settings. Without it, there’s nothing on the clipboard for the app to read, and only IP-based fingerprint matching applies.