How to Import Master Data in Odoo 18 for Trading Businesses: Complete Step by Step Guide
By Braincuber Team
Published on March 31, 2026
Migrating data into Odoo is critical when setting up a new database, switching from another ERP, or streamlining business operations. Importing key records like products, partners, product categories, variants, sales orders (SO), purchase orders (PO), invoices, and bills is essential to ensure continuity and accuracy in your business processes. Each of these data types plays a vital role in the smooth functioning of your sales, purchase, inventory, and accounting workflows. This complete tutorial will guide you through importing various records into Odoo 18, from preparing your Excel or CSV files to understanding the required fields and relationships.
What You'll Learn:
- How to import product categories using export templates
- Setting up product attributes and variants for import
- Importing customers and vendors with proper field mapping
- Creating and importing sales orders and purchase orders
- Importing customer invoices and vendor bills into Accounting
- Best practices for data validation and error-free imports
Step 1: Import Product Categories in Odoo 18
To begin importing product categories in Odoo, it's essential to prepare an appropriate template. A good method is to export an existing category to understand the required structure and fields.
Export Existing Category Template
Navigate to the Sales module, open Configuration > Product Categories. Select any category, click Action > Export.
Select Fields and Export Format
Choose desired fields from Available Fields, set format to XLSX or CSV, and click Export to download the template.
Modify Template with New Data
Enter the name of the new category and update necessary fields. Example: "Sample Product Category" under parent "All".
Import and Validate
Go to Product Categories > Action > Import Records. Upload file, click Test to validate, then Import to complete.
Example Product Category Import Data:
Name: Sample Product Category
Parent Category: All
Company: [Your Company]
Validation Message: "Everything seems valid"
Import Result: "1 record successfully imported"
Always Test Before Importing
Click the Test button before importing to validate your data. If everything is correctly filled in, Odoo will display "Everything seems valid". This prevents import errors and ensures data integrity.
Step 2: Import Product Attributes and Variants
To import product variants in Odoo, the first step is to import the relevant product attributes. You'll need to create an import template for the attributes before importing the variants themselves.
Export Attributes Template
Go to Sales > Configuration > Attributes. Select an attribute, click Action > Export. Choose fields and format (XLSX/CSV).
Create New Attribute Data
Open the exported template and add new attribute details. Example: "Size" with values Small, Medium, Large.
Import Attributes
Navigate to Attributes > Action > Import Records. Upload file, Test, then Import. Verify the attribute appears in the list.
Import Product Variants
Export an existing product as template, add new product with attribute values (e.g., "Top" with Size: S, M, L), then import.
| Attribute Field | Description | Example Value |
|---|---|---|
| Attribute Name | Name of the product attribute | Size |
| Attribute Values | Comma-separated variant options | Small, Medium, Large |
| Display Type | UI presentation style | Radio / Dropdown |
| Variant Creation Mode | How variants are generated | Instantly / Dynamically |
Attribute Values Must Match
When importing product variants, ensure the attribute values in your import file exactly match those already imported into Odoo. Mismatched values will cause import failures or create duplicate attributes.
Step 3: Import Customers and Vendors
Importing customers and vendors follows the same export-template-import pattern. This ensures your partner data is correctly structured for sales and purchase workflows.
Import Customers
Navigate to Sales > Orders > Customers. Export existing customer, modify with new data (e.g., "Customer A"), import via Action > Import Records.
Import Vendors
Navigate to Purchase > Orders > Vendors. Export existing vendor, modify with new data (e.g., "Vendor A"), import via Action > Import Records.
Export Partner Template
Select any existing customer/vendor, click Action > Export. Choose relevant fields like Name, Email, Phone, Address, and Company.
Prepare Import Data
Enter new partner details in the exported template. Ensure email addresses and phone numbers are correctly formatted.
Test and Import
Upload file via Import Records, click Test to validate, then Import. Confirmation: "1 record successfully imported".
Step 4: Import Sales Orders and Purchase Orders
Importing transactional documents like sales orders and purchase orders requires careful attention to product references and partner mappings. Ensure all products and partners referenced in your orders already exist in the database.
Export Sales Order Template
Go to Sales > Orders > Quotations. Select a quotation, Action > Export. Include fields for Customer, Order Lines, Products, and Quantities.
Create New Sales Order Data
Add products like "Top" and "Storage Box" to the template. Ensure product names exactly match existing products in Odoo.
Import Purchase Orders
Navigate to Purchase > Orders > Request for Quotation. Export RFQ template, add products like "Top" and "Office Chair", then import.
Sales Order Import Template Fields:
Customer: Customer A
Order Date: 2025-07-23
Product: Top
Quantity: 10
Unit Price: [Auto-filled]
Product: Storage Box
Quantity: 5
Unit Price: [Auto-filled]
Validation: "Everything seems valid"
Result: "1 record successfully imported"
Prerequisite: Products and Partners Must Exist
Before importing sales orders or purchase orders, ensure all referenced products and customers/vendors already exist in the database. Import master data first, then transactional documents.
Step 5: Import Customer Invoices and Vendor Bills
Importing financial documents requires precise account mappings and tax configurations. Follow the same export-template-import workflow through the Accounting module.
Export Invoice Template
Go to Accounting > Customers > Invoices. Select an invoice, Action > Export. Include Partner, Invoice Lines, Products, Taxes, and Account fields.
Prepare Invoice Data
Add products like "Office Lamp" and "Office Design Software". Ensure tax codes and account references are correctly mapped.
Import Vendor Bills
Navigate to Accounting > Vendors > Bills. Export bill template, add products like "Office Chair" and "Office Design Software", then import.
Validate and Import
Upload file, click Test to validate data integrity, then Import. Verify imported invoices appear correctly in the list view.
| Document Type | Navigation Path | Key Fields |
|---|---|---|
| Customer Invoice | Accounting > Customers > Invoices | Partner, Invoice Date, Products, Taxes, Income Account |
| Vendor Bill | Accounting > Vendors > Bills | Vendor, Bill Date, Products, Taxes, Expense Account |
| Sales Order | Sales > Orders > Quotations | Customer, Order Date, Products, Quantities, Prices |
| Purchase Order | Purchase > Orders > RFQ | Vendor, Order Date, Products, Quantities, Costs |
Importing data in Odoo 18 is user-friendly and efficient
By preparing data in the correct format and using the appropriate templates, you can ensure a smooth transition and maintain data accuracy across modules. Mastering these features saves time and enhances productivity.
Frequently Asked Questions
How do I prepare an import template in Odoo 18?
Export an existing record of the same type using Action > Export. Select the required fields, choose XLSX or CSV format, and download the file. Modify the exported file with your new data to use as an import template.
What order should I import master data in Odoo?
Import in this order: 1) Product categories, 2) Product attributes, 3) Products/variants, 4) Customers and vendors, 5) Sales orders and purchase orders, 6) Invoices and bills. This ensures referenced records exist before dependent imports.
How do I validate imported data in Odoo?
After uploading your file via Action > Import Records, click the Test button. Odoo will validate the data and display "Everything seems valid" if correct. Fix any errors shown before clicking Import.
Can I import product variants directly?
First import the product attributes (like Size, Color), then import products with attribute values. Ensure attribute values in your import file exactly match those already imported into Odoo to avoid duplicates.
What file formats does Odoo support for import?
Odoo supports XLSX (Excel) and CSV (Comma Separated Values) formats for data import. XLSX is recommended for complex data with multiple sheets, while CSV works well for simple flat data structures.
Need Help with Odoo Data Migration?
Our experts can help you plan and execute seamless data migrations, prepare import templates, and ensure data integrity across your Odoo 18 trading business implementation.
