# Import produktów i stanów magazynowych

Narzędzie importu produktów i magazynu pozwala wgrać plik .csv, aby dodać lub zaktualizować stany. To znacznie szybsze i wygodniejsze niż dodawanie lub aktualizowanie produktów pojedynczo. Dla producentów, którzy regularnie aktualizują katalog produktów w arkuszu Excel, to duża oszczędność czasu.

Narzędzie importu znajdziesz, klikając **Products** w niebieskim menu poziomym, a następnie **product import** w zielonym menu.

Są cztery główne sposoby użycia narzędzia:

1. Import nowych [produktów](/smaki-wsi-docs/basic-features/products-1.md)
2. Aktualizacja istniejących danych produktów
3. Import produktów do nowego magazynu sklepu/huba [Inventory](/smaki-wsi-docs/basic-features/products-1/inventory-tool.md)
4. Aktualizacja produktów w magazynie sklepu/huba

W każdym przypadku proces polega na pobraniu szablonu CSV, wypełnieniu pól i ponownym wgraniu pliku CSV do Smaki Wsi.

{% hint style="warning" %}
**Ważna uwaga o plikach CSV**: Microsoft Excel nie otwiera bezpośrednio plików .csv.\
Jeśli możesz, pobierz darmowy pakiet Libre Office: <https://www.libreoffice.org/download/download/>\
W Libre Office Calc łatwo otworzysz i edytujesz CSV oraz zapiszesz je w odpowiednim kodowaniu UTF-8.\
Jeśli nie możesz użyć Libre Office, aby otworzyć CSV w Microsoft Excel, postępuj zgodnie z instrukcją: <https://support.office.com/en-gb/article/import-or-export-text-txt-or-csv-files-5250ac4c-663c-47ce-937b-339e391393ba>
{% endhint %}

{% hint style="danger" %}
Nie wszystkie pola można wprowadzić lub zaktualizować tym narzędziem. Obecnie [Zdjęcia](/smaki-wsi-docs/basic-features/products-1/products.md), [Właściwości](/smaki-wsi-docs/basic-features/products-1/product-properties.md) i ustawienia [Zakupu grupowego](/smaki-wsi-docs/basic-features/products-1/group-buy-for-bulk-ordering.md) muszą być dodawane ręcznie dla każdego produktu.

Mamy nadzieję dodać to w przyszłości.
{% endhint %}

## Import nowych produktów

Skorzystaj z tych instrukcji, jeśli chcesz dodać nowe produkty do profilu producenta.

{% hint style="success" %}
Możesz jednocześnie wgrać nowe produkty i zaktualizować istniejące w ramach jednego pliku CSV. Instrukcje są rozdzielone dla czytelności, ale możesz łączyć nowe produkty i aktualizacje w jednym arkuszu.
{% endhint %}

### Przygotuj plik CSV do importu

Najpierw pobierz **Product List Template CSV** ze strony [**Product Import**](https://openfoodnetwork.org.uk/admin/product_import) i otwórz go w Libre Office, Excelu lub podobnym narzędziu.

Szablon zawiera nagłówki kolumn wymagane do poprawnego importu produktu. Każdy wiersz odpowiada nowemu produktowi lub wariantowi. Poniżej opis sposobu wypełniania każdej kolumny.

{% hint style="danger" %}
**Uwaga:** Wszystkie pola są wrażliwe na wielkość liter, np. musisz użyć mL i Dairy, a nie ml lub dairy.
{% endhint %}

<table><thead><tr><th width="195">Tytuł kolumny</th><th width="110">Wymagane?</th><th width="259">Opis</th><th>Przykład</th></tr></thead><tbody><tr><td>producer</td><td>Y</td><td>Nazwa profilu producenta, do którego zostanie przypisany produkt</td><td>Four Mile Farm</td></tr><tr><td>sku</td><td>N</td><td>Kod SKU produktu</td><td>AD001265</td></tr><tr><td>name</td><td>Y</td><td>Nazwa produktu</td><td>Yoghurt</td></tr><tr><td>display_name</td><td>N</td><td>Pole do nadawania unikalnych nazw wariantom. Jeśli nie tworzysz wariantu, zostaw puste.</td><td>Raspberry Yoghurt</td></tr><tr><td>category</td><td>Y</td><td>Kategoria produktu. Kategorie są wymienione na stronie <a href="https://openfoodnetwork.org.uk/admin/product_import">Product Import</a></td><td>Dairy</td></tr><tr><td>description</td><td>N</td><td>Opcjonalny opis produktu</td><td>This Yoghurt is made from local raspberries</td></tr><tr><td>units</td><td>Y</td><td>Wartość wagi, objętości lub ilości</td><td>500</td></tr><tr><td>unit_type</td><td>Maybe</td><td>Jednostka, w której produkt jest sprzedawany (g, kg, T, mL, L). Jeśli sprzedawany jako sztuka (np. pęczek) zostaw puste</td><td>g</td></tr><tr><td>variant_unit_name</td><td>Maybe</td><td>Jeśli produkt jest sprzedawany jako sztuka (np. bochenek, pęczek, dynia), wpisz typ sztuki</td><td>Bunch</td></tr><tr><td>price</td><td>Y</td><td>Cena produktu. Jeśli produkt jest opodatkowany, powinna to być cena z podatkiem.</td><td>3.70</td></tr><tr><td>on_hand<br>(stock count)</td><td>Maybe</td><td>Jeśli masz ograniczony stan, wpisz poziom zapasu. Jeśli stan jest nieograniczony, zostaw puste</td><td>40</td></tr><tr><td>available_on</td><td>N</td><td>Zostaw puste</td><td></td></tr><tr><td>on_demand (unlimited stock)</td><td>Y</td><td>Jeśli stan jest nieograniczony, wpisz 1. Jeśli wpiszesz liczbę w on_hand <em>i</em> 1 w unlimited, produkt będzie oznaczony jako nieograniczony.</td><td>1</td></tr><tr><td>shipping_category</td><td>Y</td><td>Kategoria wysyłki produktu. Kategorie są na stronie <a href="https://openfoodnetwork.org.uk/admin/product_import">Product Import</a></td><td></td></tr><tr><td>tax_category</td><td>N</td><td>Kategoria podatku produktu. Kategorie są na stronie <a href="https://openfoodnetwork.org.uk/admin/product_import">Product Import</a></td><td>Full Rate</td></tr></tbody></table>

#### Import wariantów produktu

W procesie importu warianty są rozróżniane po jednostkach (np. maliny sprzedawane w opakowaniach 200 g i 500 g) lub polu display\_name (np. jabłka sprzedawane w wielu odmianach). Jeśli nazwa produktu jest taka sama, wiersze zostaną zaimportowane jako warianty. Dla produktów sprzedawanych jako sztuki, unit\_type musi być taki sam we wszystkich wariantach (np. bułki poniżej).

| name            | display\_name    | price | units | unit\_type |
| --------------- | ---------------- | ----- | ----- | ---------- |
| Raspberries     |                  | 3.60  | 200   | g          |
| Raspberries     |                  | 4.80  | 300   | g          |
| Apples          | Golden Delicious | 3.60  | 500   | g          |
| Apples          | Pink Lady        | 4.80  | 500   | g          |
| Wholemeal rolls |                  | 0.40  | 2     | rolls      |
| Wholemeal rolls |                  | 1.00  | 5     | rolls      |

Poniższy obraz pokazuje, jak te produkty będą wyświetlane w sklepie. Zwróć uwagę, że pole „name” staje się głównym nagłówkiem, a „display\_name” i/lub jednostki — nagłówkiem pomocniczym.

#### Przykłady typów jednostek

Poniżej kilka przykładów, jak powinny być wgrywane produkty z różnymi jednostkami (g, ml, kg oraz sztuki).

<table data-header-hidden><thead><tr><th width="121">producer</th><th>name</th><th width="105">category</th><th width="73">price</th><th width="75">units</th><th width="110" align="center">unit_type</th><th align="center">variant_unit_name</th></tr></thead><tbody><tr><td>producer</td><td><strong>name</strong></td><td><strong>category</strong></td><td><strong>price</strong></td><td><strong>units</strong></td><td align="center"><strong>unit_type</strong></td><td align="center"><strong>variant_unit_name</strong></td></tr><tr><td>Sue's Salads</td><td>Salad Bag</td><td>Vegetables</td><td>3.50</td><td>500</td><td align="center">g</td><td align="center"></td></tr><tr><td>Henry Orchards</td><td>Fruit Juice</td><td>Drinks</td><td>3.50</td><td>300</td><td align="center">ml</td><td align="center"></td></tr><tr><td>Fernwell Produce</td><td>Potatoes</td><td>Vegetables</td><td>9.50</td><td>5</td><td align="center">kg</td><td align="center"></td></tr><tr><td>Tom's Bakery</td><td>Wholemeal Bread</td><td>Baked goods</td><td>3.00</td><td>1</td><td align="center"></td><td align="center">loaf</td></tr></tbody></table>

### Import CSV

Po wypełnieniu **Product List Template CSV** możesz go wgrać do Smaki Wsi.

1. Wejdź w **Products** > **Product Import**.
2. Wybierz typ importu: **Product List**.
3. **Select a spreadsheet to upload:** wybierz plik CSV zaktualizowany o informacje o produktach.

   Ponieważ wgrywasz nowe produkty, pole „*Set stock to zero for all exiting products not present in the file*” możesz pozostawić niezaznaczone (wyjaśnienie w kolejnej sekcji).
4. Kliknij **Upload**.

Zobaczysz podsumowanie importu, w tym ewentualne błędy. System pokaże też, ile produktów tworzysz, a ile aktualizujesz. Jeśli wszystko się zgadza, kliknij **save**.

{% hint style="success" %}
Dobrą praktyką jest sprawdzenie, czy produkty zostały wgrane/zaktualizowane zgodnie z zamierzeniem.
{% endhint %}

Następnie możesz wgrać kolejny arkusz lub przejść do strony produktów, aby zobaczyć nowe pozycje.

## Aktualizacja istniejących danych produktów

Poniższe instrukcje dotyczą aktualizacji danych istniejącego produktu. Narzędzie jest przeznaczone jako szybki sposób na zmianę cen i stanów magazynowych.

{% hint style="info" %}
Możesz jednocześnie wgrać nowe produkty i zaktualizować istniejące w ramach jednego pliku CSV. Instrukcje są rozdzielone dla czytelności, ale możesz łączyć nowe produkty i aktualizacje w jednym arkuszu.
{% endhint %}

### Przygotuj plik CSV do importu

Proces aktualizacji jest podobny do [wgrywania nowych produktów](#import-new-products). Najpierw pobierz **Product List Template** i uzupełnij nazwy produktów oraz nazwy dostawców. Jeśli masz już taki arkusz z poprzedniego importu — tym lepiej.

System wymaga siedmiu pól, aby poprawnie zidentyfikować produkt do aktualizacji. Są cztery pola możliwe do aktualizacji i cztery, których nie da się zaktualizować tym narzędziem.

| Pola wymagane (nie można ich aktualizować) | Pola, które można aktualizować | Pola, które nie aktualizują się i nie są wymagane |
| ------------------------------------------ | ------------------------------ | ------------------------------------------------- |
| \*producer                                 | sku                            | ^variant\_unit\_name                              |
| \*name                                     | price                          | ^tax\_category                                    |
| ^category                                  | in\_stock                      | ^shipping\_category                               |
| \*units                                    | unlimited                      | ^description                                      |
| ^unit\_type (jeśli dotyczy)                |                                |                                                   |
| ^variant\_unit\_name (jeśli dotyczy)       |                                |                                                   |
| \*display\_name                            |                                |                                                   |

*^ jeśli spróbujesz zaktualizować te pola, zobaczysz błąd*

*\* jeśli spróbujesz zaktualizować te pola, utworzysz nowe produkty lub warianty zamiast aktualizować istniejący produkt.*

Po uzupełnieniu plik .csv można [zaimportować](#import-the-csv) tak samo jak dla nowych produktów.

{% hint style="info" %}
**Set stock to zero for all exiting products not present in the file:**\
Jeśli zaznaczysz to pole, system ustawi „In Stock” na zero dla *wszystkich produktów już istniejących na Twojej liście, których nie ma w pliku importu.*\
Jeśli produkt był „Unlimited”, usunięcie go z importu ustawi stan na 0.
{% endhint %}

## Import nowego magazynu lub aktualizacja magazynu

Skorzystaj z tych instrukcji, jeśli chcesz dodać lub zaktualizować produkty w [magazynie](/smaki-wsi-docs/basic-features/products-1/inventory-tool.md).

### Przygotuj plik CSV do importu

Najpierw pobierz **Inventory Template CSV** ze strony **Product Import**.

Szablon zawiera nagłówki kolumn wymagane do poprawnego importu produktu. Każdy wiersz odpowiada nowemu produktowi lub wariantowi. Poniżej opis sposobu wypełniania każdej kolumny.

{% hint style="info" %}
**Uwaga:** wszystkie pola są wrażliwe na wielkość liter — musisz użyć mL, a nie ml, oraz Dairy, a nie dairy.
{% endhint %}

| Column Title           | Required? | Description                                                                                                                                                                                                                               | Example                              |
| ---------------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ |
| producer               | Y         | Nazwa profilu producenta, do którego zostanie przypisany ten element magazynu                                                                                                                                                             | Four Mile Farm                       |
| distributor            | Y         | Nazwa profilu huba, do którego zostanie przypisany ten element magazynu                                                                                                                                                                   | Demo Hub                             |
| name                   | Y         | Nazwa produktu                                                                                                                                                                                                                            | Yoghurt                              |
| display name           | N         | To pole dotyczy wariantów (patrz instrukcje poniżej). Jeśli nie tworzysz wariantu, pozostaw puste.                                                                                                                                        | Rasberry Yoghurt                     |
| variant\_unit\_name    | Y         | Jeśli produkt jest sprzedawany jako sztuka (np. bochenek, pęczek, dynia), wpisz typ sztuki                                                                                                                                                | Bunch                                |
| units                  | Y         | Wartość wagi, objętości lub ilości                                                                                                                                                                                                        | 500                                  |
| unit\_type             | Y         | Jednostka sprzedaży (g, kg, T, mL, L). Jeśli sprzedawany jako sztuka (np. pęczek) zostaw puste                                                                                                                                            | g                                    |
| price                  | Y         | Cena produktu. Jeśli produkt jest opodatkowany, powinna to być cena z podatkiem.                                                                                                                                                          | 3.70                                 |
| On\_Hand (in\_stock)   | Y         | Sprawdź zasady dla stanu nieograniczonego poniżej                                                                                                                                                                                         | leave blank as unlimited is set to 1 |
| On\_demand (unlimited) | Y         | Jeśli puste — „Użyj ustawień magazynu producenta”, więc „in\_stock” powinno być puste. Jeśli ustawisz „1” — „Unlimited = Yes”, więc „in\_stock” powinno być puste. Jeśli ustawisz „0” — „Unlimited = No”, więc „in\_stock” jest wymagane. | 1                                    |
| sku                    | N         | Kod SKU produktu                                                                                                                                                                                                                          | AD001265                             |

### Import CSV <a href="#import-the-csv" id="import-the-csv"></a>

Po wypełnieniu **Inventory Template CSV** możesz wgrać go do Smaki Wsi.

1. Wejdź w **Products** > **Product Import**.
2. **Select import type:** wybierz Inventories.
3. **Select a spreadsheet to upload**.
4. Kliknij **Upload**.

Zobaczysz podsumowanie importu, w tym ewentualne błędy. System pokaże też, ile produktów tworzysz, a ile aktualizujesz. Jeśli wszystko się zgadza, kliknij **save**.

{% hint style="success" %}
Dobrą praktyką jest sprawdzenie, czy produkty zostały wgrane/zaktualizowane zgodnie z zamierzeniem.
{% endhint %}

**Uwaga:** Wszystkie pola są wrażliwe na wielkość liter, więc musisz użyć dokładnych nazw kategorii i unit\_type, np. „mL” i „Dairy” zamiast „ml” lub „dairy”.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://smaki-wsi.gitbook.io/smaki-wsi-docs/basic-features/products-1/product-and-inventory-import.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
