Bulk-import POS orders safely from any spreadsheet
Upload Excel or CSV, map your own columns, preview every row before anything is written, and keep a full audit log of every import. Built for Odoo 19 Point of Sale.
The problem
Loading historical or externally-held POS sales into Odoo usually means hours of manual re-entry, or a rigid import tool that demands one exact spreadsheet layout, enforces a single date format, and fails loudly mid-import with no way to see what will happen before it happens.
The solution
A guided four-step wizard maps your own columns, runs a full dry-run preview showing every row's status before anything is committed, and leaves a persistent audit log behind — so bulk loads stay transparent, safe and easy to reconcile.
Everything a bulk POS import needs
Every capability below is implemented in the module.
Excel & CSV Import
Upload XLS, XLSX or CSV files and bulk-create many orders with multiple lines in a single operation.
Your Own Column Layout
Map spreadsheet columns to Odoo fields by header text, column index or Excel letter — no fixed template required.
Dry-Run Validation Preview
Review every row's OK, Warning, Error or Skipped status, plus resolved product/customer matches and computed totals, before a single record is written.
Per-Row Error Reporting
Failed rows list exactly what went wrong, so you can fix the source file and re-upload instead of guessing from a raised exception.
Tolerant Date Parsing
Accepts common real-world date and time formats instead of enforcing one rigid layout.
Flexible Matching
Products match by name, barcode or internal reference; customers match by name, reference or ID, with auto-creation for customers that do not yet exist.
Duplicate & Conflict Handling
Detects order references that already exist and lets you skip, update or reject them, preventing silent double-imports on re-runs.
Draft or Confirmed Import
Choose whether imported orders land as draft for review or go straight to confirmed/paid, with automatic session handling.
Persistent Audit Log
Every import leaves a log with created/updated/skipped/error counts and a per-order breakdown you can revisit at any time.
How it works
Upload your file
Choose an Excel or CSV file, set the target POS, company and session, and pick your import options.
Map your columns
Match spreadsheet columns to order and line fields by header text, index or Excel letter.
Preview every row
Run the dry-run validation and review OK, Warning, Error and Skipped rows with resolved matches and totals before committing.
Import & audit
Confirm the import and get a persistent audit log with a full per-order breakdown to reconcile against.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
No. Every import runs through a dry-run preview first, showing the status, resolved matches and totals for every row so you can fix problems before anything is written.
Buy it on the Odoo App Store
Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.
Import POS Orders from Excel
Bulk-load historical or external POS orders from Excel or CSV in your own column layout, with a dry-run preview, per-row errors and tolerant date parsing — plus a persistent audit log.
Buy on Odoo App StoreMore Odoo point of sale apps
Not Allow Zero Quantity In POS
Blocks payment when ordered quantity exceeds available stock, with in-cart alerts, a configurable stock basis, manager override against a reason catalog and a full audit log of every block.
Point of Sale Keyboard Shortcut
Numeric-keypad price and discount entry plus full keyboard-only checkout, with per-shop bindings and a duplicate-hotkey conflict check — the mouse-free rhythm of a professional till.
POS Access Management — Roles, Overrides & Audit
Hierarchical POS roles built through a guided wizard, with a permission preview and simulator, one-click rollback, conflict warnings, manager PIN override, graded financial visibility and customer-data masking.
POS Access Rights - Role-Based Feature Control
Role templates and a visual permission matrix that lock discounts, refunds, price overrides and customer data at the register — enforced on the server, not just hidden in the UI.
POS Analytic Cost Centers
Resolve analytic cost centers across the whole POS — terminal, session, order, line and product category — with percentage distribution, GL sync and an unallocated-sale exception queue.
POS Arabic Receipt
Bilingual or Arabic-only receipts and kitchen tickets with validated right-to-left layout — Arabic product names pulled automatically from Odoo translations, English fallback and a missing-translation worklist.