Bulk-import stock transfers with a built-in safety net
Load internal transfers, receipts, and deliveries from CSV or Excel in one pass — complete with product lookup, location routing, lot/serial import, dry-run preview, and one-click rollback.
The problem
Warehouse and inventory teams that receive dozens of line items at once — a supplier drop, a manufacturing reorder, a periodic reallocation — are stuck creating each transfer and each move line by hand in Odoo. Serial and lot-tracked goods make it worse: every unit must be entered one at a time, with no dry-run to catch mistakes and no way to undo a bad import once it lands.
The solution
Import Internal Transfer turns a CSV or Excel file into fully-built internal transfers, receipts, or deliveries in one action. Products resolve by reference, barcode, or name; locations route automatically; lots and serials are created with expiration dates; every row is validated and staged for review before a single picking is created — and if something goes wrong, roll the whole import back with one click.
Everything a bulk transfer import needs
Every capability below is implemented in the module.
Bulk CSV and Excel Import
Upload a CSV or Excel (.xlsx) file and import internal transfers, receipts, or deliveries in a single pass instead of creating pickings one at a time.
Three Operation Types
Handle internal transfers, incoming receipts, and outgoing deliveries from the same wizard, each routed to the right picking type automatically.
Flexible Product Lookup
Rows are matched to products by internal reference, barcode, or name, so your source file does not need to match Odoo's exact product codes.
Automatic Location Routing
Source and destination locations are read from the file by name and fall back to the picking type's defaults when a row leaves them blank.
Lot and Serial Import
Lots and serials are found or created automatically at the destination, with deduplication and expiration date import for regulated, traceable stock.
Custom Column Mapping
Map your own spreadsheet headers to the required fields instead of reshaping your file to match a fixed template.
Dry-Run Preview
Every row is parsed and validated before anything is created, so you see exactly what transfers, lines, and lots an import will produce.
Line-by-Line Error Reporting
Every rejected row is flagged with its file line number and the exact reason — unknown product, invalid location, bad quantity — so you can fix the file surgically.
One-Click Rollback
Cancel and delete every picking a bad import created in a single action, without manually hunting down and deleting each record.
How it works
Download the Template
Grab a ready-made CSV template for the operation type you are importing so column headers are correct from the start.
Upload and Map
Upload your file and, if your headers differ from the template, map them to the required fields.
Preview and Validate
Run a dry-run preview that stages every row, resolves products and locations, and flags errors line by line before anything is created.
Import and Track
Commit the valid rows to build the transfers, follow progress on the import record, and roll back in one click if needed.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
CSV and Excel (.xlsx) files are both supported. The app detects the format from the file extension and reads the first sheet of an Excel workbook.
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 Internal Transfer
Turn a CSV or Excel file into fully-built internal transfers, receipts and deliveries — with product lookup, location routing, lot/serial import, dry-run preview and one-click rollback.
Buy on Odoo App Store