Campaign links has two important IDs - email id and campaign id, and in order for Ecommerce360 features to work correctly, they should be added to the request along with order details.
But sometimes it's not added.
Here's the possible issues:
1. Data is not sent at all, and WooChimp log (if enabled) might contain the following error:
There is no record with unique id "[UNIQID]" in the database
"[UNIQID]" here is just a placeholder for email id, which is used while campaign has 'draft' status, and it will be replaced to an actual id when campaign is active.
Here's the quote from MailChimp support:
Because the mc_eid will only get added by our servers once the campaign is sent to the list, and not when a test email is sent, in order to get the the unique_id generated in the ecommerce tracking URL, the campaign will need to sent live.
That means you need to make sure you use live campaign, or the data won't be passed from your site.
2. Issue with cookies
At some point this data is stored in cookies, and for various reasons it may not be read. WooChimp has some workarounds implemented to prevent this from interfering, but it's still possible.
Some reasons that may sometimes (not always!) cause this:
- Caching is used on server or some plugin used
- Server policy of handling cookies is different from default behavior
- Load-balancing solution used on server
- Browser-related issues
If something like that happens, each case needs proper research.
3. Payment gateway with it's own checkout process used
When payment gateway has it's own checkout process, that avoids some default WooCommerce hooks, which prevents some WooChimp's events from triggering.
Such issue was mostly related to pre-2.2 versions of WooChimp, in 2.2 it was improved to cover as much as possible even with such custom checkout processes. So in case you're having such issue, try to update and then confirm if it's still happening.