Skip to main content

How to read the import result

After selecting an article, supplier, order or BOM file, the import checks what would change. If no overwrites need confirmation, the import starts directly. Otherwise the Import preview opens: review the changes, select the overwrites you want and confirm. Closing the preview without confirming does not execute this import. A completely successful import of new records may show only a short success message. Updates, skipped rows, consolidated article rows or errors open the detailed result view. The error table contains Identifier, Type and Error; depending on the result, you may need to expand the error details first. Valid records may have been saved even when others failed.
The error table has no row-number column. Identifier contains the row’s key — article number, supplier name or order number. Only if that key is missing does the row number take its place. Find the affected file row using this identifier.
An exception is a file error: if the file cannot be read, nothing is imported. See Errors affecting the whole file.
One invalid material row blocks the entire parent article in a BOM import. Its existing material list stays unchanged. Valid material lists for other articles can still be saved. On retry, include the complete intended material list for each affected article: a confirmed valid list replaces its existing materials.
Use the search at the top (Ctrl/Cmd + K) to find the message. Names, numbers and counts vary by file; the examples below explain the main cases.

Recover after an error

  1. Check the result counts and affected identifiers first. Skipped does not automatically mean an error: records may be unchanged, rows consolidated or overwrites deselected by you.
  2. Correct the reported values or column mapping under Settings → CSV Imports. For a supplier conflict, the name and external ID must point to the same supplier.
  3. Reload the list and check what was already saved. Re-import the corrected records. For orders and BOMs, keep all related order items or materials together.
  4. Use the help in the result dialog where offered. For a readable file with an unsuitable structure, AI Import may be offered; you review its extracted data before accepting it.
Large files and interruptions: Spreadsheet imports accept CSV, XLSX and XLS up to 50 MB. Article, supplier and order imports process large files in several steps. A later failure does not roll back earlier saves; the interrupted step may also have saved some data. The interruption message may give a minimum count of saved records. Reload the list before retrying. If you need to split a file, keep each complete article, supplier or order together.

Which import matches on which key

Matching messages depend on the key used by the particular import. There is no single key shared by all imports: All keys apply within your company and match only non-deleted records. In a plot import, a row matches an existing active plot when its name, country, geometry and assigned articles all match. If any one differs, an additional plot is created. Name and country comparisons ignore case and repeated spaces. On a match, the existing plot is updated if the row brings new Producer, Production start, Production end or wood species information. These describe the plot; they do not identify it. Such a row counts as updated. If it brings nothing new, it counts as unchanged and the plot’s information stays as it was.
An empty cell never clears a saved value. Only filled values are applied. Re-import does not alter an existing plot’s name, country, geometry or article assignment. To correct geometry, edit the plot in the Plots view: an import with different geometry creates a second plot.
Article assignment is identical for all rows of one import. It comes from your dialog selection, not the file, so it cannot distinguish two rows in that file.
Article numbers are compared character for character. Case matters: ART-1001 and art-1001 are different articles. Leading and trailing spaces are removed; nothing else changes. This applies equally to article, order and BOM imports.

Suppliers: external ID or name

The supplier import looks up each row in two ways and matches if either fits:
  • External ID — trimmed, otherwise compared exactly. Takes precedence when both match.
  • Name — trimmed, repeated spaces collapsed, case ignored. Meyer GmbH therefore finds meyer gmbh.
If the external ID matches a different supplier from the name, the row is ambiguous and fails — see Supplier import messages. The article and order imports use these same two lookup paths, with the column named External supplier ID, and automatically create unknown suppliers. One small difference: the order import also collapses repeated spaces when comparing external IDs; the supplier import only trims them.
The article import creates suppliers only for purchase rows. If a row gives only an unknown External supplier ID without a name, it creates a placeholder called Unknown Supplier. Complete that record afterwards or provide the name in the file.

Duplicate rows in the same file

Article and supplier imports merge duplicate rows instead of reporting them as errors. Repeated article numbers or suppliers produce one record. Field by field: a value filled in only one row is retained; equal values in both rows cause no change.
In the article import, a result note explains how many rows were consolidated into earlier article rows; their suppliers are linked to the shared article. The supplier import counts consolidated rows as skipped without listing each one. The number of saved records can therefore be lower than the number of file rows. If two rows conflict — the same field has two different, non-empty values — the record is not imported at all. Both imports name the affected record: Conflicting rows for article … in the file or Conflicting rows for supplier … in the file (see below).
For articles, a conflict excludes the entire article, including information from rows that otherwise complemented each other. The error is assigned to the first occurrence of that article number, not to the row containing the conflicting value.
How to fix it: Merge the affected rows into one yourself and decide which value is correct. Before importing, use a pivot or duplicate check to find repeated article numbers.
Duplicate PPWR entity keys are handled differently. They produce Duplicate key in file — first occurrence imported, this row skipped instead of being merged. Multiple size rows for the same packaging unit may deliberately share one Reference, however; together they form that unit’s size range. See Import Errors (PPWR).In order imports, repeated order numbers are normal: every row is an order item. Several rows sharing an order number form one order with several items.

Required fields missing

Name is required

Name is required
When does this happen? The Name column is empty in an article or supplier import. How to fix it: Add the name. If your file uses another column heading, map it once under Settings → CSV Imports.

Article number is required

Article number is required
When does this happen? Article number is empty in an article or order import. Both templates use this heading for the internal article number, as their column descriptions explain. How to fix it: Add the article number. It is the matching key; without it, the import can neither match nor create an article.

Email is required

Email is required
When does this happen? Email is empty in the supplier import. An empty cell often also produces Invalid email address; both describe the same issue. How to fix it: Enter an email address. It is required because supplier data requests will be sent there.

Order number is required

Order number is required
When does this happen? Order number is empty in the order import. How to fix it: Add the order number. It is the order’s matching key; rows sharing it are combined into one order.

Order type is required

Order type is required
When does this happen? Order type is empty in the order import. How to fix it: Enter purchase for incoming goods or sale for outgoing goods. See Invalid order type for accepted spellings.

Supplier name is required

Supplier name is required
When does this happen? In the order import, Supplier is empty and the order type is not sale. Purchase orders always need a supplier. Sales orders use your own company instead, so their supplier cell may be empty. How to fix it: Add the supplier name, or correct the order type if this is actually a sales order.

Either quantity (kg) or piece count is required

Either quantity (kg) or piece count is required
When does this happen? Both Quantity and Piece count are empty in the order import. The template calls the column Quantity; the error adds “(kg)” because the unit is kilograms. How to fix it: Fill one of them. With only a piece count, the article needs a Weight per piece (kg) to calculate quantities for the due diligence statement — see Weights.

Parent article number is required

Parent article number is required
When does this happen? Parent article number is empty in the BOM import. How to fix it: Enter the internal number of the composite article this material belongs to. Each BOM row belongs to exactly one parent article.

Material name is required

Material name is required
When does this happen? Material name is empty in the BOM import. How to fix it: Describe the material, for example Oak veneer backrest. The name is free text used for traceability.

Either HS code or commodity group is required

Either HS code or commodity group is required
When does this happen? Both HS code and Commodity group are empty in the BOM import. How to fix it: Fill one. The commodity group takes precedence if you know the material but have no component-level HS code. Otherwise an HS code is sufficient to derive the group.

Invalid values

Invalid article type

Invalid article type. Accepted values: purchase, sale, buy, sell, einkauf, kauf, verkauf, production, produktion, procurement, manufacture, make, internal
When does this happen? Article type in the article import contains a value outside this list. How to fix it: Use a listed value; purchase and sale cover the two basic cases. Case is ignored. If your file uses its own abbreviation, add a value mapping under Settings → CSV Imports → Articles. An empty cell is allowed and creates a purchase article.

Invalid order type

Invalid order type. Accepted values: purchase, sale, buy, sell, einkauf, kauf, verkauf, production, produktion, procurement, manufacture, make, internal
When does this happen? Order type in the order import contains a value outside the list. How to fix it: Use a listed value or map your abbreviation under Settings → CSV Imports → Orders. Unlike article type, order type is required and cannot be blank.

Invalid value for Origin per order

Invalid value for “Origin per order”. Accepted values: standing, perOrder
When does this happen? In the article import, Origin per order contains something other than standing or perOrder. How to fix it: standing means the article continually comes from the same sources; perOrder means origin is collected again for each order. Case is ignored. Empty is allowed and means standing. Map values such as yes/no under Settings → CSV Imports.
This column applies only when creating an article. Import never changes an existing article’s origin mode, even if the file has a different value. Change it on the article itself.

Invalid date

Invalid date — accepted: DD.MM.YYYY or YYYY-MM-DD
When does this happen? A date column — Order date or Delivery date in the order import — contains an ambiguous or unreadable format. Exactly two date forms are read:
  • DD.MM.YYYY — dots, always day first. An appended time, such as 01.03.2026 00:00:00 from SAP, DATEV or Sage, is allowed and discarded. Two-digit years (DD.MM.YY) are also allowed and follow Excel’s rule: 00–29 mean 2000–2029, 30–99 mean 1930–1999. Thus 01.03.30 means 1 March 1930; use four-digit years if in doubt.
  • YYYY-MM-DD — ISO, optionally including a time.
How to fix it: Use one of these forms. Excel date cells are also read correctly; this error concerns cells stored as text. The plot import applies the same rule to Production start and Production end. Its message is in English even in the German interface. However, an ISO date in that import must have no time-zone specification: 2026-01-15T00:30+02:00 is rejected.
Slash-separated dates are rejected, not guessed. 01/03/2026 could mean 1 March or 3 January. Polygon One flags the row instead of choosing. Rejection is visible; a wrong guess would be silent.

Invalid email address

Invalid email address
When does this happen? Email in the supplier import contains an invalid address: a missing @, spaces, several comma-separated addresses, or an imported display name such as Meyer <a@b.de>. How to fix it: Use exactly one address per row, without a display name. Import the main address and add further contacts to the supplier record.

Invalid commodity group

Invalid commodity group
When does this happen? The BOM import does not recognise the Commodity group value. The German template and error use different terms for this same column. How to fix it: Use the values from your downloaded template or a saved value mapping under Settings → CSV Imports → BOM. The technical values are wood, cattle, rubber, cocoa, coffee, oil_palm, soya and non_relevant. Importers also recognise translated values from localised templates; custom codes need a mapping.

Weight must be a non-negative number

Weight must be a non-negative number
When does this happen? Weight (kg) in the BOM import contains a non-numeric or negative value. How to fix it: Enter a number ≥ 0 or leave it blank. Common causes are a unit included in the cell (2,5 kg instead of 2.5) or text such as N/A. Decimal separators: in Excel, cells formatted as numbers work with a displayed comma; a text cell containing 2,5 fails. A semicolon-delimited CSV recognises decimal commas provided its header contains no comma, tab or |. In a comma-delimited CSV, use a dot (2.5).

Matching articles and suppliers

Article ’…’ is new and requires an HS code

Article ‘ART-1001’ is new and requires an HS code.
When does this happen? A row would create a new article but HS code is empty:
  • Article import: the article number is unknown. This check applies only if your EUDR module is active; PPWR-only users may leave the column empty.
  • Order import: an order item refers to an unknown article number. This import creates missing articles automatically and needs the row’s HS code.
For an existing article, this error does not occur: an empty HS-code cell leaves the saved code unchanged. How to fix it: Add the HS code. Polygon One uses it to determine EUDR relevance; without it, that question cannot be answered, so the row is not imported. Alternatively, create articles through the article import before importing orders.
Placeholders do not replace an HS code. When creating new articles, both article and order imports treat cells containing only spaces, dots, hyphens or slashes (-, ., /) as empty and reject them.For existing articles in the article import, a non-empty placeholder may be offered as a change to confirm. Do not confirm it. Leave the cell empty to preserve the saved HS code.

Article ’…’ was deleted

Article ‘ART-1001’ was deleted. Restore it on the Articles page by enabling the Show deleted filter.
When does this happen? The article number exists only on a deleted article. Import does not create another article with that number, which would separate its history from orders and evidence. How to fix it: Open Articles, enable Show deleted, select and restore the article, then re-import. If it really is a new article, use a different article number.

Parent article not found

Parent article not found
When does this happen? No active article matches the Parent article number in the BOM import. A deleted article counts as absent. How to fix it: The BOM import creates no articles. Import articles first, then the BOM. Also check spelling: numbers are compared exactly.

Supplier ’…’ was deleted

Supplier ‘Meyer GmbH’ was deleted. Restore it on the Suppliers page by enabling the Show deleted filter.
When does this happen? The row’s supplier exists only as a deleted record. This affects article and order imports; they do not create a second supplier with the same name. How to fix it: Open Suppliers, enable Show deleted, restore the supplier and re-import. For a different company sharing the name, use a distinguishable name or its own External supplier ID.

Supplier ’…’ could not be matched

Supplier ‘Meyer GmbH’ could not be matched.
When does this happen? In the order import, a row contains no usable supplier information. Unknown suppliers are created automatically; this means there is nothing from which to create a supplier, not that the supplier is unknown. In practice this occurs when the order type is not sale and the supplier cell is empty or whitespace-only. The message itself then has no name between the quotes: Supplier '' could not be matched. How to fix it: Add a supplier name and, where applicable, an External supplier ID. In the file import, the external ID does not replace the required name on a purchase row. If it is a sales order, set Order type to sale so your company takes the supplier’s place.

Purchase articles require supplier information

Purchase articles require supplier information.
When does this happen? A purchase article row in the article import (type empty or purchase) contains neither a usable supplier name nor an External supplier ID. The same error appears if a supplied reference leads nowhere, such as an exported internal supplier ID belonging to no active supplier in your company. How to fix it: Add the supplier’s name or external ID. Without a supplier, there is nobody to receive the article’s EUDR data request. For a sales article, set Article type to sale so your own company becomes the supplier.

Company self-supplier not configured

Company self-supplier not configured. Please check your company settings.
When does this happen? A non-purchase row (sale, production or internal) uses your own company as supplier. Polygon One creates and restores this self-supplier record automatically when needed. This error therefore means that operation failed, for example due to a temporary database issue, rather than that a setting is missing. How to fix it: Re-import; this is usually temporary. If it recurs, contact Support with the time and order or article number. The failure is reported to error monitoring automatically. Purchase rows are unaffected and continue to import.

Supplier ”…” already exists with external ID ”…”

Supplier “Meyer GmbH” already exists with external ID “L-100”, but the file contains “L-200”. Align the external ID under Suppliers or in the file and import again.
When does this happen? Two cases in the article import:
  • A row names an existing supplier but gives a different external supplier ID.
  • Two rows in the same file try to create two new suppliers with the same name and different external IDs.
Neither case creates a duplicate supplier or guesses an assignment. How to fix it: Decide which ID is correct and align the file or the supplier in Polygon One. Give different companies with the same name distinguishable names.

Conflicting values for order ’…’

Conflicting values for order ‘PO-1001’ — its header values disagree between the rows in the file or with the existing order. Make them consistent, then re-import.
When does this happen? The order has conflicting header values:
  • Rows sharing an order number disagree on the order header: order date, order type, supplier information or DDS reference numbers. Item information — article, quantity and delivery date — may differ; the header may not. Different delivery dates mean a partial delivery: each item retains its date, while the order shows the earliest.
  • The file conflicts with an already saved order with that number: a different supplier, order type or an order date that is filled on both sides but differs.
How to fix it: Reconcile all items’ header values with the saved order. Then re-import all items for that order.

Conflicting position IDs or HS codes

If you use position IDs, every row of the same order needs an ID, and each ID must be unique within that order. The messages identify mixed rows with and without IDs or a duplicate position ID. Add or correct the IDs; keep IDs stable for unchanged positions. The message about two different HS codes applies to purchase orders when order-specific article creation is enabled. If it appears, establish the correct code and make that article’s rows consistent within the order.

An error occurred

An error occurred. Please try again.
When does this happen? An unexpected saving error could not be assigned a more specific cause. How to fix it: Check what was already saved, then retry the affected records. If the error persists, contact Support with the time, import type and identifier from the error table.

BOM: article skipped or confirmation required

A row of this article failed validation

1 row of this article failed validation — none of its materials were imported
When does this happen? At least one material row for an identifiable parent article is invalid. The import also excludes its other material rows and preserves its saved material list. Articles without invalid material rows can still be imported. How to fix it: Read the individual messages too, such as a missing material name or invalid weight. Correct every row for this article and re-import its complete BOM.

Stored material list would change

This article’s stored material list would change — confirm the replace in the import preview, or re-run the import to review the change
When does this happen? An existing material list could not be replaced with valid confirmation, for example because the confirmation requirement changed after the preview. How to fix it: Restart the import. Check removed materials in the preview as well and confirm only the intended articles. Deselecting an article skips all its material rows.

Supplier import messages

These three messages come only from the supplier import. An error occurred. Please try again. instead means an unexpected row-write error, as described above.

Conflicting rows for supplier ’…’ in the file

Conflicting rows for supplier ‘Meyer GmbH’ in the file — multiple rows describe the same supplier with different values. Make the information consistent and import again.
When does this happen? Conflicting duplicate supplier rows in your file prevent that supplier from being imported:
  • Rows sharing a name or external ID give different, non-empty email, contact, country, address or external-ID values.
  • Rows share the same external ID but have different names.
  • One row belongs to one group by external ID and a different group by name.
How to fix it: Merge them into one row and choose the correct values. Complementary rows (one with email, another with country) are not errors; import silently combines them.

Ambiguous match for ’…’

Ambiguous match for ‘Meyer GmbH’
The rest of the message explains whether the name or external ID matches multiple suppliers or they point to different suppliers. When does this happen? An ambiguous match in the platform: multiple suppliers share the name or ID, or the name matches a different supplier from the external ID. Neither is chosen. A rarer case: two imports create the same new supplier concurrently. The second encounters the name rule, looks up the newly created supplier and finds multiple matches. The message can then appear even with a correct file. How to fix it: Search Suppliers and resolve duplicate names or IDs by deleting, renaming or correcting them, then re-import. If another import ran concurrently, repeating yours may be enough.

Supplier ’…’ changed during import

Supplier ‘Meyer GmbH’ changed during import. Please import this row again.
When does this happen? The supplier disappeared before the update: it was deleted during import or no longer belongs to your company. A concurrent content edit does not trigger this error; it is handled when writing. How to fix it: First check Suppliers → Show deleted and restore the supplier if necessary.
Do not simply retry without checking. If the supplier was deleted, re-import does not restore it: it creates a new supplier of the same name, with empty history and none of the old evidence or requests.

Errors affecting the whole file

These messages mean not a single row was imported. They appear as a title and explanation, rather than a row error.

File format not supported

File format not supported — This file cannot be imported. Upload a CSV or Excel file (.csv, .xlsx, .xls).
When does this happen? The file has another extension, commonly .numbers, .ods, .txt or .pdf. How to fix it: Export or save as CSV or Excel and upload again. Plots also accept GeoJSON.

File could not be read — differing column count

File could not be read — Some rows have a different number of columns from the header. A common cause is mixed delimiters (commas and semicolons). Export again with one consistent delimiter and no empty rows.
When does this happen? CSV rows contain more or fewer fields than the header. The message lists affected row numbers. How to fix it: Export with one delimiter (Excel: Save as → CSV) and remove empty trailing rows. Quote fields that contain the delimiter. The Excel template (.xlsx) is the most robust option.

File could not be read — unbalanced quotation marks

File could not be read — Incorrect quotation marks prevent fields from being separated reliably. Check the marked rows or export the file again.
When does this happen? A CSV quote is not closed or a quote inside text is not doubled, causing one field to consume the rest of the row. How to fix it: Check the indicated rows. Double quotes inside a field ("Oak ""solid"""). It is easier to re-export from Excel or use the Excel template.

File could not be read — file could not be processed

File could not be read — The file could not be processed. Make sure it is a valid CSV or Excel file and export it again if needed.
When does this happen? The extension is correct but the file cannot be opened: it may be damaged, password-protected or another format with a renamed extension. How to fix it: Open in Excel, remove password protection if present and save again as .xlsx or .csv.
The next six messages apply only to GeoJSON uploads in your suppliers’ data form, not to the plot import in your own interface. Your import instead provides a review view with its own guidance.

Invalid GeoJSON file

Invalid GeoJSON file — The file does not contain valid JSON and cannot be read. Export the GeoJSON file from your GIS software again.
When does this happen? In the supplier form, the file is syntactically invalid JSON: a truncated download, an extra leading character or different content given a .geojson extension. How to fix it: Export again from your GIS (QGIS: Export layer → GeoJSON) and upload without modifying the file.

Not valid GeoJSON

Not valid GeoJSON — Expected a FeatureCollection, Feature or geometry (Polygon, MultiPolygon, Point, MultiPoint).
When does this happen? In the supplier form, valid JSON lacks GeoJSON structure, for example a Shapefile attribute table exported as JSON or a custom format. How to fix it: Export genuine GeoJSON with "type": "FeatureCollection", "Feature" or a geometry type at the top level.

Geometry type not supported

Geometry type not supported — Only Polygon, MultiPolygon, Point and MultiPoint are allowed; lines are not supported.
When does this happen? In the supplier form, the file includes a type such as LineString. The message identifies the affected object’s number. How to fix it: Convert it to a polygon in GIS, or a point for a plot smaller than 4 ha, and export again.

No plots found

No plots found — No valid plots were found in the GeoJSON file. Check it and export again if needed.
When does this happen? In the supplier form, structure is valid but no usable geometry exists, commonly an empty FeatureCollection because an export filter was active or nothing was selected. How to fix it: Check the layer contains features, remove filters and selections, then export again.

Geometry missing

Geometry missing — At least one object has no geometry. Add the missing geometry or remove the affected object.
When does this happen? In the supplier form, a feature has "geometry": null, commonly an attribute-only GIS row with no drawing. The message identifies the object’s number. How to fix it: Draw the missing geometry in GIS or remove that object from the export.

Coordinates outside the valid range

Coordinates outside the valid range — Longitude must be within ±180 and latitude within ±90. Check that the file contains WGS84 longitude/latitude.
When does this happen? In the supplier form, coordinates exceed the degree range. Usually they use a projected coordinate system such as UTM or Web Mercator (EPSG:3857), with metre values, or latitude and longitude are reversed. How to fix it: Reproject to WGS84 (EPSG:4326) and export again. GeoJSON uses longitude first, then latitude.

Notes above the error list

These hints mean the file could be read. They do not confirm that records were saved. They appear in the result dialog and explain a common cause of many row errors.

Required columns not found

Required columns not found — Required columns are missing: {columns}. Add the exact template headers or map your existing columns under Settings → CSV Imports.
When does this happen? The file is readable but required columns cannot be found, often because headers differ by language, extra text or spelling, or because title rows precede the header. A missing column makes its value empty in every row, producing repeated errors such as Article number is required. The problem is the column rather than each row. How to fix it: Match the template headers or map your own in the relevant Settings → CSV Imports tab. Leading blank and title rows are detected automatically; for an unclear structure, use one data table with its header at the top. Excel imports read the first worksheet.

This looks like a different template

This looks like a different template — These column headings match the {template} import template. If that is the template you filled in, import it there instead.
When does this happen? Your headers match a different template, such as a BOM file being uploaded through article import. The message names the recognised template: Articles, Suppliers, Orders, Plots, BOM, Packaging units, Components, Packaging BOM or Packaging article links. How to fix it: Close the dialog and use the import button for that template. Article and BOM templates have different required columns and are not interchangeable — see Article Import or Bill of Materials?.

Article Import or Bill of Materials?

Which import to use for each purpose.

Articles

The complete article import column list.