Import stock with confidence, not guesswork
One Odoo app for inventory adjustments, opening stock, and pickings — with lot/serial tracking, expiry capture, a dry-run preview, and a bounce file that turns a failed row into a fix-and-retry loop instead of a restart.
The problem
Loading opening stock, running a physical count, or receiving hundreds of serialized units usually means stacking several single-purpose importers, uploading a file and hoping for the best, and fixing a rejected batch by editing database IDs by hand. One bad date format or a duplicate lot name can silently misassign stock, or kill the whole import, with no way to see the problem before it happens.
The solution
Cerevantix Stock Import unifies inventory adjustments, opening stock, and picking imports in one app. Every file is previewed and validated before anything is written, ambiguous lots are flagged for review instead of silently matched, and any row that fails lands in a bounce file you can fix and re-import, without touching the rows that already succeeded.
Everything a stock import needs
Every capability below is implemented in the module.
One app, three import types
Import inventory adjustments, opening stock, and pickings (receipts, deliveries, and internal transfers) from a single wizard, instead of buying and learning a separate app for each.
CSV and XLSX, with real templates
Upload either format and download a realistic, multi-row sample file per import type, not a toy example that hides the real complexity of your data.
Lot, serial, and expiry tracking
Assign lot and serial numbers per line, auto-create the ones that do not exist yet, and capture expiry, manufacturing date, and batch attributes as first-class fields.
Safe lot matching
Ambiguous lot names are detected and surfaced for resolution instead of silently matching the first record by name, the single most damaging default in Odoo's own lot lookup.
Preview before you commit
Every file is parsed into a line-level preview showing matched and unmatched products, projected quantity changes, and validation state before a single record is written.
Dry-run mode
Run the full validation and matching pass without writing any stock movement, so you can check the projected impact of a file before committing to it.
Bounce file for fix-and-retry
Every error line names its row and field. Failed rows export as a bounce file in your original format, so you correct and re-import just the rows that failed.
Flexible quantity modes
Choose Add, Update, Add/Update, or Subtract for every import, so counts, corrections, and go-live loads never apply the wrong arithmetic by accident.
Import history with rollback
Every batch is logged with its state, counts, and creator. Roll an imported batch back to reverse its adjustment or cancel the pickings it created.
How it works
Choose & upload
Pick the import type — adjustment, opening stock, or picking — and upload your CSV or XLSX file, or start from a bundled sample.
Preview & validate
Review the matched/unmatched report and line-level errors before anything is written to stock.
Import or dry-run
Commit the import, or run a dry-run first to see the projected quantity and lot changes.
Fix, retry, or roll back
Download a bounce file for any failed rows, or roll back a completed import straight from its history record.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
Inventory adjustments, opening stock, and pickings (receipts, deliveries, and internal transfers), all from the same wizard and file formats.
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.
Cerevantix Stock Import
Inventory adjustments, opening stock and picking imports in one tool — CSV or XLSX, lot, serial and expiry aware, with a dry-run preview, a bounce file for fix-and-retry and import history with rollback.
Buy on Odoo App Store