Ir al contenido

Los artículos de ayuda existen en alemán e inglés. Aquí los lees en inglés.

Calidad de datos y diagnóstico

What do the error codes mean?

Every rejection carries a code together with a title, explanation, data effect and resolution steps. This table lists all codes of the collector and of processing with their meaning.

The collector answers with a code. What does it mean?

CodeMeaningWhat to do
SCHEMA_INVALIDrequired field missing or format invalidcheck the event against the schema; the response names the field
EVENT_TOO_OLDtimestamp older than 30 dayssend events promptly; backfill is limited
EVENT_IN_FUTUREtimestamp more than 5 minutes aheadcheck the clock of the sending system
PII_DETECTEDplaintext email address or phone number; we only store which field was affectedremove the field or pseudonymise it first; the response and the finding name the field
CONSENT_MISSINGno matching consentpass the consent state correctly; the rejected event is not stored
CONSENT_WITHDRAWNconsent was withdrawn for this browser; nothing storednothing; this is intended. If the person consents again, measurement continues
SUBJECT_SUPPRESSEDan attribute is on the suppression list (objection or deletion); nothing storednothing; this is intended. If the person consents again, lift the suppression under “Privacy”
DUPLICATE_EVENTevent ID already presentnot an error; the repeat was detected
WRITE_KEY_INVALIDkey unknown or revokedcheck the key in “Setup”
SERVER_KEY_INVALIDserver key unknown, revoked or expired; or a write key on the server routecreate or regenerate a server key in “Setup”, “Server Events API” tab
SITE_UNKNOWNsite ID does not belong to the keycheck the site ID
TOKEN_INVALIDtoken of a tracking element unknown, revoked or alteredgenerate the tracking element again and replace the code in the creative
DOMAIN_NOT_ALLOWEDorigin not allowedadd the domain in “Setup”
SIGNATURE_INVALIDsignature does not match the bodysign the raw body, not the reformatted one
REPLAY_DETECTEDsignature already usedsign afresh per request
PAYLOAD_TOO_LARGErequest too largereduce the batch, shorten metadata
RATE_LIMITEDtoo many requeststhrottle the send rate, batch events
QUOTA_EXCEEDEDmonthly event quota on the Start plan used up; further events are not stored until the month changesmove to a larger plan or contact support
INDIVIDUAL_TARIFF_REQUIREDmore events this month than the highest public plan covers; without agreeing to the individual plan nothing more is storedagree to the individual plan under “Plan & usage”
TENANT_INACTIVEthe account is suspended, usually because of an open payment; nothing is acceptedpay the open invoice in the portal, otherwise contact support
SITE_PAUSEDthe website is paused because the plan covers fewer websites than are set upmove to a plan with more websites or ask support to swap the websites
IMPRESSIONS_NOT_IN_PLANimpression pixel or viewability tag on the free Start plan; impressions and viewability are only stored from Pro upwardsmove to Pro or a higher plan, or remove the pixel and tag from your creatives
PROCESSING_AGREEMENT_MISSINGno data processing agreement concluded; nothing is acceptedconclude the DPA in the portal under “Privacy” or in the Shopify app
REFUND_WITHOUT_PURCHASErefund accepted, but no purchase with the same order number, environment and currency for 24 hours, so not applied and deleted. A count per website and day under “Data status”, without order numbers, not a collector responsecompare order number, environment and currency of purchase and refund; then send again with a new event_id
ORDER_ALREADY_COUNTEDthe same order number arrived as a purchase more than once on the same website; it is counted once, with the value of the first server report, or without one the first browser report. A processing finding under “Data status”, not a collector responsenothing if browser and server both report; otherwise check whether a retry gets a new event_id
ORDER_VALUE_FROM_SERVERthe purchase came from the browser first, then from your server with a different value or currency; Metrunio took value and currency from the server, customer and contacts stay as the browser reported them. A processing finding under “Data status”, not a collector responsecheck whether the tracking script reports the same amount as the shop; if the browser value is far off, someone may have reported the order number in advance

Every code has its own page at /hilfe/fehlercodes/<code>, with the code in lowercase, for example /hilfe/fehlercodes/domain_not_allowed. It names the cause, the effect, the steps to fix it, and the HTTP status the collector answers with. Every finding in the portal links straight there.

For PII_DETECTED, a phone number is a digit sequence with a country code (+49 30 …) or with separators between the blocks (030-1234 5678). Plain digit sequences and identifiers in UUID format remain allowed: order numbers, product IDs, timestamps and UUIDs in a URL do not lead to a rejection.

Note

DUPLICATE_EVENT is not a problem but evidence that idempotency works: a repeated event is detected and not counted twice.

Revisado por última vez el 17 oct 2026

También se pregunta

  • SCHEMA_INVALID
  • PII_DETECTED
  • RATE_LIMITED
  • DOMAIN_NOT_ALLOWED
  • CONSENT_MISSING
  • QUOTA_EXCEEDED
  • PROCESSING_AGREEMENT_MISSING
  • REFUND_WITHOUT_PURCHASE
  • ORDER_ALREADY_COUNTED
  • ORDER_VALUE_FROM_SERVER
  • SERVER_KEY_INVALID
  • Look up an error code
  • Open the matching guide
  • What counts as a phone number?
  • PII_DETECTED although the event contains no phone number

Artículos relacionados

  • Why are my events rejected?

    The collector does not accept events. How do I find the cause?

    The collector response states a status per event and, on failure, the reason. Check that response first; “Data status” in the portal additionally summarises the reasons over the period.

  • Why do I have to allow domains?

    What does DOMAIN_NOT_ALLOWED mean and how do I add a domain?

    The write key is visible in your page source; to stop a foreign website using it in its visitors’ browsers, the collector checks the origin of the request. If the domain is not in the allowed list, the event is rejected with DOMAIN_NOT_ALLOWED. A request from outside a browser is not stopped by this check, so it is best to report purchases from your server as well.

  • What happens without consent?

    Is nothing really stored without consent?

    By default, Metrunio stores nothing without matching consent, not even a raw event, and the tracking script sends nothing before a decision. One documented case differs: purchases and refunds your server reports without consent count towards measured revenue for revenue reconciliation, with their order number and without browser, customer or advertising identifiers, and are not attributed. After a refusal this only applies with an activated additional instruction. Without consent on the ad side, the click redirect passes on only the campaign, no click ID.

  • How do I conclude the data processing agreement?

    How do I conclude the DPA with Metrunio, and why is nothing measured before?

    For every account, measurement starts only once the data processing agreement (DPA) is concluded; until then Metrunio accepts nothing and stores nothing. You conclude it in the portal under “Privacy” or in the setup step “Conclude the DPA”, and for a Shopify store also right in the app: enter the company, its address and the person concluding it, confirm they are authorised, done. Data arrives a few seconds later, without any change to your installation.

  • How do refunds reach Metrunio?

    How do I report a refund, and how can I tell that it has been applied?

    Your shop server reports a refund through the Server Events API as refund, with the same order number, environment and currency as the purchase. Metrunio then reduces the value of that order. If it finds no matching purchase for 24 hours, it does not apply the refund and deletes it. Under “Data status”, the finding REFUND_WITHOUT_PURCHASE then counts how many there were per website and day, without order numbers.

Mira lo que cuentan tus datos.

Echa un vistazo primero a la demo. Por ahora, solo hay cuenta propia con invitación.

Abrir la demoSolicitar acceso