Back to topic
Spark playbook scenarios · Spark: AI Store Assistant

Diagnose product CSV import failures by row and field

An import was rejected and the error report does not say which row or field caused each failure. In this case, the immediate task is to diagnose product CSV import failures by row and field. The workflow should produce a corrected sample plus a per-row exception list, with each message traced back to the merchant's own file.

Topic
Product Creation and Import
Target keyword
shopify csv import errors
Copyable AI prompt

A prompt you can drop directly into Spark

First replace every [bracketed] placeholder with real store scope and constraints, then add any actual records or data you have, and paste it into your preferred AI assistant or Spark agent. Spark will follow this page's workflow to produce structured output and verification steps.

ai-prompt.txt
Act as a Shopify operations specialist.
Help me diagnose product CSV import failures by row and field.
My store context is [describe the business, products and target audience].

My scope is [specify the affected products, pages, customers or reporting period]. Use these inputs: [the rejected file as uploaded, the returned error report, the header row as it stood at upload, the identifier column, and the rows known to have been written before the failure]. Attach each message to a specific row and column by reading the reported position against that header, classify it as structural — a wrong column name, a bad delimiter, an unexpected encoding — or as value-level on one field, and propose the narrowest correction that clears the message without touching cells that were already valid.
Return a corrected sample plus a per-row exception list for the specified task.
Show the relevant evidence or before-and-after examples and explain how I can verify the result.
If essential data is missing, ask for it and mark unsupported conclusions as unknown.
Do not invent metrics, product claims or customer facts.
For any publication, message, account or store change, use only connected tools within my explicitly authorized scope and report success only after verification; otherwise provide the draft or proposed steps.
Use in Spark
How to solve

A recommended resolution workflow

Split the work into input, judgment, and deliverable phases. Verify each step's output before moving to the next.

01

Step 1

Collect the rejected file exactly as uploaded, the error report returned, its header row as it stood at upload, the identifier column, and any rows the merchant knows were written before the failure.

02

Step 2

Attach each message to a specific row and column by reading the reported position against that header, classify it as structural — a wrong column name, a bad delimiter, an unexpected encoding — or as value-level on one field, and propose the narrowest correction that clears the message without touching cells that were already valid.

03

Step 3

Deliver a corrected sample containing one row of each error class plus a per-row exception list naming row, field, message, class and proposed fix, then re-run only that sample, reconcile corrected, still-failing and already-written rows against the original file, and state which rows must not be sent again.

FAQ

Common questions when running this scenario

Cover decision rules, frequent misunderstandings, and required inputs so the team aligns on prerequisites before execution.

How do you tell a structural fault from a value fault?

A structural fault repeats across many rows and follows a column, such as every row tripping on one header or parsing one field short; a value fault names individual cells. Structure is fixed first because it often clears dozens of messages at once, so messages are grouped by column before any cell is edited.

Should the whole file be re-uploaded?

Rarely. Re-sending it uncorrected repeats every failure and duplicates rows already written, which is why rows created before the failure get identified first. Only corrected rows and previously rejected rows go back, and the result is reconciled against the run record rather than the file as originally sent.

Why re-run on a sample rather than the full file?

A sample holding one row per error class proves each fix works while risking very few writes, and it yields a clean report to compare against. Uploading everything first makes every remaining failure look identical to the original rejection, with no way to tell which correction failed.

Related scenarios

Continue with adjacent or same-topic scenarios

Start with scenarios under the same topic, then expand into cross-topic matches suggested by similarity.

Next step

Want these AI scenarios embedded directly into daily operations?

Ciwi Spark builds Shopify-native AI tools and agents around the workflows merchants actually run: research, ads, translation, and customer support. Stop rewriting the same prompts by hand.