← Semua artikel

Artikel

Checklist Migrasi Data Odoo: Bersihkan, Petakan, Validasi Sebelum Go-Live

Checklist migrasi data Odoo yang praktis untuk UKM: apa yang dibersihkan, cara memetakan field dan external ID, serta merekonsiliasi saldo sebelum go-live.

6 menit baca
  • mid
  • odoo

Kebanyakan go-live Odoo yang bermasalah gagal karena data, bukan karena software. Jawaban singkatnya: tentukan data apa yang dipindahkan, bersihkan di sumbernya, petakan field demi field dengan External ID yang stabil, latih proses load di database uji sampai hasilnya konsisten, lalu rekonsiliasi saldo sampai angka terakhir sebelum ada yang menyetujui.

Checklist ini mengikuti urutan tersebut. Berlaku untuk Odoo 17, 18, dan 19, tetapi nama menu bisa sedikit berbeda antar versi, jadi cek langsung di instance Anda.

1. Tentukan data apa yang benar-benar dipindahkan

Tidak semua data layak ikut pindah. Sebelum membuka spreadsheet, bagi data menjadi tiga kelompok:

  • Migrasi: customer dan vendor aktif, produk, order terbuka, invoice dan bill terbuka, saldo awal.
  • Arsip: transaksi lama yang hanya perlu untuk referensi atau audit. Simpan di sistem lama atau sebagai export read-only.
  • Buang: kontak mati, produk yang sudah dihentikan, data uji.

Tunjuk pemilik bisnis untuk setiap kelompok. Checklist migrasi ERP dari Rand Group menekankan hal yang sama: cakupan, pemilik data, dan kebutuhan retensi didahulukan, dan keputusan disetujui bisnis, bukan IT saja.

Hati-hati jangan membersihkan berlebihan. Menghapus record yang dirujuk riwayat lain menciptakan data yatim. Jika ragu, arsipkan, jangan hapus.

2. Bersihkan di sumber, bukan saat load

Memperbaiki data di tengah proses import menghasilkan file yang tidak bisa direproduksi. Bersihkan di sistem lama atau salinan kerja, dan tulis aturannya. Pembersihan umumnya mencakup:

  • Customer dan vendor ganda (satu perusahaan, tiga ejaan).
  • Field wajib yang kosong: negara, tax ID atau nomor VAT bila relevan, payment terms, unit of measure.
  • Format yang tidak konsisten: nomor telepon, nama negara versus kode ISO, kategori produk.
  • Produk tanpa biaya, tanpa satuan, atau dengan varian yang bertentangan.
  • Record yatim, seperti kontak tanpa perusahaan atau invoice yang merujuk partner yang sudah dihapus.

Anggap customer, vendor, dan produk sebagai master data. Semua transaksi berikutnya bergantung padanya, sehingga kesalahan di sini berlipat ganda.

3. Petakan sumber ke target, dengan External ID

Buat mapping sheet: satu baris per field sumber, berisi field target di Odoo, terjemahan nilai bila ada, dan pemilik yang menyetujuinya. Sesuaikan dengan cara Anda akan menjalankan Odoo, bukan dengan struktur sistem lama. Chart of accounts, kode pajak, payment terms, dan unit of measure biasanya butuh tabel terjemahan.

Dokumentasi export dan import Odoo memberi mekanisme yang layak dijadikan dasar:

  • External ID. Beri setiap record External ID yang unik (kolom id). Ini memungkinkan Anda meng-import ulang file yang sudah dikoreksi tanpa membuat duplikat, dan membuat record terkait saling merujuk. Dua record dengan External ID yang sama menimbulkan konflik.
  • Relasi. Untuk field seperti country atau partner, rujuk record terkait lewat nama, Database ID, atau External ID, dan gunakan hanya satu mekanisme per field. Nama bermasalah jika dua record memakai nama yang sama, jadi pilih External ID untuk yang ambigu.
  • Urutan load. Import record yang dirujuk lebih dulu (partner sebelum invoice, produk sebelum stok).
  • Tanggal dan angka. Gunakan tanggal ISO 8601 (YYYY-MM-DD) agar hari dan bulan tidak tertukar. Simbol mata uang yang tidak dikenali di sel angka dapat membuat import gagal.
  • Format file. Odoo menerima CSV, XLS, dan XLSX. Jika menyimpan CSV dari Excel, periksa encoding-nya.
  • Template. Bila Odoo menyediakan template import, mulailah dari situ. Jika tidak, export beberapa record yang ada dan pakai nama kolomnya.

Contoh kecil file partner dengan External ID:

id,name,is_company,country_id,vat
legacy_cust_0001,Northwind Supplies Ltd,TRUE,United Kingdom,GB123456789
legacy_cust_0002,Harbor Foods GmbH,TRUE,Germany,DE123456789

Awali External ID dengan nama sistem sumber agar nanti mudah membedakan record hasil migrasi dari record bawaan.

4. Tangani keuangan secara terpisah

Akuntansi adalah tempat kesalahan paling mahal. Panduan accounting get started dari Odoo memiliki bagian khusus untuk opening entries, mencakup kapan transisi dilakukan, open invoices dan bills, opening inventory, opening trial balance, transaksi bank dan kartu kredit awal, serta validasi akhir. Masing-masing mengikuti pola siapkan, validasi, import.

Poin praktis:

  • Pilih tanggal cut-off yang bersih, biasanya akhir periode, dan bekukan posting di sistem lama untuk periode itu.
  • Item terbuka, bukan seluruh riwayat. Load invoice customer dan bill vendor yang masih terbuka satu per satu, supaya laporan umur piutang dan pembayaran berjalan sejak hari pertama.
  • Pastikan subledger cocok dengan ledger. Total piutang, utang, dan persediaan harus sama dengan baris trial balance yang diisinya.
  • Uji di database terpisah selagi pembukuan Anda yang ada tetap berjalan. Panduan Odoo menyarankan latihan migrasi dengan cara ini.

Libatkan akuntan Anda sebelum load final. Perlakuan pajak atas saldo awal berbeda di tiap negara, dan itu keputusan mereka, bukan kami.

5. Latihan, lalu latihan lagi

Satu kali import uji yang berhasil membuktikan sangat sedikit. Rencanakan minimal dua atau tiga mock migration penuh:

  1. Load sampel. Beberapa ratus record per objek untuk menangkap kesalahan mapping.
  2. Load penuh di sandbox. Catat waktunya. Dokumentasi Odoo memperingatkan bahwa file besar bisa time out dan menyarankan batch lebih kecil, jadi temukan ukuran batch Anda sekarang, bukan di malam cutover.
  3. Load penuh plus uji pengguna. Orang sungguhan menjalankan alur sungguhan: quote to cash, purchase to pay, transfer stok, laporan akhir bulan.

Gunakan langkah test import Odoo sebelum setiap load, dan ingat bahwa import bersifat permanen. Memfilter berdasarkan tanggal pembuatan membantu menemukan apa yang disentuh import bila perlu dibatalkan.

Ulangi sampai prosesnya ter-skrip dan menghasilkan hasil sama dua kali. Panduan Rand Group serupa: ulangi mock migration penuh sampai prosesnya dapat diulang.

6. Validasi dan rekonsiliasi

Record yang berhasil di-load belum tentu benar. Rekonsiliasi terhadap toleransi yang disepakati, dan catat setiap selisih:

PemeriksaanYang dibandingkan
Jumlah recordSumber versus Odoo, per objek
Trial balanceDebit sama dengan kredit; total akun cocok dengan sistem lama
Piutang dan utangTotal item terbuka versus saldo ledger
PersediaanKuantitas dan nilai per produk atau lokasi versus hasil stock count
RelasiCek acak partner, produk, harga, pemetaan pajak
LaporanJalankan laporan yang sama di kedua sistem dan bandingkan

Minta pemilik data yang menandatangani, bukan hanya project lead.

7. Hari cutover

Buat semembosankan mungkin:

  1. Backup sistem lama dan sepakati kriteria go/no-go sebelumnya.
  2. Bekukan transaksi di sistem lama.
  3. Load data final sesuai urutan yang sudah dilatih.
  4. Rekonsiliasi lagi.
  5. Jalankan smoke test untuk alur kritis.
  6. Rilis ke pengguna, lalu pantau ketat beberapa minggu pertama.

Biarkan sistem lama dalam mode read-only untuk jangka waktu tertentu. Anda akan membutuhkannya untuk pertanyaan yang tidak terduga.

Kesalahan umum

  • Memperlakukan migrasi sebagai tugas minggu terakhir, bukan workstream sejak awal.
  • Membersihkan data langsung di file import, sehingga percobaan berikutnya mulai dari nol.
  • Memakai nama, bukan External ID, untuk relasi.
  • Memigrasi bertahun-tahun transaksi tertutup yang tidak akan dibaca siapa pun.
  • Melewatkan review akuntan atas saldo awal.
  • Hanya satu kali latihan.

Jika Anda ingin ada pihak kedua yang meninjau rencana migrasi atau ikut dalam sesi latihan, kami dengan senang hati membahasnya. Tanpa biaya, tanpa kewajiban: hubungi Teknologia Solutions.


Sumber: Dokumentasi Odoo, Export and import data (18.0); Dokumentasi Odoo, Accounting get started (19.0); Rand Group, ERP data migration checklist. Nama menu dan fitur berubah antar versi dan edisi Odoo, dan aturan pajak serta akuntansi berbeda di tiap negara. Verifikasi detailnya ke sumber primer dan akuntan Anda sebelum bertindak.