Base Import Module
Install Odoo modules from ZIP files for custom development and deployment
Base Import Module allows installing Odoo modules directly from ZIP files instead of the Odoo App Store, supporting deployment of internal custom modules, third-party modules, or modules under development.
This module is useful for deploying company-specific modules, testing modules before publishing, or installing modules from GitHub/GitLab without cloning repositories.
Key Features
Key points
• Import from ZIP: Upload .zip file containing Odoo module and install directly
• Dependency Resolution: Auto-check and warn about missing dependencies
• Version Check: Verify Odoo version compatibility before installation
• Manifest Validation: Validate __manifest__.py for correct structure
• Multi-module ZIP: Support ZIP files containing multiple modules
• Update Existing: Update installed modules with new ZIP
Terminology
| Fields | Trường dữ liệu | Description |
|---|---|---|
| Module | Module | Package extending Odoo functionality |
| Manifest | Manifest | __manifest__.py file containing module metadata |
| Dependency | Phụ thuộc | Other modules required for this module to work |
| Addons Path | Đường dẫn addons | Directory containing Odoo modules |
| Technical Name | Tên kỹ thuật | Module folder name (snake_case) |
Module Import Process
Steps
1. Prepare ZIP file: Ensure correct structure - module folder contains __manifest__.py, __init__.py, and code files. Example: my_module.zip contains my_module/__manifest__.py.
2. Go to Apps: Open Apps menu, enable Developer Mode (Settings → Activate Developer Mode), click "Import Module" button at top.
3. Upload ZIP: Select ZIP file from computer, click Import. System will extract and validate manifest.
4. Check dependencies: If missing dependencies, install them first or skip warning (not recommended).
5. Install module: After successful import, find module in Apps list, click Install.
6. Update Apps List: If module not visible, click "Update Apps List" to refresh.
Standard Module Structure
Required Files and Folders
| File/Folder | Required | Description |
|---|---|---|
| __manifest__.py | Yes | Module metadata: name, version, depends, data |
| __init__.py | Yes | Import Python submodules |
| models/ | No | Folder containing models (Python classes) |
| views/ | No | Folder containing XML view definitions |
| security/ | No | ir.model.access.csv, record rules |
| data/ | No | XML data files (demo, default data) |
| static/ | No | JS, CSS, images for frontend |
Real-world Examples
Common Use Cases
| Scenario | Implementation | Benefits |
|---|---|---|
| Deploy internal custom module | Dev team creates custom module, packages as ZIP, sends to admin for production import. No need to publish to Odoo Store. | Secure internal code, version control, fast deployment |
| Test module from GitHub | Download ZIP from GitHub repository, import to Odoo test instance. Test before merging to production. | Safe testing, no production impact |
| Install third-party module | Purchase module from vendor, receive ZIP file, import to Odoo. No Odoo App Store needed. | Support modules not on Store |
| Update module hotfix | Dev fixes bug, creates new ZIP, admin imports to update installed module. No server restart needed. | Fast hotfix, minimal downtime |
Troubleshooting
Key points
• Error "Module not found": Check ZIP structure - module folder must be at ZIP root, not in subfolder
• Error "Invalid manifest": Check __manifest__.py syntax - must be valid Python dict with "name", "version", "depends" keys
• Error "Dependency not met": Install dependencies first, or remove from manifest (riskier)
• Module not in Apps: Click "Update Apps List", clear browser cache, or restart Odoo server
• Permission error: Ensure user has "Administration / Settings" rights to import modules