Going live
Moving your item list into BooksPOS from Excel
Bring in products with opening stock, customers with what they owe and suppliers with what you owe them, from a CSV file, with every row checked before anything is saved.
By the BooksPOS team · · written for the build of 26 Sep 2026
Most shops come to BooksPOS with years of records in Excel, another program or a register. Typing thousands of items in again is not an option, and neither is guessing whether the old list came in correctly. BooksPOS imports your items, customers and suppliers from a CSV file and checks every row before it saves anything.
Before you start
- Pick one closing date. Take the stock count and the khata balances as of the same day, for example the night before you start with BooksPOS. Opening figures are dated with it.
- Import in this order: items first, then customers, then suppliers. It is not required, but it is the easiest to check.
- Keep a copy of every file you import. BooksPOS keeps one too, but yours is the one you will correct.
- Sign in as the owner or a manager. Importing items with opening stock needs both catalogue editing and stock adjustment permission; customers or suppliers with balances need the opening balance permission.
Save the file as CSV UTF-8
In Excel choose File › Save As and pick CSV UTF-8 (Comma delimited). The plain "CSV" type cannot hold Urdu; BooksPOS will still read it for English text, but warns you. Excel workbooks (.xlsx) are not read directly yet.
- Keep the heading row. Columns can be in any order and have any names.
- Amounts may include "Rs", "PKR" and thousands commas ("Rs 1,250.50"), with at most two decimals.
- Write dates day-month-year:
30-06-2026,30/06/2026or2026-06-30. - One row per edition. The 2025 and 2026 editions of a reader are two rows and become two items with separate stock.
- Opening stock is in pieces or copies, not boxes, and needs a unit cost so stock and profit are valued correctly.
The three steps on screen
On the store PC, open Import data and choose Import products (or customers, or suppliers).
- Choose the file. BooksPOS shows how many rows and columns it found.
- Match the columns. Each BooksPOS field shows which of your columns fills it, with an example value, so a wrong match is easy to spot. Common names such as "Book Name", "Price", "Qty", "Class" or "Balance" are matched for you.
- Check all rows. Nothing is saved yet. Every row is marked as ready, already there (skipped), an error, or a warning that does not block the import.
Errors are listed with the row number as Excel shows it (the heading is row 1). Typical ones: an ISBN whose check digit is wrong (BooksPOS never guesses a corrected ISBN), opening stock without a unit cost, text in a price column, or the same item twice in the file. A typical warning: another edition of this title is already in BooksPOS, so this row becomes a separate item.
Either correct the file and choose it again, or tick Import the other rows and leave out the ones with errors. Then press Import.
While it runs
- The import runs on the store server in the background. Tills keep selling meanwhile. You can close the window.
- Rows are saved in small batches, each complete or absent. If the PC switches off mid-import, it carries on from where it stopped when the store server starts again, and nothing is imported twice.
- Import data lists every import: file name, who imported it, when, and what became of each row. We tested this with a 50,000-row file.
Correcting mistakes afterwards
Imported records are ordinary records, and nothing is overwritten silently. Fix item details or prices in Catalog (price history is kept). Correct opening stock with a stock adjustment, and an opening balance with a correction entry, each with a reason.
Not built yet
- Updating prices of items already in BooksPOS from a file: those rows are skipped. Change prices in Catalog for now.
- Reading Excel (.xlsx) files directly.
- Importing customer or supplier advances as opening figures, or past sales history.
- Undoing a whole import in one step.