Tanya: Cara Buat Modul Addon Kustom di Odoo Online (Odoo.sh / SaaS)
Diposting pada 05 Jun 2026, 05:30
Ditanyakan oleh: Nina
Halo teman-teman praktisi Odoo di sini, salam kenal dari Nina!
Perusahaan kami sekarang pakai Odoo Online (subscription langsung dari Odoo, bukan self-hosted). Kami lagi ada kebutuhan nih untuk nambahin beberapa fitur atau penyesuaian yang cukup spesifik, yang mana kayaknya nggak bisa cuma pakai Studio atau custom fields standar. Jadi, kami kepikiran buat bikin modul addon kustom sendiri.
Nah, yang jadi pertanyaan, gimana ya best practice atau langkah-langkah yang harus kami ikuti kalau mau develop dan deploy addon di lingkungan Odoo Online? Setahu saya, di Odoo Online ini kan ada beberapa batasan dibanding kalau kita pakai Odoo Community atau Enterprise yang self-hosted, terutama soal akses ke server atau file system.
Apakah ada workflow khusus yang teman-teman sarankan? Atau ada tips dan trik supaya proses development dan deployment-nya mulus tanpa kendala di Odoo Online? Misalnya, tools apa yang biasa dipakai, atau bagaimana cara integrasi kode kustomnya supaya bisa jalan di instance Odoo Online kami.
Mohon pencerahannya ya teman-teman yang sudah punya pengalaman. Terima kasih banyak sebelumnya!
Admin Odoo ForumAdmin & AI Support05 Jun 2026, 05:30
Halo Mba Nina! Salam kenal juga dari tim praktisi Odoo di sini. Wah, pertanyaannya menarik banget nih, dan ini sering jadi bahasan di komunitas kita. Memang benar, mengembangkan modul addon kustom di lingkungan Odoo Online (SaaS) itu punya tantangan dan batasan yang berbeda dibandingkan dengan Odoo self-hosted.
Jangan khawatir, ada solusi resminya kok dari Odoo sendiri untuk kebutuhan seperti ini. Kita tidak bisa langsung 'mengupload' file modul kustom ke instance Odoo Online yang standar karena memang tidak ada akses ke sistem file servernya.
Nah, untuk kebutuhan development dan deployment modul addon kustom di lingkungan cloud yang dikelola Odoo, jawabannya adalah menggunakan Odoo.sh.
Yuk, kita bahas best practice dan langkah-langkahnya:
1. Memahami Odoo.sh: Jembatan untuk Kustomisasi di Odoo Cloud
Odoo.sh adalah platform Odoo yang dikelola sepenuhnya, dirancang khusus untuk pengembangan dan penerapan modul kustom, sekaligus mengelola seluruh siklus hidup proyek Odoo Anda. Ini adalah solusi resmi dari Odoo untuk siapa pun yang ingin menjalankan Odoo Enterprise di cloud, tetapi tetap membutuhkan fleksibilitas untuk menambahkan kode kustom (Python, XML, JavaScript). Singkatnya, Odoo.sh adalah tempat Anda bisa meletakkan modul kustom Anda agar bisa berjalan di lingkungan Odoo Online. Perlu diingat, penggunaan Odoo.sh ini memerlukan langganan Odoo Enterprise.
2. Workflow Pengembangan dan Deployment di Odoo.sh
Berikut adalah langkah-langkah dan workflow yang umumnya disarankan:
Inisiasi Proyek dan Repository Git
Pertama-tama, Anda perlu membuat repository Git (misalnya di GitHub, GitLab, atau Bitbucket) yang akan menyimpan semua kode modul kustom Anda. Ini adalah pusat kontrol versi proyek Anda. Odoo.sh terintegrasi erat dengan Git.
Lingkungan Pengembangan Lokal
Meski deploymentnya di Odoo.sh, pengembangan modulnya tetap paling nyaman dilakukan secara lokal di komputer Anda. Anda bisa menggunakan IDE seperti VS Code atau PyCharm.
Pastikan Anda menginstal versi Odoo yang kompatibel dengan versi Odoo Online Anda (misalnya Odoo 16 atau Odoo 17) di lingkungan lokal Anda.
Buat modul kustom Anda di folder 'addons' yang terpisah.
Menghubungkan Odoo.sh dengan Git
Di dashboard Odoo.sh, Anda akan membuat proyek baru dan menghubungkannya dengan repository Git Anda. Setelah terhubung, Odoo.sh akan otomatis memantau setiap perubahan (push) ke repository Git Anda.
Struktur Branch di Odoo.sh
Odoo.sh memiliki konsep branch yang powerful untuk mengelola deployment:
Production Branch: Ini adalah branch utama yang terhubung dengan instance Odoo Anda yang sedang berjalan untuk pengguna akhir. Hanya kode yang sudah stabil dan teruji yang di-merge ke sini.
Staging Branch: Ini adalah salinan dari lingkungan produksi, tempat Anda bisa menguji modul kustom dengan data produksi yang diperbarui secara berkala. Ideal untuk UAT (User Acceptance Testing) dan memastikan tidak ada konflik sebelum rilis ke produksi.
Development Branches: Untuk setiap fitur atau bug fix baru, buat branch terpisah. Setiap branch development akan otomatis membuat lingkungan Odoo terisolasi di Odoo.sh, lengkap dengan database uji, sehingga developer bisa bekerja dan menguji tanpa mengganggu yang lain.
Proses Deployment
Setiap kali Anda melakukan push perubahan kode ke salah satu branch di repository Git Anda, Odoo.sh akan secara otomatis:
Mengunduh kode terbaru.
Membangun (build) lingkungan Odoo yang sesuai.
Menginstal atau memperbarui modul kustom Anda.
Melakukan restart server Odoo jika diperlukan.
Pengujian dan Migrasi ke Produksi
Setelah pengembangan selesai di branch development, lakukan pengujian menyeluruh di lingkungan tersebut.
Jika sudah stabil, buat Pull Request (PR) atau Merge Request untuk menggabungkan kode ke Staging Branch. Lakukan pengujian lebih lanjut di lingkungan Staging dengan data yang mirip atau sama dengan produksi.
Setelah semua aman di Staging, barulah merge ke Production Branch. Ini akan otomatis menerapkan perubahan ke instance Odoo Online Anda yang sebenarnya.
3. Tips dan Trik untuk Proses yang Mulus
Manfaatkan Odoo Studio untuk Konfigurasi Ringan
Untuk penyesuaian yang tidak memerlukan kode Python yang kompleks (misalnya, menambah field, mengubah view sederhana, membuat otomatisasi ringan), Odoo Studio masih jadi pilihan terbaik dan tercepat. Gabungkan Odoo Studio dengan modul kustom Anda.
Gunakan Sistem Kontrol Versi (Git) dengan Baik
Disiplin dalam menggunakan Git. Buat branch untuk setiap fitur baru, lakukan commit yang deskriptif, dan gunakan proses code review sebelum merge ke branch utama.
Desain Modul yang Modular
Buat modul kustom Anda semodular mungkin. Pisahkan fitur-fitur besar menjadi modul-modul kecil. Ini memudahkan pemeliharaan dan debugging.
Pelajari Dokumentasi Odoo.sh
Dokumentasi resmi Odoo.sh sangat lengkap dan akan menjadi panduan terbaik Anda. Luangkan waktu untuk mempelajarinya.
Pengujian adalah Kunci
Selalu lakukan pengujian menyeluruh di lingkungan development dan staging sebelum meluncurkan ke produksi. Gunakan data dummy atau data anonim yang representatif.
Perhatikan Dependencies
Pastikan modul kustom Anda tidak memiliki dependensi Python eksternal yang tidak diizinkan atau tidak kompatibel dengan Odoo.sh. Odoo.sh punya daftar library Python yang diizinkan. Jika butuh library khusus, Anda bisa menentukannya di file `requirements.txt` di root repository Anda.
Hindari Modifikasi Core
Jangan pernah memodifikasi kode inti Odoo. Selalu buat modul kustom yang 'mewarisi' atau 'meng-override' fitur Odoo yang sudah ada. Ini akan memudahkan proses upgrade di masa depan.
Jadi, Mba Nina, intinya adalah Odoo.sh. Ini adalah platform yang dirancang untuk mengatasi semua kebutuhan development dan deployment modul kustom di lingkungan Odoo Online Enterprise.
Semoga pencerahan ini membantu ya! Kalau ada pertanyaan lebih lanjut, jangan sungkan untuk bertanya lagi di sini. Selamat ngoding!