Skip to Content

Staged records

A staged record is one Shopify-shaped payload, ready to load. There’s at most one per source row per resource. Staged records are produced by the transform phase from the raw source data plus your mapping, and consumed by the load phase when it pushes them to Shopify.

Where to find them

Open Data in the sidebar, pick the migration and the resource, and switch the view to Mapped output. That is the staged record: the exact payload the loader sends to Shopify.

The Data explorer page covers the screen in full — the controls, the filters, and the field rail. What follows is the part specific to staged records.

Reading one

Click a row to open it. The panel stacks the two halves of the record: the source record on top, the mapped output underneath, both as collapsible trees. That pairing is what tells you whether a wrong value in Shopify came from the source or from the mapping.

If the record carries a note — something the loader had to drop, or the reason Shopify rejected it — it sits above both trees, and the field it names is marked in the mapped output.

Which records exist yet

A staged record only exists once a transform has run for its source row. Before that, the row shows in the source view but its mapped output is empty, with a prompt to run the transform phase.

To stage payloads without writing anything to Shopify, use a dry run.

Has it landed?

The Check column carries the verdict for every row:

  • Match — Shopify holds exactly this payload.
  • Drifted — it was pushed, but part of it didn’t survive the write.
  • Failed — Shopify rejected it.
  • Pending — not pushed yet, or changed since the last push.

The full meaning of each is on the Data explorer page.

How to use it

  • Pre-load review — after a transform, read a few mapped outputs to confirm the mapping produces what you expect before the load phase pushes them. Pair with a dry run.
  • Sign-off — the record panel is readable without knowing JSON, so it works for showing a stakeholder what a product will look like before anything is written.
  • Failure triage — filter the Check column to Failed to get only the records Shopify rejected, each with the reason attached.
  • Post-load audit — open any record to see the payload that landed and when it was last updated.

When a record needs pushing again

A staged record is waiting for the loader when the transform has produced output that hasn’t been pushed yet — either it has never been loaded, or the mapping has changed since it last was. Those records read as Pending.

They clear to Match when a load pushes them successfully, and to Failed when Shopify rejects them. A failed record is picked up automatically by the next load once the cause is fixed — see Retry.

Last updated on