How to use the POS and manage local inventory
Prepare your checkout
Choose a browser and device that can stay available throughout service. Open Settings and enter the shop name, region and currency. Region controls how numbers and dates appear; currency labels amounts without performing exchange conversion. This version supports currencies with two decimal places. Define the units used in your shop and the names of payment methods. The first method is treated as cash when calculating change. Make a test sale using a familiar product, check the receipt and cancel that sale with a descriptive reason. This rehearsal lets you check the keyboard, scanner and browser printing before starting daily operations. Keep the selected region consistent while entering decimal amounts.
Register products and balances
Use a unique internal code for each product. A barcode must also be unique when supplied and is always handled as text, preserving leading zeros. Name, category and description help locate an item during service. Enter the selling price and optionally its cost and minimum stock. The entered cost is preserved in each sale to calculate gross result, excluding other expenses and taxes. Quantities allow up to three decimal places for weight or volume. Choose a clear unit such as kg or liter and use the same interpretation in the product form and on your scale. Editing a stock balance creates an adjustment movement with a reason. Inactivate old products instead of reusing codes for different items.
Import with a preview
Download the CSV template to see the available fields. You can also select an XLSX workbook; the tool reads its first sheet and rejects formulas. Map spreadsheet columns to product fields and choose how to handle existing codes. In add mode, repeated codes are errors. In update mode, the internal code identifies the product and mapped values replace its record, including the supplied stock balance. Unmapped optional fields become empty. Review row errors and the preview before confirming. The complete import is validated again when saving. Correct files containing errors first; no part of an invalid batch is committed. Store codes as text in your spreadsheet to avoid losing leading zeros.
Build and review a sale
Search by name, internal code or barcode. A scanner that sends keyboard characters can fill the search field and use Enter to add an exact match. F2 focuses the scanning field. Inactive products are unavailable for new sales. Adjust quantity and discount for each item in the cart; a discount is a monetary amount rather than a percentage. The sale discount applies after individual discounts. The total cannot become negative. The cart is saved in IndexedDB after each committed change and survives a page refresh. No stock is deducted at this stage. Always check the displayed total before opening payment review, especially when selling measured quantities or applying multiple discounts.
Record payments and change
In review, add one or more payment methods and enter the amount received through each. Cash received may exceed the total; the difference becomes change. Noncash payments cannot produce change exceeding the cash received. Reports by method use cash net of that change. The tool only records what the operator enters: it does not contact banks, verify transfers or process cards. Verify payment through your own channels before completing checkout. Confirmation saves the sale, its items and inventory movements in the same transaction. Repeated clicks using the same reference do not create another sale or deduct stock twice. If stock has changed in another tab, review the current balance before retrying.
Correct and monitor inventory
History lets you inspect a sale, open its details and print its receipt again. To correct a completed sale, enter a reason and confirm cancellation. The sale stays in history with its status, and reverse movements return quantities to stock. Repeating cancellation does not duplicate that return. By default, the tool blocks sales without sufficient stock and identifies the affected product. The option to allow negative stock exists in settings but starts disabled. Use minimum stock alerts to support purchasing plans. They depend on the balances you enter and do not replace periodic physical counts, checks for losses or recording goods received from suppliers. Each adjustment needs a reason for later review.
Read reports in context
Select the required period in history. Filters use browser local dates and include the whole final day. The summary uses completed sales matching the filters; cancelled sales remain available for inspection but do not contribute to sold totals. Amounts are grouped by currency so that different currencies are never added together. Review sale count, best-selling products and payment method breakdowns. Stock movements use the same date interval, while stock alerts show current balances. Export CSV for your own analysis and keep complete JSON backups for recovery. A sales report is not an accounting statement, tax calculation or guarantee of shop profitability. Compare its figures with your own operational records when checking discrepancies.
Protect and transfer records
Download JSON backups regularly and keep the files in a location you control. Products, sales, categories, settings and movements belong to the current browser storage. Clearing site data, using private browsing or changing devices may make these records unavailable. A backup includes a format version and undergoes structural and balance validation before restoration. Its preview shows record counts; only explicit confirmation replaces current data. There is no automatic merge. Export the current state first so you can restore it later if necessary. Receipts are non-fiscal and printing uses the browser dialog, including saving a PDF. No card or customer information is required to operate this tool. Store backups with appropriate access controls.
| Selling price | Quantity | Discounts | Total |
|---|---|---|---|
| 12.50 | 1.500 | 1.00 | 17.75 |
Frequently asked questions
Are records synchronized?
No. They stay in this browser and device. Transfer them using JSON backups.
Is the receipt a tax document?
No. It is a non-fiscal receipt without tax integration.
When is stock deducted?
Only on sale confirmation, in the same storage transaction.
Can I cancel a sale?
Yes. Enter a reason; the sale is preserved and reverse movements return stock.
How can I recover records?
Restore a valid JSON backup after reviewing its preview. Replacement requires confirmation.