Affiliate attribution across Instagram, Facebook Messenger, WhatsApp
Hi Zernio team,
We are evaluating campaign / affiliate attribution across Instagram, Facebook Messenger, and WhatsApp conversations through Zernio.
Our main use case: Influencers and partners share links that open a conversation with our bot/account. We need to attribute the first conversation/signup to the correct campaign or affiliate code.
Instagram Meta natively supports ig.me referral links:
https://ig.me/m/<instagram_username>?ref=<campaign_or_affiliate_code>
According to Meta’s Instagram Messaging webhook shape, this can produce a messaging_referral / OPEN_THREAD referral payload:
referral: { ref: "<campaign_or_affiliate_code>", source: "<IGME_SOURCE_LINK>", type: "OPEN_THREAD" }
We tested this with Zernio: https://ig.me/m/selenagomez?ref=test_ref
Zernio only sent us a normal message.received webhook with message, sender, conversation, and account data. There was no referral/ref/metadata field.
Request: Can Zernio subscribe to and forward Instagram messaging_referral events, or include the native Meta referral object in the first message.received / conversation.started webhook?
Facebook Messenger Meta also supports m.me referral links:
https://m.me/<facebook_page>?ref=<campaign_or_affiliate_code>
Request: Does Zernio currently forward the Messenger referral/ref object for m.me links? If not, can this be added in the same normalized shape as Instagram?
WhatsApp For Click-to-WhatsApp ads, Zernio already documents automatic ctwa_clid capture on the first inbound message and stores it in conversation metadata. That is great.
Questions:
Is similar first-touch referral metadata available for organic WhatsApp links, or only for CTWA ads?
For wa.me links with prefilled text, does Zernio expose the first message text normally so we can parse a campaign code manually?
Suggested normalized webhook shape For Instagram and Facebook, ideally Zernio would expose:
{ "event": "messaging.referral", "platform": "instagram" | "facebook", "account": { ... }, "conversation": { ... }, "sender": { ... }, "referral": { "ref": "<campaign_or_affiliate_code>", "source": "SHORTLINK", "type": "OPEN_THREAD" } }
Alternatively, including the same referral object inside the first message.received or conversation.started webhook would also work.
Why this matters Without referral/ref forwarding, affiliate and influencer attribution for messaging entry links is impossible through Zernio. We have to use an intermediate web redirect and fallback promo codes, which is less reliable for mobile Instagram/Facebook flows.
This feature would be valuable for:
influencer attribution
affiliate tracking
campaign analytics
conversion tracking from messaging conversations
first-touch lead source attribution
Could you confirm what is currently supported per platform and whether forwarding Meta’s native referral events is on the roadmap?
Thanks!
Log in to comment and vote
Comments2
Miquel Palet López
Aug 26
This shipped on 14 August 2026 and it matches the payload you sketched. Organic
ig.me/m/<user>?ref=andm.me/<page>?ref=referrals are captured now, not just ad clicks: when the referral rides the first inbound message you get Meta's referral object verbatim onmessage.receivedundermetadata.referral(withref,source, andtype: OPEN_THREAD), and when someone re-opens an existing thread through a ref link it arrives as a new standalonereferral.receivedwebhook event. The first referral is also persisted on the conversation, soGET /v1/conversationsreturnsmetadata.meta_ad_refandmetadata.meta_ad_sourcefor attributing the signup whenever it happens.On WhatsApp the equivalent is Click-to-WhatsApp:
metadata.ctwa_clidandctwa_source_idon the conversation, captured the same way. Meta has no?ref=parameter onwa.melinks, so a plain wa.me link carries no affiliate code for anyone to forward, and that part is not something we can add.Alexander Sakharov
Jun 18
Hello! Any news? This is a very important feature for businesses, and it's fairly easy and quick to add.