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

# Import customers, cars, events, and photos

> Bring existing customer lists, vehicle records, historical events, and photo archives into Car Storage Software using the Import Data page.

Use **Import Data** when you already have information in a spreadsheet or photo archive from another system, a paper list, or files your team kept in Excel or Google Sheets.

## What you will accomplish

You will upload files, match spreadsheet columns to the correct fields, review a preview, and create many records at once—without typing each item by hand.

The Import Data page has **four tabs**:

* **Customers** — names, emails, phones, addresses, tags, and additional contacts.
* **Cars** — vehicles linked to customers by email, VIN, or license plate.
* **Events** — historical service visits, intakes, and activity from a legacy system.
* **Photo ZIP** — folders of inspection or event photos tied to customers and cars.

![Import Data page showing Customers, Cars, Events, and Photo ZIP tabs at the top](https://mintcdn.com/carstoragesoftware/R5kE8xRstcG_Arf7/images/contacts/import-data-all-tabs.webp?fit=max\&auto=format\&n=R5kE8xRstcG_Arf7\&q=85\&s=a24c2091f22e1f58ebd29b95ecc1c413)

*Open [Import Data](https://www.carstoragesoftware.com/dashboard/import) from the sidebar. Each tab handles a different kind of bulk upload.*

> [!TIP]
>
> **Setting up a new facility?**
>
> [Load customers, cars, and plans during onboarding](/docs/basics/import-customers-cars-and-plans-during-onboarding.md) has every example sheet in one place and explains how email links customers, cars, recurring plans, and additional contacts.

## Recommended import order

Follow this order when you are moving a facility onto Car Storage Software for the first time:

**1. Import customers first**

Customer records are the foundation. Cars, events, and photos all link back to people.

**2. Import cars second**

Vehicles connect to customers when your spreadsheet includes a matching email, VIN, or plate.

**3. Import historical events third (optional)**

Use the **Events** tab when you have past service history in a spreadsheet.

**4. Import photo ZIP last (optional)**

Use **Photo ZIP** when you have folders of photos from a previous system. Photos link best after customers and cars exist.

![Import Data page showing tabs for Customers and Cars with a customer template download card](https://mintcdn.com/carstoragesoftware/R5kE8xRstcG_Arf7/images/contacts/import-customers-page.webp?fit=max\&auto=format\&n=R5kE8xRstcG_Arf7\&q=85\&s=c958b23030d15b7c7d9c01d5750ed33d)

*The Import Data page lets you import customers first, then cars if you have vehicle records to bring in.*

## Before you start

* Open your spreadsheet and make sure each customer is on one row.
* Use clear column names, such as **First Name**, **Last Name**, **Email**, **Phone**, **Street Address**, **City**, **State**, and **ZIP**.
* Save the file as a **CSV**, **XLS**, or **XLSX** file.
* If you want cars to connect to customers automatically, include a shared value such as the customer's email address, the car VIN, or the license plate.
* If possible, import customers before importing cars. Cars need a customer record to connect to.

> [!NOTE]
>
> **What is a CSV file?**
>
> A CSV file is a plain spreadsheet file. Most spreadsheet tools can create one. In Excel or Google Sheets, use **File**, then **Download** or **Save As**, then choose **CSV**.

## Step 1: Open the import page

Import lives on its own page—not inside the contacts list. That keeps bulk upload separate from day-to-day customer lookup. After import, open [All Contacts](https://www.carstoragesoftware.com/dashboard/contacts/all) to confirm new records appear.

**1. Go to Import Data**

In the left sidebar, open **Import Data**, or go directly to [Import Data](https://www.carstoragesoftware.com/dashboard/import).

If your facility is still onboarding, the setup checklist may also link you here.

**Expected result:** You see tabs for **Customers**, **Cars**, **Events**, and other import types your team uses.

**2. Stay on the Customers tab**

The page opens on the **Customers** tab. Use this tab for names, emails, phone numbers, addresses, tags, and additional contacts.

**3. Download the template if you are not sure what to use**

Click **Download** on the **Download customer template** card. The template shows the recommended column names.

> [!NOTE]
>
> **Other import tabs on the same page**
>
> The **Cars** tab brings in vehicle records after customers exist. Some facilities also use **Events** to import event registrations or attendee lists. Each tab has its own template—stay on **Customers** until people records are in the system, then switch tabs for the next file.

## Step 2: Upload the customer file

**1. Click the file picker**

Click the file field below the template card.

**2. Choose your spreadsheet**

Select your CSV, XLS, or XLSX file from your computer.

**3. Wait for the row count**

After the file loads, the page shows how many rows were found. This tells you the file was read successfully.

## Step 3: Match spreadsheet columns to customer fields

After the file loads, you will see a mapping area. "Mapping" means telling the system which spreadsheet column belongs in each customer field.

![Customer import mapping screen showing name format, address format, database fields, spreadsheet columns, additional contacts, and auto-link car options](https://mintcdn.com/carstoragesoftware/R5kE8xRstcG_Arf7/images/contacts/import-customer-mapping.webp?fit=max\&auto=format\&n=R5kE8xRstcG_Arf7\&q=85\&s=53d61c63e252ca75ca7fb3f9bca4fdd5)

*The mapping screen lets you review every field before you create customer records. Match each Database field on the left to the correct Spreadsheet column on the right.*

**1. Choose the name format**

Select **Separate columns (First Name, Last Name)** if your spreadsheet has one column for first name and one column for last name.

Select **Combined column (Full Name)** if your spreadsheet has one full name column, such as "Alex Morgan".

**2. Choose the address format**

Select **Separate columns (Street, City, State, ZIP)** if those details are in separate columns.

Select **Combined column (Full Address)** if the full address is in one column.

**3. Click Auto-Map Columns**

Click **Auto-Map Columns**. The system will try to match common column names for you.

**4. Review each row in the mapping list**

Look at each **Database Field** and the selected **Spreadsheet Column** beside it.

If a match is wrong, open the dropdown and choose the correct column. If you do not want to import a field, choose **-- None --**.

**5. Map additional contacts if needed**

If each customer has an assistant, spouse, bookkeeper, or other related person in the spreadsheet, use **Additional Contacts (optional)**.

Click **Add Contact**, then map the contact's name, email, and phone columns.

**6. Use Auto-Link Car only when you have a reliable match**

Use **Auto-Link Car** if your customer file includes a VIN or license plate that already exists in your car records.

This helps the system connect imported customers to existing cars automatically.

## Step 4: Review before importing

**1. Click Review Import**

Click **Review Import** at the bottom of the mapping screen.

**2. Look for missing required information**

Every customer needs a first name and last name. If either one is missing, go back and fix the mapping or update the spreadsheet.

**3. Check for duplicates**

Review any customers that look like they may already exist. Duplicate records make billing, cars, documents, and portal access harder to manage.

**4. Confirm the import**

When the preview looks correct, confirm the import. The system creates the customer records.

![Customer import review screen showing a preview of rows before records are created](https://mintcdn.com/carstoragesoftware/R5kE8xRstcG_Arf7/images/contacts/import-customer-review.webp?fit=max\&auto=format\&n=R5kE8xRstcG_Arf7\&q=85\&s=460971ed9034b2f79a49f3c4982c0556)

*Review Import shows a preview so you can catch missing names, wrong columns, or possible duplicates before you create records.*

> [!TIP]
>
> **Take your time on this screen**
>
> This is the last safe stop before new records are created. If something looks wrong, use the back action, fix your spreadsheet or mapping, and review again.

## Step 5: Import cars after customers

If you also have a vehicle spreadsheet, return to [Import Data](https://www.carstoragesoftware.com/dashboard/import) and choose the **Cars** tab.

![Import Data page with the Cars tab selected showing the car import template and file upload area](https://mintcdn.com/carstoragesoftware/R5kE8xRstcG_Arf7/images/contacts/import-cars-tab.webp?fit=max\&auto=format\&n=R5kE8xRstcG_Arf7\&q=85\&s=8d6fd821243c872137211533eb54697c)

*After customers are in the system, use the Cars tab to bring in vehicle records and connect them to the right owners.*

* Include vehicle details such as make, model, year, VIN, color, license plate, and declared value if you have them.
* Include **Customer Email** when possible. This helps match each car to the correct customer.
* After the car import, spot check a few customer records to confirm their cars appear in the **Customer's Cars** section.

## Step 6: Import historical events (optional)

Use the **Events** tab when your old system exported past visits—intakes, detail sessions, transport runs, or other activity you want in customer history.

**1. Open Import Data and choose Events**

Go to [Import Data](https://www.carstoragesoftware.com/dashboard/import) and click the **Events** tab.

**Expected result:** You see **Download event template** and an upload area for CSV or Excel files.

**2. Download the event template**

Click **Download** on the template card if you are building a file from scratch.

The template includes columns such as **External Event ID**, **Composite Car ID**, **Customer Email**, **VIN**, **Event Date**, **Activity Type**, **Title**, **Notes**, and **Mileage**.

**3. Upload your event spreadsheet**

Click the file field and choose your CSV, XLS, or XLSX file.

**Expected result:** The page shows how many rows were found and a mapping table appears.

**4. Map spreadsheet columns to event fields**

Review each **Field** row and choose the matching **Spreadsheet Column**.

Click **Auto-Map Columns** if your headers are close to the template names.

**Why this matters:** At least one identifier should connect each row to a customer or car—such as **Customer Email**, **VIN**, **Composite Car ID** (for example `0003.001`), or **External Customer ID** / **External Car ID** from your old system.

**5. Click Review Import**

Click **Review Import** at the bottom of the mapping area.

**Expected result:** You move to the import preview page where you can confirm each row before records are created.

**6. Confirm the import on the preview page**

Read each row on the preview screen. Skip or fix rows that do not match a customer or car in your system.

When the preview looks correct, confirm the import.

**Expected result:** Historical events appear on customer activity timelines and on vehicle history where they belong.

![Import Data page with Events tab selected showing download event template card and upload area](https://mintcdn.com/carstoragesoftware/R5kE8xRstcG_Arf7/images/contacts/import-events-tab.webp?fit=max\&auto=format\&n=R5kE8xRstcG_Arf7\&q=85\&s=d3d47d9694f9500c29cc8671b9262d92)

*The **Events** tab is for spreadsheet history—not for scheduling future work. Use [Schedule](https://www.carstoragesoftware.com/dashboard/schedule) for upcoming appointments.*

> [!WARNING]
>
> **Import customers and cars before events**
>
> Event rows link to people and vehicles already in Car Storage Software. If a VIN or email in your spreadsheet does not match an existing record, that row may not import cleanly. Finish customer and car imports first, then try events again.

> [!TIP]
>
> **Activity Type must match your facility**
>
> The **Activity Type** column should use values your facility recognizes (for example `new_car_intake` or `dealer_service`). Ask your admin which activity types exist in [Settings > Events](https://www.carstoragesoftware.com/dashboard/settings/events) if imports fail on unknown types.

## Step 7: Import event photos from a ZIP file (optional)

Use **Photo ZIP** when you have folders of photos from a previous system—inspection pictures, intake photos, or event images stored on a hard drive.

**1. Open Import Data and choose Photo ZIP**

Go to [Import Data](https://www.carstoragesoftware.com/dashboard/import) and click the **Photo ZIP** tab.

**Expected result:** You see **Bulk Event Photo Import** with instructions about folder structure.

**2. Prepare your ZIP folder structure**

Organize photos in folders before you zip them. Common patterns:

* **Legacy IDs:** folders like `0003/001/` where numbers match external customer and car IDs from your old system.
* **VIN folders:** a folder named with the vehicle VIN, with event subfolders inside.

**Why this matters:** The importer uses folder names to guess which customer and car each photo belongs to.

**3. Zip the folders and upload**

Create one `.zip` file containing your folder structure. Click **Upload** (or choose the file) on the Photo ZIP tab.

**Expected result:** The file uploads and the system analyzes the folder structure. This step can take a few minutes for large archives.

**4. Review matched cars and events**

After parsing finishes, review which folders matched vehicles in your facility.

Fix any folders that did not match by linking them to the correct car before you start the import.

**Expected result:** You see how many cars and photos were found before anything is created.

**5. Confirm and run the import**

When matches look correct, confirm the import. The system creates events and attaches photos.

**Expected result:** Photos appear on the correct vehicle records and in customer activity history.

![Import Data Photo ZIP tab showing Bulk Event Photo Import card with folder structure instructions and upload button](https://mintcdn.com/carstoragesoftware/R5kE8xRstcG_Arf7/images/contacts/import-photo-zip-tab.webp?fit=max\&auto=format\&n=R5kE8xRstcG_Arf7\&q=85\&s=25bc69692279672353283fc0775a1bdd)

***Photo ZIP** imports many photos at once. HEIC files from iPhones are converted to JPEG automatically during import.*

> [!WARNING]
>
> **Photos link best after customers and cars exist**
>
> The importer matches folders to VINs and IDs already in your facility. Import customers and cars first so more folders match on the first try.

> [!TIP]
>
> **Large ZIP files need time**
>
> Do not close the browser tab while a large ZIP uploads or parses. If the upload fails, try a smaller ZIP split by year or by customer batch.

## What happens next

After customers are imported, go to [All Contacts](https://www.carstoragesoftware.com/dashboard/contacts/all) and search for a few names from your spreadsheet.

Then open one customer record and confirm:

* The name, email, phone, and address look right.
* Tags were imported cleanly and are not duplicated.
* Cars are linked to the correct customer.
* Additional contacts, if imported, appear in the **Contacts** section.
* Historical events, if imported, appear in [customer activity](/docs/contacts/review-customer-activity-and-history.md).
* Imported photos, if used, appear on the correct vehicle records.

## Troubleshooting

> [!WARNING]
>
> **The file will not upload**
>
> Make sure the file is a CSV, XLS, or XLSX file. If the file came from another system, open it in a spreadsheet tool and save a fresh copy as CSV.

> [!TIP]
>
> **Names are split incorrectly**
>
> Go back to the mapping screen and change the **Name Format** setting. If full names are hard to split, edit the spreadsheet so first name and last name are in separate columns.

> [!WARNING]
>
> **I see duplicate customers**
>
> Pause before confirming the import. Search [All Contacts](https://www.carstoragesoftware.com/dashboard/contacts/all) for the duplicate names or emails. It is usually better to update the existing customer than to create a second record.

> [!TIP]
>
> **Cars did not link to customers**
>
> Open a customer record and check the **Customer's Cars** section. If a car is missing, use the steps in [Link cars and documents to a customer](/docs/contacts/link-cars-and-documents.md).

> [!WARNING]
>
> **Event rows did not import**
>
> Check that the customer email or VIN in your spreadsheet matches a record already in Car Storage Software. Open the import preview and look for rows marked to skip. Fix the spreadsheet and try again.

> [!TIP]
>
> **Photo ZIP folders did not match**
>
> Confirm folder names use VINs or external IDs that exist in your facility. Import customers and cars first, then re-upload the ZIP. If your old system used different ID formats, ask your admin whether IDs were stored on customer or car records during customer import.


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