Deep linking
For mobile teams routing paid funnel visitors into an iOS or Android app. You'll have a working plan for each major deep-linking provider. You need a Deep Link Button on the funnel's success page and a destination URL or universal link.
What Zellify provides#
Zellify ships two deep-linking components:
- Deep Link Button — the standard component. Builds a URL from your destination + opt-in built-in parameters (app_user_id, email, fbp/fbc, Stripe customer ID, etc.) and forwards selected params from the funnel landing URL. Use this with Branch, Adjust, plain universal links, or any provider that accepts a query-string contract.
- AppsFlyer OneLink — a dedicated AppsFlyer variant that loads the OneLink Smart Script and routes through
generateOneLinkURL(). Use this if you're on AppsFlyer.
Both are React components in the funnel builder; you drop them on the success page.
Provider compatibility#
AppsFlyer (first-class)#
Use the dedicated AppsFlyer OneLink component. It loads the OneLink Smart Script automatically and handles the pid / c / afCustom plumbing for you, including the keys: [] defense against ad-network URL pollution.
If you'd rather not load the Smart Script, the standard Deep Link Button also works with OneLink — paste the OneLink URL as the destination and toggle on whichever built-in params you need. You won't get Smart Script's redirect optimisations and you'll need to manage pid / c yourself on the URL.
Adjust#
Use the standard Deep Link Button with an Adjust tracker URL as the destination, and toggle on App User ID so each click carries the funnel session identity. Adjust's deferred deep linking handles the not-installed case; on app launch, read the deep link from Adjust's SDK and parse app_user_id off the URL.
If you use Adjust's deep_link param, encode it on the destination URL up front:
Branch#
Use the standard Deep Link Button with a Branch link as the destination. Branch's $deeplink_path and $canonical_url go on the destination URL; toggle on App User ID so the user identity rides along:
Inside the app, read Branch's params on session init.
Plain universal links / App Links#
Point the standard Deep Link Button at your domain's universal link (iOS) or App Link (Android). Toggle on any built-in parameters your app reads from the URL.
Other providers#
Any provider that accepts query-string params works with the standard Deep Link Button. Configure the destination URL with the provider's link format and toggle on the built-in parameters your app needs.