Professional Documents
Culture Documents
DESIGN
BAG/MM/INTGR
INTEGRASI ODOO DAN PMS
Author : Alfa
Creation Date : 4-Sep-23
Last Updated : 11-Sep-23
Document Ref : BAg-FSD-STI
Version : 1.0
Functional Spesification Design Sales to Invoice
Page 2
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Document Control
Change Record
$
$$1
Reviewers
Name Position
Distribution
1
2
3
4
Page 3
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Contents
Document Control ii
Introduction (Scope and Purpose) 4
Alur Integrasi PMS dan ODOO 5
Topical Essay 5
Scope and Assumptions 5
Process Flow 5
Flow Master Item/Product 6
Flow Master Kapal/Warehouse 6
Flow Master Stock 6
Flow Material Requested & Issue 7
Flow Material Transferred 7
Purchase Order Approved 8
Purchase Order Approved 8
Open and Closed Issues for this Deliverable 9
Open Issues 9
Closed Issues 9
Page 4
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Page 5
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Process Flow
Page 6
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Input Output
Role/PIC Process Name Process Description Journal
Document Document
Rendalhar Update Melakukan pembuatan , - - -
Product pemutakhiran/update
data product
Rendalhar Integrasi ke Mengintegrasikan data - - -
PMS product yang telah
ditambahkan
Description: Penambahan product/item baru dan pembaruan product/item seperti pembaruan status dan
description dilakukan di Odoo dan dikirim ke PMS untuk dibuat item baru atau diperbarui status dan
informasi di PMS.
Notes: Untuk item yang sudah ada di Odoo dan PMS akan dilakukan mapping menggunakan material
number sebagai penghubung (Unique Key).
Method: POST (Odoo to PMS)
API Field Mapping
Odoo Field
Odoo Field Name PMS Field Name PMS Field Description
Description
name.product_templ nama produk/item
ate
part_number.produc Part Number
t_template
manufacture_id.prod id manufaktur
uct template
manufacture_name. Nama manufaktur
master_manufacture
where
manufacture_id.prod
uct_template =
id.master_manufactu
re
material_number.pro Material Number
duct_template
colloquial_name.pro Colloquial Name
duct_template
name.uom_uom Unit of Measure
where
Page 7
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
uom_id.product_tem
plate = id.uom_uom
Response
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
message error/success message
message explanation detail message
Input Output
Role/PIC Process Name Process Description Journal
Document Document
Operasi Tambah Kapal Menambahkan data - - -
kapal pada master data
warehouse
Operasi Integrasi ke Mengintegrasikan data - - -
PMS kapal yang telah
ditambahkan
Description: Jika ada penambahan kapal baru Odoo akan mengirimkan data kapal dengan
id.stock_warehouse sebagai penghubung.
Method: POST (Odoo to PMS)
API Field Mapping
Odoo Field Name Odoo Field Description PMS Field Name PMS Field Description
name.stock_wareh Nama Kapal
ouse
in_type_id.stock_w id utk transaksi
arehouse penerimaan di tiap
warehouse
id.stock_warehous id Odoo untuk warehouse
e
complete_name.sto Nama Lokasi/Sub
ck_location where Gudang di Kapal
warehouse_id.stoc
k_location =
Page 8
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
id.stock_warehous
e
location_id.stock_l id Lokasi/Sub Gudang di
ocation where Kapal
warehouse_id.stoc
k_location =
id.stock_warehous
e
Response
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
message error/success message
message explanation detail message
id kapal PMS id Kapal PMS id Kapal PMS
Notes: Jika kapal belum terdaftar di PMS. PMS memberikan feedback ‘Kapal Belum Aktif’
Input Output
Role/PIC Process Name Process Description Journal
Document Document
Logistik Update Stock Melakukan - - -
pemutakhiran/update
data stock pada master
data
Logistik Integrasi ke Mengintegrasikan data - - -
PMS stock yang telah
diupdate/mutakhir
Description: stock opname dan adjustment stock akan dilakukan di Odoo dan dikirim ke PMS untuk
memperbarui stok di tiap kapal.
Method: POST (Odoo to PMS)
API Field Mapping
Odoo Field
Odoo Field Name PMS Field Name PMS Field Description
Description
Page 9
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
warehouse_id.stock_quant id Kapal
name.stock_warehouse Nama Kapal
where id.stock_warehouse =
warehouse_id.stock_quant
location_id.stock_quant id Lokasi Barang
complete_name.stock_locatio Lokasi Barang
n where id.stock_location =
location_id.stock_quant
product_id.stock_quant id material
material_number.product_te Material Number
mplate where
id.product_template =
product_id.stock_quant
quantity.stock_quant Jumlah Stock
Material
product_uom_id.stock_quant id UOM
Response
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
message error/success message
message explanation detail message
Page 10
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Input Output
Role/PIC Process Name Process Description Journal
Document Document
Rendalhar Purchase Odoo menerima data - - -
Order Approved PO yang
Approved otomatis membentuk
PO Approved
Rendalhar Integrasi ke Kirim data Purchase - - -
PMS Order Approved
Number ke PMS
Rendalhar Purchase Data Purchase Order - - -
Order Approved Number
Approved berhasil disinkronisasi
Number di PMS
Description: Surat Pesanan (Purchase Order) yang sudah diterbitkan ke Penyedia dikirim ke PMS sebagai
dasar penerimaan barang/jasa yang dikirim Penyedia ke Kapal.
Method: POST (Odoo to PMS)
Prerequisite
Data PO yang dikirim ke PMS adalah yang memenuhi kondisi berikut:
Page 11
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
PO Line
order_id.purchase_order_line = id.purchase_order
Odoo Field
Odoo Field Name PMS Field Name PMS Field Description
Description
id.purchase_order_lin id line PO
e
sequence.purchase_or nomor line
der_line
name.uom_uom UOM
where where
id.uom_uom =
product_uom.purchas
e_order_line
product_id.purchase_ id Material Number
order_line
material_number.prod Material Number
uct_template where
id_product_template =
product_id.purchase_
order_line
product_qty.purchase Quantity Order
_order_line
kapal_id.purchase_ord id Kapal
er_line
name.stock_warehous Nama Kapal
e where
id.stock_warehouse =
kapal_id.purchase_ord
er_line
PO Receipt Header
Odoo Field
Odoo Field Name PMS Field Name PMS Field Description
Description
id.stock_picking id untuk PO Receipt
where
origin.stock_picking =
name.purchase_order
PO Receipt Line
origin.stock_move = name.purchase_order and state.stock_move = ‘assigned’
Odoo Field
Odoo Field Name PMS Field Name PMS Field Description
Description
id.stock_move where id untuk PO Receipt
picking_id.stock_move Line
= id.stock_picking
Page 12
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Response
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
message error/success message
message explanation detail message
Page 13
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Input Output
Role/PIC Process Name Process Description Journal
Document Document
Divisi/Kapal Buat Material Membuat permintaan - - -
Request barang
Manager Divisi Approve? Menolak/menyetujui - - -
permintaan barang
Divisi/Kapal Buat Material Melakukan pengeluaran
Issue barang
Odoo Proses Mengirim data - - -
Integrasi ke permintaan barang yang
CSM sudah disetujui ke Odoo
Description: Pemakaian sparepart di kapal dikirim dari PMS ke Odoo untuk mencatat biaya dan
mengurangi stok/nilai persediaan di kapal.
Method: POST (PMS to Odoo)
API Field Mapping
Material Issue Header
PMS Field
PMS Field Description Odoo Field Name Odoo Description/Value
Name/Value
location_id.stock_picking Lokasi asal sparepart di
Kapal
location_dest_id.stock_pic Tujuan Pemakaian
Page 14
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
king
picking_type_id.stock_pic Tipe Transaksi
king
user_id.stock_picking User Login
state.stock_picking Status = Done
scheduled_date.stock_pick tanggal permintaan
ing
date_done.stock_picking tanggal issue material
date.stock_picking tanggal create transaksi
Source PMS
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
material_number.product_ Material Number
template where
id.product_template =
product_id.stock_move_lin
e
name.uom_uom where UOM
id.uom_uom =
product_uom.stock_move_
line
name.stock_location where Lokasi Penyimpanan
id.stock_location =
location_dest_id.stock_mo
ve_line
name_stock_warehouse Nama Kapal
where id.stock_warehouse
=
warehouse_id.stock_move
_line
quantity_done.stock_move Qty yang digunakan
_line
lot_id.stock_move_line Serial Number
Source PMS
Response
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
message error/success message
message explanation detail message
Page 15
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Input Output
Role/PIC Process Name Process Description Journal
Document Document
Staff Logistik Buat Material Melakukan transfer - - -
Transfer barang dari kapal ke
kapal lain
Manager Divisi Approve? Melakukan - - -
validasi/menyetujui
transfer barang dari
kapal ke kapal lain
Manager Divisi Integrasi ke Mengirim data transfer - - -
PMS barang dari kapal ke
kapal lain yang sudah
disetujui ke PMS
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
location_id.stock_picking Lokasi Asal
Page 16
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Line
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
material_number.product_ Material Number
template where
id.product_template =
product_id.stock_move_lin
e
name.uom_uom where UOM
id.uom_uom =
product_uom.stock_move_
line
quantity_done.stock_move qty transfer
_line
lot_id.stock_move_line Serial Number
Response
Odoo Field
Odoo Field Name PMS Field Name PMS Field Description
Description
message error/success message
message explanation detail message
id.stock_picking id transaksi transfer
Page 17
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Input Output
Role/PIC Process Name Process Description Journal
Document Document
Rendalhar Purchase Data Purchase Order - - -
Order Approved Number
Approved tersinkronisasi di PMS
Number
Rendalhar Purchase Data Purchase Order - - -
Order Receipt Receipt secara otomatis
terbentuk
Rendalhar Integrasi ke Sinkronisasi data - - -
Odoo Purchase Order Receipt
ke Odoo
Rendalhar Purchase Data Purchase Order - - -
Order Receipt Receipt secara otomatis
terbentuk
Description: Proses penerimaan barang/jasa di tiap kapal dikirim dari PMS ke Odoo untuk mencatat stock
dan nilai persediaan di tiap kapal dan untuk melanjutkan proses pembayaran ke Penyedia.
Method: POST (PMS to Odoo)
API Field Mapping
PO Receipt Header
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
id.stock_picking where id untuk PO Receipt
origin.stock_picking =
name.purchase_order
Page 18
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Source PMS
PO Receipt Line
origin.stock_move = name.purchase_order and state.stock_move = ‘assigned’
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
id.stock_move where id untuk PO Receipt Line
picking_id.stock_move =
id.stock_picking
name.product_template Nama Product
where id.product_template
= product_id.stock_move
material_number.product_ Material Number
template where
id.product_template =
product_id.stock_move
name.uom_uom where UOM
id.uom_uom =
product_uom.stock_move
name.stock_location where Lokasi Penyimpanan
id.stock_location =
location_dest_id.stock_mo
ve
name_stock_warehouse Nama Kapal
where id.stock_warehouse
=
warehouse_id.stock_move
product_uom_qty.stock_m Qty Order
ove
quantity_done.stock_move Jumlah yang akan
diterima
Source PMS
Serial Number
Notes: Untuk melacak barang berdasarkan serial number seperti penerimaan Valve 3 dan masing-masing
menpunyai serial number 001, 002, 003.
PMS Field Name PMS Field Description Odoo Field Name Odoo Field Description
lot_name.stock_move_line serial number
qty_done.stock_move_line 1
Response
Odoo Field
Odoo Field Name PMS Field Name PMS Field Description
Description
message error/success message
Page 19
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Page 20
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only
Functional Spesification Design Sales to Invoice
Open Issues
Closed Issues
Page 21
PT. Pelayaran Bahtera Adhiguna
Company Confidential – For Internal use only