Moclick Bridge
Integration

Debug and validation

A walkthrough for validating the integration end to end and diagnosing conversions that never arrive.

End-to-end validation#

  1. Open the landing page through the campaign URL

    Use the tracking link Moclick provided, or the destination URL with the tagging parameter, so the test arrives as tracked traffic. See tagging the destination URL.

  2. Confirm the tag loaded

    DevTools → Network, filter on moclick. The tag request should return 200 or 304.

  3. Confirm the campaign configuration

    The configuration call should return 200, with the campaign identified. A missing or unpublished campaign returns a neutral response and the tag stops without acting.

  4. Check the cookies

    DevTools → Application → Cookies. Check the name, domain and lifetime. See cookies written.

  5. Complete the flow through to confirmation

    Place a real test order. Do not mock the confirmation page — the point is to verify that the platform fills in the value and the identifier correctly.

  6. Check the conversion record

    The conversion request should appear in Network. On POST the parameters go in the body, not in the URL — open the Payload tab.

  7. Confirm in the dashboard

    Under Campaigns → Results, the test conversion should appear in Latest conversions. This is the only definitive criterion — a success response in Network does not guarantee a write.

Parameters to check on the conversion#

ParameterShould contain
slugThe campaign identifier
click_idA non-empty value, matching the identification cookie
txidThe order identifier
valueThe value with a decimal dot and two places

When the campaign also forwards the conversion to external media platforms, you may see extra requests in Network. Confirmation on those platforms is handled by the Moclick team, and can take a few hours depending on the platform.

Inspecting from the console#

JavaScriptDevTools console
// Did the configuration load?
window.MoclickConfig

// Is the conversion object present and well formed?
window.MoclickConversion

// Which Moclick cookies exist?
document.cookie.split("; ").filter(c => c.indexOf("moclick") === 0)

// Clear the local markers to repeat a test
Object.keys(localStorage)
  .filter(k => k.indexOf("moclick_") === 0)
  .forEach(k => localStorage.removeItem(k));
sessionStorage.clear();
Repeating a conversion test

Deduplication blocks a second record with the same transaction_id. To test again, use a different transaction_id — that is the recommended method — or clear local storage with the snippet above. Note that server-side deduplication still applies: even with a clean browser, the same click + transaction pair is not written twice.

Diagnosis#

No conversion request appears#

  • The global tag loaded on this page — not just on the previous ones
  • window.MoclickConversion exists and is an object
  • The object was set within 120 seconds of the tag loading
  • The campaign was identified in the configuration call
  • The click identification cookie exists
  • No conversion is already recorded with the same transaction_id

The request goes out, but the dashboard shows nothing#

  • The campaign uses Moclick’s own measurement — confirm with the Moclick team
  • click_id is not empty in the request
  • The test agent is not identified as a bot — command-line tools are filtered out
  • The date filter covers the moment of the test
  • The campaign or source filter is not excluding the event
  • It is not a duplicate of an event already recorded

Wrong conversion value#

SymptomLikely cause
Value 100× too highThe platform sends cents. Divide by 100 — the classic Shopify case
Value zero or nullComma as the decimal separator, a currency symbol, or an empty data layer variable
Value includes shipping and taxThe chosen total field includes extras. Use the subtotal if the contract is on merchandise
Value truncatedMore than two decimal places. This is expected: the stored format has two places

Duplicate conversions#

  • Check that the transaction_id really is unique per order
  • A timestamp or random number as the identifier creates a duplicate on every reload
  • Confirm the conversion tag is not firing on more than one tag manager trigger
  • If you use Postback S2S and the conversion object, send the same txid in both — that is how dedup recognizes them as one event

Go-live checklist#

  • Global tag installed on every page, including the confirmation page
  • Campaign identifier checked and matching the tag
  • Conversion object on the confirmation page
  • transaction_id unique and stable per order
  • Value with a decimal dot, no currency symbol, at the right scale
  • Test conversion completed in a real environment
  • Test conversion confirmed in the results dashboard
  • Cookies verified on the correct domain and subdomain
  • No JavaScript errors in the console
  • If using Postback S2S: token stored server-side and a retry queue implemented
  • The advertiser’s privacy policy updated with the cookies in use

Once the checklist is done, send the domain and the campaign identifier to the Moclick team for a final validation before scaling up media spend.

Atualizado em agosto 5, 2026