Follow the checkpoints in order
Do not start by changing the outgoing traffic-source postback if the incoming event is absent from Metricanic.
Inspect what the sender actually transmitted
The final request should contain the full signed click ID and the intended event slot:idx=1 in the URL still selects Event 1 even when its JSON body contains idx: 2.
An invalid_clickid response points to identifier validation. bad_idx points to the event index. Body errors point to the request format. See Incoming event fields for supported values and formats.
HTTP 200 is not the end of the test
The incoming endpoint normally returns a small GIF. Event attribution and processing happen after that response. A 200 does not certify a new conversion, and protective rate limiting can also return the GIF without creating another event. Open Events for the time the callback was sent and Errors for related failures. If attribution cannot recover the original visit, the action cannot be assigned to the intended campaign result. If the failure persists, keep the test time, campaign, response, and tracking identifiers for investigation.If the event exists but Conversions stays at zero
Edit the campaign and inspect the action for the received Event ID:- Confirm the event slot is enabled.
- Confirm Count as conversion is on if this action should count.
- Check the first enabled conditional rule that matches this visit and event.
- Confirm that winning rule contains an enabled action for this Event ID.
- Check the campaign report for the original visit date, not only the callback date.
Check whether the request is a repeat
The same underlying visit, event index, and normalizedtxuid produce the same event identity. Repeating order 1042 should not be treated as a new business action just because its request was delivered again.
For a new test action, use a new stable transaction ID. For a retry of an existing action, preserve the existing ID. Omitting txuid creates a new identity on each request and can inflate counts.
Do not resend an old transaction with status=approved expecting an update. The incoming endpoint does not implement status changes that way. Model the approved stage as its own configured event.
Run one controlled retest
Use a test campaign or account for the effects of the event in production reporting. A configured outgoing postback can also be triggered.- Start a fresh tracked journey and retain the signed click ID received by the offer.
- Configure the intended slot to count as a conversion with From incoming event revenue.
- Send one event with
payout=12.50and a new transaction ID. - Find the processed record in Events.
- Check the campaign report covering the visit date.