Cara Membuat Custom Module Odoo dari Nol untuk Kebutuhan Bisnis

Cara Membuat Custom Module Odoo dari Nol untuk Kebutuhan Bisnis

2026-01-04

Dalam implementasi Odoo, tidak semua kebutuhan bisnis bisa langsung dipenuhi oleh modul bawaan. Setiap perusahaan memiliki alur kerja, form, dan laporan yang berbeda. Di sinilah custom module Odoo berperan penting.

Dengan membuat module sendiri, flow bisnis bisa disesuaikan sepenuhnya sesuai kebutuhan. Custom module sering digunakan untuk automasi proses, penambahan field dan form, hingga pembuatan laporan khusus.

Artikel ini membahas langkah dasar membuat custom module Odoo dari nol, mulai dari struktur folder hingga proses instalasi.

Kapan Perlu Membuat Custom Module Odoo

Custom module biasanya dibutuhkan ketika:

  • Fitur bawaan Odoo tidak mencukupi
  • Dibutuhkan form atau data tambahan
  • Proses bisnis tidak standar
  • Laporan bawaan tidak sesuai kebutuhan
  • Dibutuhkan integrasi antar modul dengan logic khusus

Dengan custom module, Odoo tidak hanya menjadi ERP, tetapi juga sistem yang benar-benar mengikuti alur bisnis perusahaan.

Struktur Dasar Module Odoo

Setiap module Odoo memiliki struktur folder minimal agar bisa dikenali dan dijalankan oleh sistem. Struktur ini wajib dipahami sebelum mulai development.

Struktur dasar custom module Odoo adalah sebagai berikut:

custom_product/
├── __manifest__.py
├── __init__.py
├── models/
│   ├── __init__.py
│   └── product.py
└── views/
    └── product_view.xml

Penjelasan singkat:

  • manifest.py berisi informasi module
  • init.py sebagai inisialisasi Python
  • folder models berisi definisi model atau tabel
  • folder views berisi tampilan form, tree, atau menu

Tanpa struktur ini, module tidak akan terbaca oleh Odoo.

Membuat Model Sederhana di Odoo

Model di Odoo merepresentasikan tabel database. Setiap model ditulis menggunakan Python dan ORM bawaan Odoo.

Contoh file models/product.py:

from odooimport models, fields

classProductCustom(models.Model):
    _name ='product.custom'
    _description ='Product Custom'

    name = fields.Char(string='Nama Produk')
    price = fields.Float(string='Harga')

Penjelasan singkat:

  • _name adalah nama model dan tabel database
  • fields.Char digunakan untuk teks
  • fields.Float digunakan untuk angka desimal

Setelah membuat model, jangan lupa mendaftarkannya di file models/init.py.

Contoh models/init.py:

from .import product

Langkah ini wajib agar Odoo mengenali file model tersebut.

Membuat File Manifest Module

File manifest.py berisi metadata module, seperti nama, versi, dependensi, dan file yang akan dimuat.

Contoh manifest.py:

{
'name':'Custom Product',
'version':'1.0',
'depends': ['base'],
'data': [
'views/product_view.xml',
    ],
}

Penjelasan:

  • name adalah nama module
  • version menunjukkan versi module
  • depends berisi module lain yang dibutuhkan
  • data berisi file XML yang akan dimuat

Tanpa manifest, module tidak akan muncul di daftar Apps.

Proses Install Custom Module di Odoo

Setelah struktur, model, dan manifest selesai dibuat, langkah selanjutnya adalah instalasi module.

Langkah-langkahnya:

  • Restart service Odoo
  • Masuk ke menu Apps
  • Klik Update Apps List
  • Cari nama module
  • Klik Install

Jika tidak ada error, module akan terinstall dan tabel database otomatis dibuat oleh Odoo.

Pengembangan Lanjutan Custom Module

Setelah module dasar berhasil dibuat, pengembangan bisa dilanjutkan dengan:

  • Menambahkan view form dan tree
  • Membuat menu dan action
  • Menambahkan business logic
  • Menghubungkan dengan modul lain
  • Membuat laporan custom

Custom module adalah fondasi utama dalam pengembangan Odoo yang profesional.

Kenapa Skill Custom Module Penting untuk Developer Odoo

Kemampuan membuat custom module adalah skill inti seorang Odoo developer. Dengan skill ini, developer dapat:

  • Menyesuaikan Odoo dengan berbagai industri
  • Membuat solusi ERP yang scalable
  • Menangani kebutuhan klien yang kompleks
  • Meningkatkan nilai profesional di dunia kerja

Permintaan developer Odoo yang mampu membuat custom module terus meningkat seiring banyaknya bisnis yang menggunakan ERP.

Custom module Odoo memungkinkan sistem ERP disesuaikan sepenuhnya dengan kebutuhan bisnis. Dengan memahami struktur module, pembuatan model, dan proses instalasi, developer dapat membangun solusi yang fleksibel dan powerful.