Migration Updated 2026-06-02

Validate imported data before replacing old stores

What this article helps you do

Run checks before using the replacement checkbox (Delete existing stores uploaded through CSV) so you avoid missing or broken data.

Before you start

  • Your CSV has the required name and address columns
  • You understand that Delete existing stores uploaded through CSV replaces only prior CSV-imported stores
  • Manual stores are not deleted when you replace; only stores with source “csv” are removed

Step-by-step instructions

1. Do a dry run without replace

Upload your CSV in Stores -> Bulk with Delete existing stores uploaded through CSV unchecked. This confirms parsing and skipped-row behavior before replacement.

2. Check the import summary

After the upload:

  • Imported count - How many stores were created
  • Skipped rows - Rows that failed (missing name or address, parse errors)
  • Warnings - Geocoding failures, unmapped columns, etc.

Fix any skipped rows before doing a replace. Use the row numbers in the summary to find and correct those rows in your CSV.

3. Verify required columns and data

Confirm every row has:

  • A value in the name column (or alias like store_name)
  • A value in the address column (or alias like full_address)

Empty cells in either field cause the row to be skipped. Remove empty rows or fill them in.

4. Check geocoding behavior

If your CSV has no lat or lng, Mapstore geocodes addresses during import only when a valid Google Maps API key is saved in Settings. Otherwise, rows without coordinates stay ungeocoded and may not show on the map. See Address geocoding failed during import.

5. Run replace when you’re confident

When the dry run looks good and you’ve fixed skipped rows:

  1. Go to Stores -> Bulk
  2. Upload the same (or updated) CSV
  3. Check Delete existing stores uploaded through CSV
  4. Click Upload
  5. Confirm in the modal - Mapstore will delete all CSV-imported stores and import the new data

Manual stores remain. Only stores that came from a previous CSV import are removed.

6. Keep a backup

Export or copy your current stores before replace, or keep your CSV as the source of truth so you can re-import if needed.

How to verify it worked

  • Import summary shows expected imported count and no (or few) skipped rows
  • Stores list matches your CSV
  • Store locator map shows locations
  • Manual stores you wanted to keep are still there

Common issues and fixes

IssueFix
Rows skipped with “Missing required field(s)“Add name and address to every row. Re-import.
Geocoding failures at scaleAdd lat and lng, or save and test a Google Maps API key. See Address geocoding failed during import.
Replaced too much / lost storesReplace only removes CSV-imported stores. Manual stores stay. Re-import from your CSV if you have a backup.
Unsure if CSV is correctAlways do a dry run with replace unchecked first.