# Import and export your stores

You can add your stores one by one, or all at once: from a spreadsheet (CSV or Excel), or from the locations you already have in Shopify. Importing also edits your stores in bulk: export them, edit the file in Excel, then import it again.

## Import a file

1. In the app, open **Stores**, then **Import**.

2. To start from a file in the right format, download the template in **Excel** or **CSV**: it has the columns and two examples. Your file has another format? See [Your file has another format](#your-file-has-another-format).

3. Drop your file, then click **Upload and preview**.

4. Check the preview: nothing has been imported yet. See [Read the preview](#read-the-preview).

5. Click **Import valid rows**. A progress bar follows the import, above the preview. You can leave the page: the import goes on.

When every row went through, the app takes you back to the list with the message **Import complete**. Otherwise, it shows the report: stores created, updated, unchanged and rejected. Active stores are published on your online store within a few minutes.

To import nothing, click **Cancel import**: no store is changed.

## The file

One row per store. The first row holds the column names, in English, as in the template. Only **Name** and **Country code** are required.

| Column | What it holds |
| --- | --- |
| Handle | The store's identifier in its page address. A row with the Handle of an existing store updates it. Empty, the store is created and its identifier comes from the name. |
| Name | The store's name. |
| Status | `active` (published) or `draft`. Empty: draft. |
| Type | The type, in your own words. A type that doesn't exist yet is created. |
| Store page, Store locator | `yes` or `no`: where the store is published. Empty: the default channels of its type for a new store, its current channels for an existing store. |
| Address 1, Address 2, Zip, City | The address. |
| Province code | Leave empty: the app fills it in. |
| Country code | The two-letter country code (FR, US). |
| Latitude, Longitude | Optional: the app places the store from its address. |
| Phone, Email | The contact. The phone, with or without its country code: the app writes it in international format. |
| Access | How to get there (metro, bus, car park), shown under the address. Empty for a new store: the app suggests one from its location, in the minutes after the import. |
| Description | The text of the store page. Plain text, a blank line between paragraphs, or the HTML of an export (bold, italics, links, lists). |
| Tags, Services | Several values in one cell, separated by commas. |
| Monday … Sunday | The day's hours: `10:00-13:00, 14:00-19:00`, or `closed`. Empty: closed. |
| Special hours | The upcoming exceptional hours, separated by semicolons: `2026-12-24 10:00-16:00 (Christmas Eve); 2026-08-01..2026-08-15 closed (Summer holidays)`. |
| Photos | The public addresses (`https://…`) of the store's photos, separated by spaces or line breaks, the main one first. Shopify downloads them into your Files after the import: 20 photos per store and 20 MB per image at most. |

The file can be a CSV separated by commas or semicolons, or an Excel `.xlsx` file. 5,000 rows and 10 MB at most.

### What the import changes

- A row updates the store with the same **Handle**, or creates one.
- A column left out of the file doesn't change that field. An empty cell clears it. To change only the hours, for example, keep only **Handle** and the day columns.
- The **Store page** and **Store locator** columns are the exception: an empty cell never clears them.
- The stores missing from the file are never deleted.
- A row identical to the store doesn't change it.

## Read the preview

Before writing anything, the app shows what your file would do.

- **Four cards**: **To create**, **To update**, **Unchanged** and **In error**. Click a card to see only those stores; click it again to show them all.
- **The stores of the file**, 50 per page: their name, location, what they become, and for each one its errors (the column and the reason) and warnings.
- **The banners** tell how many stores will be placed on the map from their address, which new types will be created, and how many pages will go online or be removed.

Rows in error are skipped, the others are imported. To fix the rows in error, click **Download rejected rows**: the file has an **Error** column that says what to fix. Fix it, then import it again.

**Caution:** If the preview announces removed pages, their addresses will stop working after the import.

## Your file has another format

An AI assistant (ChatGPT, Claude, Gemini, Sidekick…) can convert any spreadsheet to the right format.

1. In the import window, click **Ask an AI agent to convert my file**. The app copies a request.

2. Open the assistant of your choice. Paste the request and attach your file.

3. If your file has fields the import has no column for (product ranges, your own stores apart from retailers…), the assistant lists them and suggests where each one goes: Type, Tags, Services, or left out. Confirm or correct.

4. Download the converted file the assistant gives you.

5. Add it to the import window, then check the preview as for any file.

The assistant reads the format from this reference page:

[the import format reference](https://app.getlavia.app/docs/import-format.md)

**Note:** Your file is sent to the assistant you choose. The preview remains your safety net: nothing is imported before you have checked it.

## Import your Shopify locations

Your store's locations (**Settings > Locations**) can become stores.

1. Open the **Shopify locations** screen: from the **Add your stores** step of the setup guide, with **Import your Shopify locations**, or from the **N Shopify locations to review** notice on the home page.

2. For each location that is a store, click **Create the store**. It is created as a draft, with the location's name, address, phone and position.

3. For warehouses and other locations, click **Ignore**: they are no longer suggested.

4. Complete the new stores (type, hours, photos), then set them as active.

If you already have stores, the screen first shows the **Matches found**: locations that look like one of your stores, with a **Same address** badge or what differs (**Different street**, **Different postal code**…).

- **Link**: the store keeps its information; its address and phone become the location's.
- **Not the same**: the location moves to **Other locations**, and this store is no longer suggested for it.

Each answer is saved when you click; the message that confirms it offers **Undo**. An ignored location stays available at the bottom of the screen, under **Show the ignored locations**.

## Export your stores

1. In **Stores**, click **Export**.
2. Choose **Export to Excel (.xlsx)** or **Export to CSV**.

The export holds all your stores, whatever the list's filters, in the import's columns, plus the address of their page (**Page URL**, ignored by the import).

## Good to know

- Photos are added after the import, in the minutes that follow; the report counts them and lists, on the store's row, an address that gave no image (missing, private, not an image, too large). An address the store already has is not added again, so an export imported again adds no photo. The import never removes a photo. A Google Drive or Dropbox sharing link isn't the address of the image: use the image's own address.
- Old Excel `.xls` files aren't accepted: save them as `.xlsx` or CSV.
- The state or province isn't needed: the app finds it from the postal code, then from the address. The one in your file is never replaced. If it can't be found, the store is imported without one, with a warning: complete it in the store's form.
- A store with a latitude and longitude but no address gets the address found at that spot, with a warning: check it, coordinates can point beside the store.
- A store without latitude and longitude is placed on the map from its address. To place again a store that moved, empty its Latitude and Longitude columns.
- No store reaches your online store without a position: an active store the app couldn't place (no address, an address that can't be found) is imported in draft, with a warning. Activate it once placed. To find them later, filter the list with "Position on the map is unknown".
- The app tidies what your file gives: phones in international format, cities all in capitals or lowercase ("AIX-EN-PROVENCE" becomes "Aix-en-Provence"), the leading zero a spreadsheet drops from a postal code ("6000" becomes "06000" in France). A phone it can't read is kept, with a warning. Names and street addresses are never changed.
- A postal code that isn't one of its country's, or a missing postal code or city, is checked against the address found by Google, even when your file gives the coordinates. When the postal code belongs to another country (98000 for Monaco, filed in France), the country found replaces the file's, with a warning saying what changed.
- Two rows at the same address are both imported, with a warning: delete one if it is the same store.
- A Shopify location with an incomplete address (for example without a state in the United States) shows an error: complete it in Shopify.
- Your previous imports and their reports stay available: from an import's page, click **Imports** at the top of the screen.