Monitor and troubleshoot

Common sync errors

What the usual failures mean, which end to fix them at, and how to re-run without making it worse.

Most integration errors are one of about a dozen things. This is that list, with the cause and the end you fix it at. The instinct to fix data here in the Cockpit is usually the wrong one: a value corrected here and not at the source stays corrected until the next run.

Connection and authentication

MessageCauseFix
401 / 403Credential rotated, expired, or the technical account was disabledRenew the credential on the connection. Ask the other side to exclude technical accounts from password rotation
Connection refused / timeoutTheir system is down, in maintenance, or your addresses are not allow-listedConfirm their maintenance window, then the firewall
TLS / certificate errorExpired certificate, or an internal CA not trusted hereTheir side renews; for an internal CA, the certificate has to be supplied
HTML received where JSON expectedA login or error page returned with HTTP 200Their side. Do not parse it; treat any HTML body as a failed run

Identity and matching

SymptomCauseFix
Everything creates, nothing updatesIdentifier format differs — leading zeros, a prefix, or caseNormalise in the mapping. Then merge or remove the duplicates already created
Zero updates on a re-importSame causeSame fix
Duplicate products with near-identical SKUsTwo sources issuing keys, or a mid-project format changeDecide the single issuer, then merge. If the duplicates already carry order history this is a careful manual job
Orders rejected by the ERP: unknown customerThe organisation here has no ERP customer number, or a stale oneFix the customer master mapping. Until then those orders sit and wait
Duplicates created by a mismatched identifier are the most expensive error on this page. They are cheap to fix in the first hour and expensive after a week, because by then some of them have been ordered, priced and referenced. Stop a run that reports unexpected creates rather than letting it finish.

Data and validation

MessageCauseFix
Unknown attributeColumn mapped to a label instead of an attribute codeUse the code
Invalid optionSource value has no matching option, V4A versus 1.4571Add the option, or map the variants to one code
Validation failedThe value breaks a rule on the attributeFix at the source, or relax a rule that is wrong
Unknown recordA reference value (manufacturer, material) does not exist yetLoad reference data before products. Order matters, see Import products in bulk
Missing requiredA required attribute is empty in the sourceFill it upstream, or reconsider whether it is required for that channel
Number out of range / wrong by 1000Decimal separator read as a thousands separatorSet the source locale explicitly in the mapping
Garbled umlautsEncoding mismatch, usually ISO-8859-1 read as UTF-8Set the encoding on the connection and re-run. Do not correct the text by hand

Volume and timing

SymptomCauseFix
Run succeeded, zero recordsEmpty export, wrong path, or the source ran lateCheck the source file first. Alert on empty results so this is never discovered by a buyer
Runtime growing every weekFull loads on a growing catalog, or an unfiltered queryMove to deltas with a weekly full load, or narrow the selection
Nightly run overruns into the morningIt starts too late, or the source's own job movedMove the schedule, not the timeout
Rate limitedToo many calls, usually from live lookups on a category pageCache, batch the calls, or reduce what is fetched live

Outbound and webhooks

SymptomCauseFix
Repeated 5xx on a webhookReceiver is failing or too slowTheir side. Confirm they acknowledge before processing
Duplicate orders in the ERPRetry after a timeout, and the receiver does not deduplicateDeduplicate on the message ID. Until then, every timeout needs a manual check
Events in the failed queueRetries exhausted while the receiver was downFix the receiver, then replay deliberately; check first what the reconciliation run already caught

Punchout

SymptomCause
Buyer lands on a login screenCredentials wrong, or the session did not resolve to a customer
Buyer sees the wrong assortmentChannel visibility left open, or the wrong channel linked to the connection
Buyer sees list pricesThe customer's conditions are not resolving for that channel
Cart transfer fails or lines are droppedMissing unit of measure, missing manufacturer part number, or a description over their length limit
Cart transfers but no order ever arrivesOrder transmission was never configured; it is a separate message from the punchout

How to re-run safely

  1. Fix the source, not the record. A value corrected here stays corrected until the next run.
  2. Re-run the same scope, restricted. Fifty records, then the rest.
  3. Expect zero creates. If a re-run creates records, the identifier is still wrong. Stop.
  4. Check one record by hand before you widen it.
  5. Write down what it was. The same feed breaks the same way in eighteen months, and the person on duty will not be you.

Next