> ## Documentation Index
> Fetch the complete documentation index at: https://help.polygon-one.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Article Import or Bill of Materials?

> The difference between the article import and the bill of materials (BOM) import — and when you need each

## Overview

On the **Articles** page, choose the import that matches the data you want to maintain:

| Button | What it creates | Template |
| - | - | - |
| **Import** | Creates or updates **articles** and, where needed, **suppliers** | `article-import-template` |
| **Import BOM** | **Materials within existing articles** | `bom-import-template` |

> [!NOTE]
>
> Both buttons have a small arrow on the right. Use it to download the matching **Excel template (recommended)** or **CSV template**. The Excel template has a second Instructions sheet with required fields and permitted values for each column.

> [!WARNING]
>
> The BOM import **does not create articles**. Every row uses the **Parent article number** to refer to an article that must already exist. Always import articles first, then their bill of materials.

## When do I need each?

**1. First: create the article**

The article must exist before you can assign materials. Create it through **Import**, manually or through an integration; an order import can also create missing articles. The initial EUDR classification is derived from the **HS code**.

**2. Additionally: BOM — only for composite articles**

Use a BOM to record or update an article's **material composition**. This can help resolve an outstanding material check; **Manual review required** does not automatically mean you must upload a file containing several materials. First check the article and the requested material information.

A BOM is not a mandatory step for every article. For a few materials, use the manual editor described below.

## The article import

Creates and updates articles, matched by **Article number**. Suppliers can be created automatically as part of the import.

See [Articles](https://help.polygon-one.com/en/eudr/datenhaltung/artikel.md#template-fields) for the complete column list.

## Select a file and check the result

1. Download the template from the arrow beside the matching import button. Supported formats are **CSV, XLSX and XLS up to 50 MB**. Excel imports read the **first worksheet**; place the data table there.
2. Complete the template. Store numbers with leading zeros as **text** so Excel does not change them.
3. Select the file using the matching button. **If no overwrites need confirmation, the import starts directly.** This also applies to a first material list.
4. If stored values would be overwritten, the **Import preview** opens. Review the changes and select which to accept. Closing the preview without confirming does not execute this import.
5. Check the result. A completely successful import may show only a short success message. Errors, skipped rows or updates open the detailed result view. For BOM imports, the success message counts **materials**, not articles.

Repeated article numbers can be consolidated into one article, for example with several suppliers. Conflicting values prevent that article from being imported. See [Import Errors (EUDR)](https://help.polygon-one.com/en/eudr/datenhaltung/import-fehler.md) for details.

## The bill of materials (BOM) import

Explains **what an existing article consists of**. Template columns:

| Column | Required | Description |
| - | - | - |
| **Parent article number** | Yes | Internal article number of the composite article this material belongs to. The article must already exist. |
| **Material name** | Yes | Description of the material, such as `Oak veneer backrest` or `Leather upholstery` |
| **HS code** | Conditional | Required if no commodity group is provided. Used for automatic classification. |
| **Commodity group** | Conditional | Required if no HS code is provided. Allowed: `wood`, `cattle`, `rubber`, `cocoa`, `coffee`, `oil_palm`, `soya`, `non_relevant` |
| **Weight (kg)** | No | Material weight in kilograms |

**Each row is one material.** An article containing three materials has three rows with the same parent article number.

Example (excerpt from the German template; use the headers of your downloaded template):

```csv theme={null}
Übergeordnete Artikelnummer,Materialname,HS-Code,Warengruppe,Gewicht (kg)
ART-1001,Eichenfurnier,4408,,2.5
ART-1001,Naturkautschuk,,rubber,0.8
```

### Two ways to classify a material

For each row, provide **either** an HS code **or** a commodity group:

* **Commodity group** — when you know the EUDR commodity but have no component-level HS code. A relevant commodity group takes **precedence** over the HS code. **`non_relevant` does not override an existing HS code**: when an HS code is also supplied, that code is checked.
* **HS code** — when a code is available; the commodity group is derived automatically.

A row without either is **invalid**: it appears in the error table and is not saved. This also excludes the parent article's entire material list from the import. Provide at least an HS code or a commodity group for every material.

### What the import changes on the article

Polygon One **recalculates** three fields of the parent article from its materials:

* **EUDR-relevant** — Yes if **at least one** material is relevant.
* **Commodity group** — the primary commodity. If several EUDR commodities are present, selection follows this order: wood, cattle, rubber, cocoa, coffee, oil palm, soya. The article then shows Multiple EUDR commodities detected.
* **Manual review required** — if a material itself refers to an ex-heading.

The **article's HS code stays unchanged**.

> [!WARNING]
>
> **The BOM import replaces an article's entire material list.** All rows for one parent article number are saved together and replace the previous list. Always upload the article's **complete** bill of materials, never only a changed row.

> [!WARNING]
>
> **One invalid material row blocks the entire parent article.** Its existing material list stays unchanged; valid material lists for other articles can still be imported. If a required column is missing or no valid material list remains, nothing is imported. Check both row and article messages, correct the file, and re-import the **complete** BOM for affected articles.

### Replace existing material lists

The preview shows added, changed and **removed materials** for each parent article. Deselecting an article skips **all its material rows**. An unchanged material list does not require confirmation.

If data changes between preview and saving, confirmation may be required again. Restart the import and check the current preview. The preview confirms replacement of the material list; it does not confirm legal EUDR compliance.

## Maintain materials without an import

For an individual article, no file is needed. Open the article's **Material composition (optional)** section, enter **Material name**, an optional **HS code** and **Commodity group**, then select **Save materials**.

> [!NOTE]
>
> A **weight** per material can be recorded only through the BOM import; the article form has no weight field. See [Weights for Articles Made of Several Materials](https://help.polygon-one.com/en/eudr/datenhaltung/gewichte.md).

## Map column names once

If your column names differ, map them under **Settings → CSV Imports**: use **Articles** for article imports and **BOM** for bills of materials. Later imports use this saved mapping. Check it again if your export changes its headings or values.

## Related pages

> **[Import Any File (AI Import)](https://help.polygon-one.com/en/import/beliebige-datei.md)**
>
> If your file does not match a template, AI reads it; you review and confirm the rows.

> **[Articles](https://help.polygon-one.com/en/eudr/datenhaltung/artikel.md)**
>
> The complete article import column list.

> **[EUDR Relevance Check](https://help.polygon-one.com/en/eudr/eudr-analyse.md)**
>
> How the HS code determines EUDR relevance.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.