${articleTitle}
How to Import an Excel Order?
Import Store Orders via Excel
Batch-import dropshipping store orders with a single Excel file: pick a template → fill it in → upload → check the results. Successful orders land in Imported Orders, where you can go on to confirm and pay; unrecognized rows are never lost — they go to the Failed Orders list and can be re-imported once fixed.
Quick Overview — three blocks; jump to any step / category
Just follow the steps in order; once everything succeeds you're done. Each step shows its page path; open “Issues you may hit” under a step to jump to the fix.
Open the import entry & pick a template Import Orders
On the Orders page under Store Orders: 1 click Import Orders (top-right) to open the import dialog; 2 click Template Download to get a template and fill it in. There are two templates: the Standard Template (standard columns, use as-is) and the Custom Template (for when your headers don't match — do column mapping → see Branches · Custom Template). Do not change or delete the header row.
1
2Fill in the Excel by the template
Row 1 is the header (don't touch it); from row 2 on, one product line per row. Multiple rows with the same order number = one order (and only the first row's shipping address is used — see category D). All fields are listed below by Required / Optional — a missing required column or a bad format sends that row to Failed Orders.
Required fields (marked *)
| Header (Excel) | Meaning | Requirement |
|---|---|---|
order number * | Order number (the grouping key) | Not empty, ≤40 chars |
sku * | Product SKU | Not empty, ≤50 chars; enter a SKU, not an SPU |
quantity * | Quantity | Not empty; must be an integer, cannot be 0 |
country * | Destination country | Not empty; must match a country; some countries also require a tax number |
city * | City | Not empty, ≤50 chars |
customer name * | Recipient | Not empty, ≤100 chars |
zip * | ZIP / postal code | Not empty, ≤50 chars |
address1 * | Address | At least one of address1 / address2; each ≤300 chars |
Optional fields (fill as needed; still format-checked)
| Header (Excel) | Meaning | Requirement |
|---|---|---|
product title | Product title | ≤300 chars |
province | Province / state | ≤50 chars |
address2 | Address 2 (extra) | ≤300 chars (at least one of address1 / address2) |
shipping phone number | Recipient phone | ≤50 chars |
email | Recipient email | Must be a valid email format |
store unit price (excl. tax) | Store unit price (excl. tax) | $0.01 ~ $9999.99 |
store name | Store name | ≤40 chars; if blank, defaults to Excel Imported |
store type | Store platform type | Platform enum (e.g. Shopify / TikTok) |
your order time | Order time | Must be identical across the same order's rows, and a valid format |
tax number | Tax number | Required for certain countries/cases (see category B) |
pictures | Production images (POD custom products) | Image URL(s) (http or https); for multiple, put one URL per line (line break inside the cell via Alt+Enter; blank lines ignored); ≤2000 chars. For POD3.0 custom products; required for non-fixed customization (otherwise the row returns Pictures Error) |
preview design pictures | Preview / rendering images (POD custom) | Same as pictures: image URL(s), one per line (line-break separated; blanks ignored); ≤2000 chars |
properties | Customization properties (POD custom) | Customization attributes text (e.g. size / material); ≤2000 chars |
texts | Customization text (POD custom) | Personalization text (e.g. engraving / name); ≤2000 chars |
store product sub code | Store product sub-code | Required for certain platforms/accounts (e.g. TEMU internal accounts) |
shipping method | Shipping method | Specify a shipping method (optional) |
Upload the file; the system validates automatically
1 In the import dialog, click Import Order on the matching template row to select and upload your filled file (only .xls / .xlsx, CSV not supported). On submit the system checks in order: file format → row count (a per-import cap applies; split into batches if exceeded) → header (no missing/duplicate columns, not empty) → parse, group and match products row by row. Do not resubmit while an import is still processing.
1Check the import result — done
After import a result dialog pops up: 1 it shows Success N / Failed N — successful orders go to Imported Orders, where you can continue to confirm and pay (see Related tutorials at the end); 2 if any failed, click Check Failed Orders to fix and re-import (see Branches · Failed Order Fix below); 3 if an imported order number duplicates an existing order, the dialog lists the duplicate rows — for each, choose Save (keep and create) or Delete (discard).
123Two branches outside the main flow, used as needed: headers don't match → use Custom Template; failed orders after import → go to Failed Order Fix.
Branch 1 · Custom Template when headers don't match
Entry: on the Orders page click Import Orders to open the dialog → click “Go to custom template” at the bottom of the dialog to open the Custom Template page. This page has two tabs:
1 Custom Template — for when headers don't match: click Create Template, map your column names to the system fields and save; then just select this template when importing, no need to change headers.
2 SKU Connection — map the fulfillment CJ SKU to your own SKU: this way, filling your own SKU in Excel is still recognized and matched to the right CJ product for ordering.
21Open the Failed Orders list Imported Failed Orders
Click the Failed Orders button on the order list, or Check Failed Orders in the result dialog. Watch two columns: 1 Reason (why it failed), 2 Action (what you can do, e.g. Modify / Add to Added Products); after fixing, 3 click Update at the bottom to re-import.
123Read the reason, fix accordingly
Pick the action by Reason: Modify to edit data (field format, SPU, country, time, etc.); Add to Added Products to add an unmatched SKU to your products; Reimport to re-import directly (unknown system reason). See section 03 for details of each reason.

Tick rows and click Update to re-import
After fixing, tick the failed rows and click Update at the bottom (batch supported). Re-import runs the exact same checks as the first import: Success → the failed row is deleted and the order is created; Still failing → the failure reason is updated in place (no new row); Duplicate → the de-duplication dialog.
Tip: when you tick multiple failed rows, rows with the same order number merge into one order (grouping is by order number only; same items have their quantities combined; the first row's address is used).
Grouped into 6 categories by where they occur. Click a category to expand, then click an issue to see its resolution. Some include the English prompt you'll see in the system for easy reference.
A · File & Template 3 items▶
Wrong file format / header — whole sheet blocked
Issue: the format isn't xls/xlsx, or the header has missing / duplicate columns or is empty — it's blocked at the upload stage (not added to Failed Orders).
Recommended Resolution: use the system template and don't change the header; make sure row 1 is complete, has no duplicates and there are data rows, then re-upload. Save CSV as xlsx.
Import count exceeds the limit
Issue: the number of rows (≈ orders) in a single import exceeds the system limit.
Recommended Resolution: split the file into batches.
... orders at most
Template not found
Issue: the selected custom template was deleted or doesn't exist.
Recommended Resolution: check on the template page as prompted, then pick a valid template or create it again.
B · Field Format 3 items▶
The failure reason shows as “Data format error”. When a row has several problems, the messages are joined with ;. Fix: click Modify, correct each per the message, then re-import.
Common field checks (qty / address / price / email / country)
Recommended Resolution: correct the field per the table below.
| Trigger | System prompt |
|---|---|
| Quantity is 0 / empty / not an integer | Quantity can not be zero; / Quantity can not be empty; |
| Both address lines empty | Address1 or Address2 can not be empty; |
| Price out of range | Please enter a price (Excl. Tax) within $0.01 ~ $9999.99; |
| Invalid email format | Please enter the valid email address; |
| Country not found | Country can't be found; |
Order time inconsistent / bad format
Issue: rows of the same order number have different your order time values, or the time format is invalid.
Recommended Resolution: make the time identical across the order's rows and use a valid format, then re-import.
Order …: "Your Order Time" values across multiple SKU detail lines are inconsistent. / Invalid time format.
This country requires a tax number
Issue: when the destination country requires a tax number (e.g. Brazil), leaving it empty fails the row.
Recommended Resolution: fill the tax number column and re-import. Which countries require it is shown by the system prompt at import time.
Country is …, taxNumber can not be empty;
C · Product & SKU 3 items▶
SKU not matched to an orderable product
Issue: the SKU doesn't match an orderable product under your account (unmatched / unassigned).
Recommended Resolution: in the Failed Orders list click Add to Added Products to add the SKU to your products, then tick and re-import.
You entered an SPU, not a SKU
Issue: the sku column holds an SPU (style code) instead of a specific variant SKU.
Recommended Resolution: Modify it to the correct SKU and re-import.
SPU provided instead of SKU.
This SKU can't be ordered with others / image error
Issue: some products can't share an order with other SKUs; or a custom/POD product's production/preview image is invalid.
Recommended Resolution: move the SKU to its own order number; or fix the image URL and re-import.
… cannot be ordered together with other SKUs / Pictures Error / Preview Design Pictures Error
D · Order Grouping, Quantity & Address rules▶
Why “looks like many rows but one order”, or qty/address mismatch?
Issue: the system groups by order number only — all rows with the same order number = one order; address is not part of grouping.
| Excel input | System result |
|---|---|
| A001,SKU-X,qty2 + A001,SKU-X,qty3 (same order, same SKU, same customization) | 1 order, 1 line, quantity merged to qty5 |
| A001,SKU-X + A001,SKU-Y (same order, different SKU) | 1 order, 2 lines |
| A001,…,address=Beijing + A001,…,address=Shanghai | 1 order, only the first row's address (Beijing) is used; Shanghai is dropped ⚠ |
| A001,SKU-X,text "Tom" + A001,SKU-X,text "Amy" (different customization) | 1 order, 2 lines (different customization not merged, not summed) |
| Different order numbers (A001 / A002) | 2 orders |
Recommended Resolution: to split into different orders, use different order numbers; for rows that share an order number, keep the address identical so the real shipping address isn't dropped and mis-shipped.
E · POD Products & Splitting 2 items▶
POD products are split into multiple rows by quantity
Issue: when building the order, a POD custom product expands a row of quantity N into N lines of quantity 1 (each with a unique batch). So “2 items = 2 rows”.
Recommended Resolution: this is normal, nothing to do; just note it increases the row count (see the next item).
A single order exceeds 100 rows
Issue: after expansion the row count hits the 100-rows-per-order limit. A pure-POD order over the limit → the system auto-splits into multiple orders (no error); POD mixed with normal products / a POD combo over the limit → the whole order fails.
Recommended Resolution: split the order into several and import in batches.
The order product SKU uploaded this time exceed 100 rows … POD items will be split according to the quantity …
G · Duplicate with Existing Orders 1 item▶
The imported order number duplicates an existing order
Issue: when an imported order number duplicates an existing order, the system doesn't create it directly but pops a dialog listing the duplicate rows (order number / address / qty).
Recommended Resolution: for each row choose Save (keep and create) or Delete (discard this one), then confirm.

