Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 1534 |
Technical Name |
kys_google_cloud_storage |
License | OPL-1 |
Website | https://katalisys.id/ |
Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 1534 |
Technical Name |
kys_google_cloud_storage |
License | OPL-1 |
Website | https://katalisys.id/ |

Upload File to
Google Cloud Storage
(GCS)
Store files directly in Google Cloud Storage (GCS) instead of Odoo’s local storage or database. Keep your database lean and your system fast while enjoying a clean, user-friendly upload experience.

Benefits of The Module
Keep Your Database Lean & Fast
- Files are stored in GCS, not in Odoo’s database.
- Prevents database bloat, making backups lighter and queries faster.
Dynamic & Flexible File Management
- Supports single or multiple file uploads.
- Choose between Card View (visual) or List View (compact).
Scalable Storage with GCS
- Google Cloud Storage ensures high availability and virtually unlimited storage.
- Avoid local storage limitations.
Customizable Target Paths
- Define your own folder structure in GCS for better organization.
- Use different buckets or paths per use case.
Improved User Experience
- One-click file preview without leaving Odoo.
- Clean, modern UI for both images and documents.
Cost & Performance Efficiency
- Reduces PostgreSQL database size, which lowers hosting and maintenance costs.
- Faster restores and migrations because DB isn’t weighed down by binary files.
Seamless Integration with Odoo
- Works just like a native Odoo widget (gcs_upload).
- Easy to add to any model via XML with minimal configuration.
Future-Proof Architecture
- Built for businesses handling large data volumes.
- Scales smoothly as storage requirements grow.

Dynamic
Display
Mode
The widget comes with two display modes — Card View and List View — allowing you to choose the most suitable layout for your files.
Mode Card
You can create a card mode with image display, file name, and file size.


Mode List
You can create a card mode with image display, file name, and file size.

On View File
Allows users to open and preview uploaded files directly from the widget, without the need to manually copy the URL or navigate away from Odoo.


Support Single
or
Multiple
File
The widget supports both single file and multiple file uploads, giving you flexibility depending on the business requirement.
Single File Mode
Ideal for cases like attaching one identity document, invoice, or supporting form. Keeps the field clean with just one file at a time.


Multiple File Mode
Perfect for situations where users need to attach several files at once — e.g., multiple images, reports, or supporting documents.

Dynamic Target Path
Allows you to define a custom target path in Google Cloud Storage (GCS) for every upload, instead of being locked to a single bucket or folder.

Google Cloud Storage Configuration
- Upload your Google Cloud Service Account file in JSON format.
- Go to Google Cloud Storage → Configuration → Settings in Odoo.
- Select and upload the JSON file to enable GCS integration.

Google Cloud Storage Service Account Setup
- Login or sign up at Google Cloud Console and select your project.
- Open the Navigation Menu and go to IAM & Admin → Service Accounts.
- Create a new Service Account, or select an existing one.
- Manage access and assign the role Storage Object Admin (see image below).

- Go to the Keys tab and click Add Key → Create New Key.
- Choose JSON as the key type, then click Create.
- A JSON key file will be downloaded. Save it, and then upload it into the Google Cloud Storage Configuration in Odoo.

Use the Widget
- The widget works with fields.Char(). For example:
supporting_document = fields.Char(string="Supporting Document")
- In your XML file, you can use the widget with widget="gcs_upload". For example:
<field name="test_upload" string="Supporting Document" widget="gcs_upload" options="{'display': 'card'}"/>
- Available options:
options="{'display': 'card', 'show_image': true, 'show_size': true, 'delete_overlay': true, 'thumb_size': [80,80]}" Options Explanation - display → "card" or "list" - Use "card" for card view. - Use "list" for list view. - show_image → true or false - Show/hide image thumbnails. - show_size → true or false - Show/hide file size (only available in card view). - delete_overlay → true or false - Enable/disable delete button overlay. - thumb_size → [width, height] - Define custom thumbnail size.

<field name="test_upload" widget="gcs_upload" options="{'display': 'card', 'show_image': true, 'show_size': true, 'delete_overlay': true, 'thumb_size': [56,56]}"/>

<field name="test_upload" widget="gcs_upload" options="{'display': 'card', 'show_image': false, 'show_size': true, 'delete_overlay': true, 'thumb_size': [56,56]}"/>

<field name="test_upload" widget="gcs_upload" options="{'display': 'list', 'show_image': true, 'show_size': true, 'delete_overlay': true, 'thumb_size': [56,56]}"/>

<field name="test_upload" widget="gcs_upload" options="{'display': 'list', 'show_image': false, 'show_size': true, 'delete_overlay': true, 'thumb_size': [56,56]}"/>
- After configuring the widget, you must set up the Google Cloud Storage Rules.
- Go to: Google Cloud Storage → Configuration → Google Cloud Storage Rules.

Help and Support
Get Immediate support on any of your query.
Katalisys will provide FREE 90 days support for any doubt, queries, and bug fixing (excluding data recovery) or any type of issues related to this module. This is applicable from the date of purchase.
Write a mail to us :
info@katalisys.id
Any queries or want any extra features? Just drop a mail to our support.
Is this app compatible with Odoo Enterprise?
Need some customization in this app, whom to contact?
Do you provide any free support?
Are the files stored inside the Odoo database?
Can I use multiple buckets or folders for different use cases?
What file types are supported?
Can I preview the files from Odoo?
Is there a limit to the number of files I can upload?
Do I need technical knowledge to set up GCS integration?
Does this module require additional Python libraries?
Does this module replace Odoo’s ir.attachment model and upload all attachments directly to GCS?
Release 1.0.0
20th September, 2025- Initial release widget upload to Google Cloud Storage.


Free 90 Days Support
Katalisys will provide FREE 90 days support for any doubt, queries, and bug fixing (excluding data recovery) or any type of issues related to this module. This is applicable from the date of purchase.
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module