External file management depending on Storage Backend module.
It include these features: * link to any Odoo model/record * store metadata like: checksum, mimetype
Use cases (with help of additional modules): - store pdf (like invoices) on a file server with high SLA - access attachments with read/write on prod environment and only read only on dev / testing
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Lets you store files on external storage backends and manage them from Odoo, with metadata such as checksum, size and mime type, public or private access, and a wizard to move files between backends.
This module adds a central file registry to Odoo, linked to the storage backends configured by the Storage Backend module. Each file record keeps its name, storage backend, size, checksum, mime type, relative path and a computed web URL, so users can see and open files from a dedicated File menu under Storage.
On the storage backend form, new options control how files are served: by Odoo itself or by an external service (with a base URL), whether files are public or private, how file names are built (name plus ID, or SHA hash), and whether the directory path is included in the URL. A button recomputes the base URL used for files when server settings change.
Business rules and automation: - File contents cannot be edited once uploaded; you must delete and create a new one. - Deleting a file only marks it for deletion and archives it; a daily scheduled job then removes it from the storage backend. - A wizard lets administrators move selected files to another backend, provided both backends belong to the same backend category. - Public users can only read files stored on backends flagged as public; internal users can read all files. - PDF report rendering is adjusted so report URLs use the report base URL.
Files are reachable through a public web address built from a slug, and the module touches storage.backend, storage.file and ir.actions.report.
Depends on
Required by other modules
Menus it adds
Models and fields (5)
- storage.file · new modelurl, data, name, slug, active, checksum (Checksum/SHA1), filename (Filename without extension), mimetype (Mime Type), url_path, extension, file_size, file_type, is_public, to_delete, backend_id, company_id, internal_url, relative_path, human_file_size, backend_categ_id (Backend Category)
- storage.backend · extends an existing modelbase_url, is_public, served_by, filename_strategy, base_url_for_files, url_include_directory_path, backend_view_use_internal_url
- ir.actions.report · extends an existing model
- storage.file.replace · new modeldata, file_id, file_name
- storage.file.swap.backend · new modelfile_ids (Files), dest_backend_id (Destination Storage), source_backend_id (Source Storage), source_backend_categ_id (Source Backend Category)
Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 6 confirmed, 3 with no information of 9 versions.
Sources · Odoo 16.0
Confirmed on 2026-11-03 in branch 16.0 of OCA/storage.
terminal Installation and usage
No verified informationInstallation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.