Before you start
You need access to the funnel pages, the checkout platform, and every domain customers visit. Decide which system is authoritative for orders, refunds, rebills, chargebacks, and cancellations.1. Track the complete funnel
Install Datalyr on the first landing page and every editable funnel step. Track the few events that describe real progress, such asoffer_viewed, checkout_started, and upsell_accepted. Keep names and properties consistent between funnel variants.
For CheckoutChamp, use the Global Head Script shown in Sources → CheckoutChamp. Do not add another Datalyr browser install to the same pages.
2. Preserve customer identity
The same visitor must survive transitions between landing, checkout, and upsell domains. Use the supported script or platform integration instead of copying browser identifiers into custom fields yourself. If customers sign in, identify them with the same stable account ID used elsewhere in your product.3. Connect transaction events
For CheckoutChamp, create the Export Profiles provided by Datalyr for:- Purchase
- Refund
- Chargeback
- Recurring payment
- Cancellation
4. Test every branch
Run a test visit with UTMs or an ad click, then complete the base order and each upsell path. Confirm the original visit, funnel events, order value, currency, order ID, and products appear on one journey. Also generate a refund or cancellation and confirm reporting changes.Common problems
- The order appears but has no acquisition source: identity was lost during a domain transition, or tracking started after the landing page.
- Revenue is duplicated: two browser installations or duplicate transaction exports are active.
- Net revenue never changes: refund, chargeback, recurring, or cancellation profiles are missing.
- An upsell has the wrong value: the platform sent the full order total where an incremental amount was expected.