How to migrate from Excel spreadsheets to an inventory and contact app without losing data
Excel spreadsheets are a great starting point when you open a small business, but as soon as multiple people update stock, broken formulas, duplicate rows, and outdated file versions start costing real money. Moving your product catalog and customer-supplier records from Excel into a dedicated inventory app takes less than an afternoon when you clean your columns first and follow a structured bulk import order.
To switch from Excel to an inventory app cleanly, first merge and deduplicate your spreadsheets, then bulk-import your product list using the template (including SKUs, barcodes, prices, tax rates, low-stock alerts, and initial stock with its target warehouse). Next, bulk-import your customer and supplier contacts, enter each contact's opening balance via a Balance Adjustment or open invoice, and archive the old spreadsheet as read-only.
When Excel spreadsheets start hurting your daily stock and cash control
Spreadsheets feel flexible because any cell accepts any text, yet that same lack of rules is why inventory sheets slowly drift away from reality. One accidental sort applied to a single column instead of the whole table scrambles prices across hundreds of products, while copying a file between a laptop and a phone creates conflicting versions like 'Stock_Final_v3.xlsx' where nobody knows which count is current.
Even more importantly, a static spreadsheet cannot connect a sale to your stock and your customer ledger at the same time. When you sell an item on credit in Excel, you have to manually subtract the quantity on the inventory tab, type a row on the customer tab, and later update the cash tab when payment arrives. Migrating to a structured inventory and contact app turns those three manual edits into a single transaction.
Bulk importing your product catalog and initial warehouse stock from Excel
Before uploading your product file, spend twenty minutes cleaning your existing sheet so you do not bring years of messy rows into your new system. Remove discontinued items you will never restock, standardize measurement units (such as Piece, Kg, Box, or Meter), and check that every barcode and stock code (SKU) is unique.
When you transfer your cleaned columns into the GiroPS product Excel template, you can import both your catalog details and your starting physical quantities in one step. Alongside the product name, SKU, barcode, unit, purchase price, sales price, VAT/tax rate, and low-stock alert threshold, the template lets you enter the initial stock quantity and specify which warehouse those items will enter.
- Fill in core catalog fields: product name, unique stock code (SKU), barcode, and measurement unit
- Enter purchase price, sales price, and applicable VAT/tax rate without currency symbols inside number cells
- Set a critical stock (low-stock alert) level for fast-moving items so reorder notifications work from day one
- Include the initial stock quantity and target warehouse name to generate opening stock movements automatically
Bulk importing customer and supplier contacts vs. setting opening balances
Your second Excel import brings over everyone you do business with—customers, suppliers, and other commercial contacts. Using the contact import template, you can upload the contact name, contact code, contact type (Customer, Supplier, or Other), phone number, email address, street address, tax office and tax ID number, and the contact's default currency in a single batch.
Pay close attention to one critical rule during migration: contact opening balances are not included inside the contact Excel template. Putting historical debt figures directly into a static contact profile sheet often causes duplicate entries or mismatched currency totals. Instead, once your contacts are imported, open each contact's detail page and record their current agreed receivable or payable using a 'Balance Adjustment / Opening Balance' transaction—or enter the unpaid open invoices directly.
| Data Category | Fields Included in the Excel Import Template | How Opening Quantities / Balances Are Set | Pre-Import Check to Run |
|---|---|---|---|
| Product Catalog | Name, SKU, barcode, unit, buy/sell price, VAT rate, critical stock | Included directly in the product Excel row | Remove duplicate barcodes and text inside price cells |
| Initial Stock | Initial stock quantity and target warehouse column | Created automatically into the selected warehouse on import | Ensure the warehouse name matches an existing warehouse |
| Contact Directory | Name, code, type (Customer/Supplier/Other), phone, email, address, tax info, currency | Imported as clean contact profiles with zero starting balance | Verify contact type and ISO currency code per contact |
| Contact Opening Balance | Not part of the contact Excel template | Entered per contact via Balance Adjustment / Opening Balance or open invoice | Reconcile net receivable or payable total before entry |
Formatting rules that prevent Excel import errors on the first try
Most spreadsheet import errors happen because cells contain hidden formatting meant for human eyes rather than software parsers. Numeric columns—such as purchase price, sales price, tax percentage, critical stock level, and initial stock—must contain pure numbers without currency abbreviations, 'pcs' suffixes, or merged header rows.
Barcode and phone number columns require special care in Excel because spreadsheets often convert long digit strings into scientific notation (such as 8.69E+12) or strip leading zeros. Format barcode, SKU, tax ID, and phone columns as Plain Text before saving, and review the import preview screen to confirm every column maps cleanly before confirming.
- Delete empty summary rows, subtotals, and merged title banners at the top or bottom of the sheet
- Format barcode, stock code, and phone number columns as Text so long numbers are never rounded
- Keep prices and quantities strictly numeric without text labels like 'units' or currency symbols
- Split giant spreadsheets with thousands of rows into logical batches by category for faster verification
First-week checklist: archiving old sheets and verifying stock accuracy
The biggest threat to a successful migration is not a technical error—it is staff continuing to type into the old Excel file out of habit while others record sales in the app. On switch-over day, move all old spreadsheets into a dated archive folder and mark them read-only so they remain available for historical reference without allowing new edits.
During your first week live in GiroPS, run a quick cycle count on your top twenty best-selling products using your phone's barcode scanner, and compare your top ten customer and supplier balances against your archived sheet. Once those core numbers match, your team can issue invoices, log collections, and track stock from mobile or web with complete confidence.
Step-by-Step Implementation
1. Clean and deduplicate your existing Excel sheets
Remove inactive products, merge duplicate customer names, format barcode columns as text, and strip currency text out of numeric price cells.
2. Create your warehouses and import the product Excel template
Download the product template, fill in product name, SKU, barcode, unit, buy/sell prices, VAT rate, critical stock level, initial stock, and warehouse, then upload.
3. Bulk import your Customers, Suppliers, and Other contacts
Populate the contact template with contact name, code, type (Customer/Supplier/Other), phone, email, address, tax office/number, and currency, then run the import.
4. Enter contact opening balances via Balance Adjustment or open invoices
Since contact opening balances are not in the Excel template, open each contact profile with an active balance and record a Balance Adjustment / Opening Balance or unpaid invoice.
5. Lock the old Excel file as read-only and run a first-week spot check
Archive your old spreadsheets as read-only to prevent double entry, and perform a quick barcode stock check on your fastest-moving items during week one.
Practical scenario
Example: Weekend Excel migration for an electrical and lighting supply shop
Marcus runs a lighting and electrical shop with 640 active products and 85 trade contacts tracked across four separate Excel workbooks. On Saturday afternoon, he deletes 90 obsolete items, pastes the remaining 640 items into the product import template with their Main Warehouse initial stock, and imports all 85 customer and supplier records in two minutes. He then spends thirty minutes entering opening balances for the 22 contacts who currently have open receivables or payables, marks his old Excel folder read-only, and opens Monday morning entirely on the app.
| Migration Stage | Source Data in Old Excel | Action Taken in the App | Time Spent & Result |
|---|---|---|---|
| 1. Product & Stock Import | 640 items with barcodes, prices, VAT, and shelf counts | Uploaded via Product Excel Template into Main Warehouse | 25 mins cleanup, instant import of catalog and stock |
| 2. Contact List Import | 65 Customers and 20 Suppliers with phone, tax ID, currency | Uploaded via Contact Excel Template with type and currency | 10 mins formatting, 85 contact cards created cleanly |
| 3. Opening Balances | 17 customer tabs and 5 supplier payables outstanding | Entered via Balance Adjustment / Opening Balance in contact details | 30 mins entry, 100% match with final spreadsheet totals |
| 4. Week-One Verification | Old workbooks moved to a read-only archive folder | Quick barcode count on top 30 fast-moving electrical items | Zero double entry and accurate low-stock alerts |
Common Pitfalls & How to Avoid Them
Frequently Asked Questions
Can I import initial stock quantities together with my product list?
Yes. The product Excel template includes columns for initial stock quantity and the target warehouse, so your product cards and opening warehouse stock are created in a single import.
Why isn't there an opening balance column in the contact Excel template?
Contact balances affect financial ledgers and currency accounts. To keep your ledger clean and auditable, you import contact profiles first and then enter their starting debt or credit from the contact's detail screen using Balance Adjustment / Opening Balance or by recording open invoices.
What if I have both customers and suppliers in my spreadsheet?
You can specify the contact type—Customer, Supplier, or Other—right inside the contact Excel template so each record is categorized properly upon import.
What happens if my Excel file has a formatting mistake on a few rows?
The import tool validates your rows before saving and flags any missing required fields or invalid numbers so you can fix them and complete the import cleanly without corrupting existing data.
Do I need barcodes on every single product to import from Excel?
No. Barcodes are optional; you can import products with just a name, unit, and prices, and add or scan barcodes later from your phone whenever needed.
See your business in real app screens
Related guides
Related resources
By business type
Track products and warehouse stock with ease
Record stock movements, warehouse transfers and counts. See low stock and record sales with negative stock when needed.