---
title: "Action: Product locations"
description: "Imports product locations (stock placements) into Sapera. Rows are matched on the location DisplayName; new locations are created when they do not exist. Run Compare first to preview the changes."
url: https://support.sapera.io/en/articles/588-action-product-locations
collection: "SyncTool"
updated: 2026-07-01
language: en
alternates: [da]
---

# Action: Product locations

Imports product locations (stock placements) into Sapera. Rows are matched on the location DisplayName; new locations are created when they do not exist. Run Compare first to preview the changes.

Imports product locations (stock placements) into Sapera. Rows are matched on the location DisplayName; new locations are created when they do not exist. Run Compare first to preview the changes.

## How to use the action

1\. Select the action in the **Action** field. 2. Point to your data source – a **file** (CSV or Excel) or a **SQL query**. 3. Map the source columns to Sapera's fields in the column mapping (see _Source fields_ below). 4. Run **Compare** to see what will be created, changed or stay unchanged – without writing to Sapera. 5. Run **Update Sapera** to perform the import.

Use the **Allow create** and **Allow update** parameters to control whether new rows are created and whether existing ones are updated.

## How matching and updating works

Each row is matched on the location's **name** (DisplayName). If the name does not exist, the location is created.

-   Locations **cannot be updated** – the name _is_ the key. They can be deleted; if a location is in use, it is first removed automatically from the products on it and then deleted.
    
-   Only the locations in your source are processed. Direction: from file/SQL into Sapera.
    

## Key parameters

<table data-id="4f5b8526-c4c5-4f3b-ad09-53323d13dc48" style="min-width: 50px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><td colspan="1" rowspan="1"><p data-id="e728a368-d450-4654-aa13-d87e645201f5" style="text-align: left;"><strong>Parameter</strong></p></td><td colspan="1" rowspan="1"><p data-id="a4078b9a-97e8-4eb5-bd0c-6fff36d45347" style="text-align: left;"><strong>Explanation</strong></p></td></tr><tr><td colspan="1" rowspan="1"><p data-id="a7ab170a-bd93-4974-a7e8-3782ca85f931" style="text-align: left;">AllowCreate</p></td><td colspan="1" rowspan="1"><p data-id="25497e9d-50a1-4530-b45f-3d1c9040574c" style="text-align: left;">When enabled, locations that do not yet exist are created.</p></td></tr><tr><td colspan="1" rowspan="1"><p data-id="b268b2c5-efab-4504-8030-fa66ed8d9652" style="text-align: left;">AllowUpdate</p></td><td colspan="1" rowspan="1"><p data-id="3e52201d-b3f3-4088-822b-111f8fa0ebbf" style="text-align: left;">When enabled, existing locations are updated.</p></td></tr></tbody></table>

## Source fields

<table data-id="37a89313-a43d-44f8-a9d5-b7166a9660c9" style="min-width: 50px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><td colspan="1" rowspan="1"><p data-id="56377e79-4089-4deb-806a-ef3da7ded7e4" style="text-align: left;"><strong>Field</strong></p></td><td colspan="1" rowspan="1"><p data-id="d86fe7f0-4f16-4091-a1ee-391f5dc3c7fa" style="text-align: left;"><strong>Explanation</strong></p></td></tr><tr><td colspan="1" rowspan="1"><p data-id="0083c53b-9a55-454e-9e0b-c519fcd39008" style="text-align: left;">DisplayName</p></td><td colspan="1" rowspan="1"><p data-id="5f642a7a-1f2e-4b72-b745-0c3f3a034e94" style="text-align: left;">Name of the product location; used to match rows against existing locations.</p></td></tr></tbody></table>

* * *

See also the overview [SyncTool – actions](https://support.sapera.io/en/articles/547-synctool-handlinger.md).

* * *

**Want to know more?**

Read more in these related articles:

[

Standard parameters for all actions

The general parameters available on most SyncTool actions: step control, error handling, timeout, etc.

](https://support.sapera.io/en/articles/648.md)
