The workflow said success. The CRM got the wrong field.
An automation can finish without an error and still put the wrong value in the right place. That failure is different from a missing webhook or a failed execution. Here is a reproducible, fictional way to investigate it without connecting to a live client system.
Original invented example. All IDs, categories and phone-like strings below are fictional. This is not a customer incident, a claim about a particular CRM, or a benchmark of Moruneva versus n8n.
1. Separate four questions before debugging
| Question | Evidence that can help | What it still cannot prove |
|---|---|---|
| Did the platform emit a delivery? | Webhook delivery log and retry metadata. | That your workflow started or the customer action was completed. |
| Did n8n execute? | Execution history, status and relevant node input/output. | That downstream fields are correct. |
| Was a downstream record observed? | A permitted CRM export or read-only receipt lookup. | That every column has the intended value. |
| Do compared field values agree? | Two independently sourced, aligned snapshots and an explicit mapping. | Which system is authoritative, whether the export is complete, or whether the client approved it. |
For the first two questions use the authoritative Shopify webhook troubleshooting guide and n8n execution history when those platforms apply. Neither should be confused with confirmation that a business record contains the right values.
2. Reproduce the problem with invented data
Suppose a fictional inquiry form sends a request key, a callback number and a customer segment. A developer accidentally maps the CRM phone field from the segment field for just one record. The execution status might still be green because a value was written successfully.
Source CSV
event_id,phone,segment fiction-A,555-0101,hotel fiction-B,555-0102,cafe fiction-C,555-0103,store
Destination CSV
event_id,phone,segment fiction-A,hotel,hotel fiction-B,555-0102,cafe fiction-C,555-0103,store
Set both correlation fields to event_id. Enter two field mappings, one per line:
phone,phone segment,segment
Across these three uniquely paired invented keys, the source and destination phone values differ once. The segment values agree three times. That is a value difference to investigate, not proof that one specific production record is incorrect.
3. A column typo is not a missing customer record
Consider specifying a correlation field named eventdi even though the CSV header is event_id. A naive checker might report every row as missing a key. That would make a configuration mistake look like a serious data-loss incident.
Moruneva's composable field-mapping block rejects a configured field that does not appear in any row of a populated snapshot. If only one row lacks an otherwise observed field, the result records that specific kind of missing-value observation instead. Duplicate correlation keys are classified as ambiguous; they are not paired in an arbitrary order.
Important: Valid field names and exact string equality are useful constraints, not authentication. A matching key might identify the wrong object. Two matching values might be equally wrong. Do not convert a zero-mismatch count into a PASS verdict.
4. Interpret the output, not just the number
The downloadable moruneva.field-mapping-evidence.v1 report contains fixed categories, row totals, number of uniquely paired keys, duplicate-key ambiguity and per-mapping counts of comparable, unequal or missing values. It omits original identifiers, field names and values. It always says human_review_required.
This output can become a building block beside the existing Outcome Reconciler, which checks supplied event and receipt existence, or the Acceptance vs Observation Workbench, which distinguishes proposed acceptance tests from observed logs. Composability means the reports have defined, bounded contracts; it does not give any application permission to access real CRM records or approve a customer's workflow.
5. Before you share or sign off
An authorized reviewer must confirm the source exports represent the same system, tenant and time window; correlation keys have the agreed business meaning; retries or delayed writes are accounted for; and the final destination state matches the real acceptance criteria. Re-check after a fix. Only the responsible person can approve release, replay, refund or other state-changing actions.
For one-off work, an n8n expression, native data validation or a simple spreadsheet may be quicker. Use this free check when a repeatable, bounded, counts-only comparison is useful for handoff. Never paste names, live telephone numbers, credentials or unsanitized customer exports into a browser just because it does not upload them; browser extensions and the local device also matter.
6. What this demonstration does not establish
The example is synthetic. The block does not connect to Shopify, n8n, a CRM, live accounts or payment systems. It has not been independently validated on a client workflow. Moruneva has not proved that this comparison is faster than native tools or that anyone would pay for it. The right next experiment is a voluntary, consented practitioner review with invented data and a fair comparison against the existing method, including independent destination checking time.
Try the checker → · Browse all composable tools → · Read the privacy limitations →