- Help Center
- Configuration
-
Getting Started
-
Configuration
- Targeting
- Split URL
- Product Testing
- Full Stack
- Experiment Management
- CSP Configuration
- Experiment Execution
- Reports
- Exit Popups
- GTM Integration
- Troubleshooting
- Performance Optimization
- Event-Triggered Changes
- Holdout Groups
- Split URL Pages
- URL Parameters
- DataLayer
- Menu Configurations
- Traffic Exclusion
- Experiment Scheduling
- Dynamic Element Changes
- Price Targeting
- Experience Scheduling
- Privacy
- Hash Changes
- Async Tracking
- Selective Installation
- CSS Selectors
- Vue.js Integration
- Page Content
- Multipage Split URL
- Organic Traffic
- Visual Editor
- Server-Side Testing
- Traffic Bucketing
- GDPR Warnings
- Statistical Confidence
- Browser Privacy
- Query Parameters
- Embedded Videos
- Tracking Code Execution
- Simultaneous Experiments
- Tags
- Deployments
- Disable Testing
- Locations
- Programmatic Bucketting
- Query Parameter Handling
- Convert Library
- Variation Previews
- Experiment Editing
- Opt-Out Script
- Data Reset
- Body Hiding
- Visit-Specific Variations
- Variation Styling
- Preview Issues
- Variation Editing
- Full-Site Testing
- Blinking Variations
- Cross-Domain Cookies
- Regex Support
- Conversion Tracking
- SPA Testing
- Project Setup
- Cross-Domain Tracking
- Geo-Targeting
- Analytics Tools
- Campaign Tags
- Previewing
- IDs
- Query String Targeting
- Bounce Rate Goals
- Bot Filtering
- Query String Variables
- Custom Audiences
- Redirects
- Baseline
- Tracking Code Location
- Secure Cookies
- AngularJS
- Cloudflare
- Code Installation
-
Track Goals
- Form Tracking
- Cookie Management
- iFrame Click Tracking
- Performance Optimization
- Revenue Tracking
- Interaction Goals
- Form Submissions
- Advanced Goals
- Lazy Loading
- Multi-Conversions
- URL Parameters
- Bounce Rate Goals
- DataLayer Integration
- Scroll Depth
- Social Interactions
- Page Views
- Marketo Forms
- Feature Analysis
- AJAX Forms
- Revenue Tracking via GTM
- Order Outliers
- Cumulative Revenue
- Goal Templates
- Adding Revenue Goals
- JS-Based Goals
- Goal Basics
- Google Analytics Goals
- Social Sharing
- Dynamic Goals
- Typeform Integration
-
Target Visitors
- Geolocation
- Interaction Goals
- Goal-Based Targeting
- Weather Targeting
- Cookie-Based Targeting
- Page Visits
- Audience Management
- Audience Segmentation
- Experiment Targeting
- Advanced Audience Creation
- Audience Templates
- Audience Creation
- Data Layer Integration
- Manual Activation
- JavaScript Conditions
- Device Targeting
- Language Targeting
- IP-Based Exclusion
- Visitor Management
- Page Tagging
- Cookies
-
Troubleshooting
- Google Warnings
- Visual Editor
- HTTPS Content
- Logs
- Support Options
- Bootstrap
- Cookie Blocking
- Change History
- Mobile Debugging
- AdWords
- Bot Exclusion
- Domain Issues
- Cloudflare Issues
- Monitoring
- Cloaking Penalties
- Goal Editor Issues
- Variations
- Snippet Performance
- Changes Not Saved
- Blocked Visual Editor
- Goal Testing
- Visual Editor Browsing
- Experiment Issues
- Installation Verification
- Data Leak Prevention
- Usage Limits
- Experiment Previews
- GA4 Revenue
- Chrome Debugger Logs
- SPA Errors
- Checkout JSON Error
-
Analyze Results
-
Integrations
- Google Analytics
- Cookie Consent Platforms
- Microsoft Clarity
- Plausible
- Marketo
- HubSpot
- Tealium
- Smartlook
- Klaviyo
- Salesforce CRM
- FullStory
- Snowplow Analytics
- Webflow
- GA4 Roles
- Amplitude
- Segment
- React
- BigCommerce
- WooCommerce
- Active Campaign
- Google Tag Manager
- Mixpanel
- Zapier
- Inspectlet
- Crazy Egg
- LanderApp
- Unbounce
- Instapage
- Drupal
- PrestaShop
- Magento
- Roistat
- Piano Analytics
- Heap Analytics
- Kissmetrics
- Mouseflow
- Adobe Analytics
- Clicky
-
Account Management
-
Developers
-
What's New
-
Common Questions
-
Shopify
Legacy: Pushing Conversions and Revenue Data from Third Party Systems into Convert Experiences
THIS ARTICLE WILL HELP YOU:
Understand Third-Party Systems
Sometimes the conversion or sale might not occur into the browser where the experiment was presented to the visitor but in some sort of back-end system. In this situation, the default cookie-based tracking does not work and conversions have to be pushed into Convert Experiences by custom scripting. The process works in two steps:
- after the user is presented with the experiment/variation, the pair of experiment ID-variation ID that was fired has to be stored inside the back-end together with the user profile.
- when the conversion-sale occurs in the third party system, it has to be pushed into Convert Experiences, together with the experiment ID and variation ID previously stored in the user's profile.
Important
This is a legacy request structure, which is published for reference. Please, use the new one located here.
To push a conversion, a GET request needs to be made with the following structure:
//[project_id].track.convertexperiments.com/track/?c=[customer_id]&p=[project_id]&e=[experiment_id]-[variation_id]&g=[goal_id]&ga=1
All the bold elements have to be replaced with actual values as follows:
- [project_id] - this is the project ID that can be found in project settings. In there the field "ID NUMBER" glues together the account ID and project ID separated by an underscore char. For example, if ID number is 1111_2222 than 1111 represent the account id and 2222 represents the project's ID.
- [customer_id] - account ID found as described above
- [experiment_id] - experiment ID the visitor was presented. This should be stored in the user's profile as explained in step 1)
- [variation_id] - ID of the variation that was presented to the visitor, stored as explained in step 1)
- [goal_id] - the goal ID you want the conversion to be triggered for. You can fire multiple goals at once by providing instead of a single goal ID a list of comma-separated goal IDs and updating the ga parameter to have as a value the count of pushed goals. Example: &g=100,101,102&ga=3.
To push a transaction (revenue), a GET request needs to be made as follows:
//[project_id].track.convertexperiments.com/track/?c=[customer_id]&p=[project_id]&e=[experiment_id]-[variation_id]&t=[goal_id]|[transaction_value]|[transaction_products_count]
All the bold elements have to be replaced with actual values as follows:
- [project_id] - this is the project ID that can be found in project settings. In there the field "ID NUMBER" glues together the account ID and project ID separated by an underscore char. For example, if ID number is 1111_2222 than 1111 represent the account id and 2222 represents the project's ID.
- [customer_id] - account ID found as described above
- [experiment_id] - experiment ID the visitor was presented. This should be stored in the user's profile as explained in step 1)
- [variation_id] - ID of the variation that was presented to the visitor, stored as explained in step 1)
- [goal_id] - the goal ID you want the conversion to be triggered for. This can be found in your Convert Experiences account as explained above. Transaction data can be attached to multiple goals as well by providing a dot-separated list of goal ids instead of a single goal id.
- [transaction_id] - The ID of the transaction comes from the external system. It has to be unique for each different transaction *
- [transaction_value] - two decimal value of the transaction
- [transaction_products_count] - number of items ordered in this transaction
Important
* [transaction_id] is no longer sent as of February/March 2018
Conversion and transaction data can be pushed also together by mixing the parameters into the same GET request.