User Manual
Help Center/User Manual/Flow monitoring & troubleshooting

Flow monitoring & troubleshooting

Last updated 2026-10-20

Where to watch flow runs, how to read a failed run down to the node that broke, and the five failures you will actually meet — symptom, cause, and the fix you can do yourself.

What to watch#

  • Run Monitor (Integration → Runs): every flow execution in one list — flow name and version, how it was triggered (schedule / event / manual), status (running, success, failed, retrying), duration and items processed. Filter by status to see only the failures.
  • Run detail: click a run to see it node by node — each step’s input snapshot, output snapshot and, for the failed step, the exact error message. Always start here: the failing node and its input usually point straight at the cause.
  • Logs & Dead letters (Integration → Logs): items that failed permanently land in the dead-letter queue with the flow, the node and the error. After you fix the cause, replay a dead letter to process that item again — or discard it if it is no longer wanted.
  • Connection health: a run that fails at its first node with an auth error is a connection problem, not a flow problem — the connection’s own Test button reproduces it in seconds.

The five failures below cover almost everything you will see. For each: what it looks like, why it happens, and the fix — all things you can do from the UI, no engineering ticket needed.

1. Credentials expired or invalid#

  • Symptom: runs fail at the first node with 401 / auth failed; the connection Test fails the same way. It often starts suddenly after working for weeks.
  • Cause: the other platform expired or rotated the credential — tokens have lifetimes (e.g. Wish access tokens 30 days; some OAuth user tokens only hours), and secrets change when someone regenerates them in the platform admin.
  • Fix: (1) get a fresh credential from the platform (the connector directory entry lists exactly where); (2) open the connection, paste the new value, save; (3) run the connection Test until it passes; (4) replay the dead letters the outage produced.

2. Mapping missing or wrong type#

  • Symptom: runs fail at a middle node with errors like “field X is required”, “unmapped SKU”, or a value rejected as the wrong type (text where a number is expected, a date in the wrong format). New orders with new SKUs are the classic trigger.
  • Cause: a source field the mapping expects was empty or absent on that document, two systems disagree on a field’s type, or a channel SKU has never been paired with an OMS product.
  • Fix: (1) open the failed run and read which node and field failed; (2) for unmapped SKUs, pair them in Product Mapping’s pending list; (3) for a missing / mistyped field, open the flow (or connection) mapping, map the right source field or add a default / conversion for that field; (4) dry-run to confirm, publish if you edited the flow, then replay the dead letter.

3. The other platform is rate-limiting you#

  • Symptom: runs show status “retrying”, or fail with 429 / “too many requests”. Bursts make it worse — e.g. right after a big manual pull or at the top of the hour when many flows fire together.
  • Cause: every platform caps how many API calls an account may make per minute/hour. The connector already retries with backoff — that is what “retrying” means — but a sustained burst can still exhaust the budget.
  • Fix: (1) do nothing for occasional “retrying” — it usually succeeds on its own; (2) if it repeats, lower the pull frequency on the connection / flow schedule; (3) stagger schedules so several flows do not hit the same platform at the same minute; (4) avoid repeated manual pulls while a backlog is retrying.

4. Webhook / callback failures#

  • Symptom: data that should arrive by push never shows up — tracking numbers or fulfillment confirmations stay missing, or new-order notifications stop — while manual pulls still work. Logs show webhook delivery errors.
  • Cause: the sending platform could not deliver to Docklify (temporary network issue), the subscription was dropped when credentials changed, or the connection was disabled and re-enabled without the callback being re-registered.
  • Fix: (1) check Integration → Logs for the webhook errors and their times — a short burst that already stopped needs no action; (2) test the connection; a successful test re-validates the callback registration on most platforms; (3) if pushes are still missing, disable and re-enable the connection to force a fresh subscription; (4) pull manually once to backfill what was missed, then watch the next real event arrive.

5. Data format problems#

  • Symptom: individual documents fail while others on the same connection succeed — a specific order is rejected for an invalid address, a phone number in the wrong shape, a postcode that does not parse, or a weight with the unit inside the number.
  • Cause: the data itself, as it exists on the source platform or in the source document, does not meet the receiving side’s format rules. The flow and the credentials are fine — the document is not.
  • Fix: (1) open the failed run and read which document and which field was rejected — the error names it; (2) fix the data at the source where you can (correct the address / phone on the order or in the platform); (3) if the same quirk keeps coming from that platform, handle it once in the mapping instead: add a default, trim or conversion for that field; (4) replay the dead letter for the fixed document.
A pattern worth memorising: if everything on one connection fails at the first node, suspect the connection (credentials). If one node in the middle fails for some documents only, suspect mapping or that document’s data. If runs succeed but pushed data never arrives, suspect webhooks. The run detail page distinguishes all three in under a minute.