Welcome MediTrade to your project

ERP RFQ Tables Mapping to Odoo

ERP RFQ Tables Mapping to Odoo Features and Apps

This document maps the ERP RFQ tables to Odoo modules and features, incorporating feedback on purchases, contact types, users, warehouses, service quotations, portal access, finance setup for Singapore, and dashboards/reports for studies/projects. Notes on customizations or third-party apps are included where applicable.

1. Master Data & Site Management

1.1 Customers

Field NameData TypeOdoo Module/AppImplementation
Customer NameTextCRM / ContactsStored in Contacts module as "Name" for customer records. Use "Company" type for organizations or "Individual" for persons. Tag as "Customer" for filtering.
Phone NumbersTextCRM / ContactsStored in Contacts module as "Phone" and "Mobile" fields.
EmailTextCRM / ContactsStored in Contacts module as "Email" field.
Contact Person EmailTextCRM / ContactsLinked contacts under a customer record can have separate emails. Use "Individual" type for persons.
Customer AddressTextCRM / ContactsStored as "Street" in Contacts module.
Customer PostalTextCRM / ContactsStored as "ZIP" in Contacts module.
Customer CityTextCRM / ContactsStored as "City" in Contacts module.
Customer StateTextCRM / ContactsStored as "State" in Contacts module.
Customer CountryTextCRM / ContactsStored as "Country" in Contacts module.
Billing AddressTextCRM / ContactsStored as a separate address type ("Invoice") in Contacts.
Shipping AddressTextCRM / ContactsStored as a separate address type ("Delivery") in Contacts.
CurrencyTextAccountingAssigned in customer record or sales order in Accounting module.
VAT NumberTextAccountingStored as "VAT" in Contacts module for tax purposes.
Payment TermsTextAccountingConfigured in Accounting module under customer payment terms.
Account Manager (Meditrade)TextCRMAssigned as "Salesperson" in Contacts or CRM module.
Account Manager Phone NumberTextCRMLinked to salesperson’s contact record in Contacts module.

Note: Odoo’s Contacts module handles customer data, with CRM and Accounting modules supporting additional fields. Use contact types (Company/Individual) and tags (e.g., "Customer") for filtering in apps. Custom fields may be needed for specific attributes like "Master Contract."

1.2 Suppliers

Field NameData TypeOdoo Module/AppImplementation
NameTextPurchase / ContactsStored as "Name" in Contacts module for vendor records. Use "Company" or "Individual" type and tag as "Vendor" for filtering.
Phone NumbersTextContactsStored as "Phone" and "Mobile" in Contacts module.
EmailTextContactsStored as "Email" in Contacts module.
Contact Person EmailTextContactsLinked contacts under vendor record for additional emails.
AddressTextContactsStored as "Street" in Contacts module.
PostalTextContactsStored as "ZIP" in Contacts module.
CityTextContactsStored as "City" in Contacts module.
StateTextContactsStored as "State" in Contacts module.
CountryTextContactsStored as "Country" in Contacts module.
Billing AddressTextContactsStored as "Invoice" address type in Contacts module.
CurrencyTextPurchaseAssigned in vendor record or purchase order in Purchase module.
VATTextAccountingStored as "VAT" in Contacts module for tax purposes.

Note: Suppliers are managed in Contacts with Purchase and Accounting modules handling procurement and tax data. Use tags like "Vendor" for filtering.

1.3 Site Information

Field NameData TypeOdoo Module/AppImplementation
Site NumberTextContacts / CustomCustom field in Contacts module for site identifier. Tag as "Site Location" for filtering.
Site NameTextContactsStored as a child contact record under customer in Contacts module. Use "Company" or "Individual" type as appropriate.
Floor/DepartmentTextContacts / CustomCustom field in Contacts module for floor/department.
Site AddressTextContactsStored as "Street" for site contact record.
Site Postal CodeTextContactsStored as "ZIP" for site contact record.
Site CityTextContactsStored as "City" for site contact record.
Site StateTextContactsStored as "State" for site contact record.
Site CountryTextContactsStored as "Country" for site contact record.
Site Primary Contact NameTextContactsStored as child contact under site record.
Site Primary Contact TitleTextContactsStored as "Job Position" in Contacts module.
Site Primary Contact EmailTextContactsStored as "Email" for contact.
Site Primary Contact Tel1TextContactsStored as "Phone" for contact.
Site Backup Contact NameTextContactsStored as additional child contact under site.
Site Backup Contact TitleTextContactsStored as "Job Position" for backup contact.
Site Backup Contact EmailTextContactsStored as "Email" for backup contact.
Site Backup Contact Tel1TextContactsStored as "Phone" for backup contact.
Site Activation StatusTextCustomCustom field or status in Contacts module.
IOR Entity NameTextCustomCustom field linking to IOR entity record, tagged as "IOR".

Note: Sites can be modeled as child contacts under customers in the Contacts module. Use contact types (Company/Individual) and tags (e.g., "Site Location") for filtering in apps. Custom fields are needed for site-specific attributes like Site Number and Activation Status.

1.4 Site Information - IOR Entity

Field NameData TypeOdoo Module/AppImplementation
IOR Entity NameTextContactsStored as a separate contact record for IOR entity. Use "Company" type and tag as "IOR" for filtering.
IOR Entity AddressTextContactsStored as "Street" for IOR entity.
IOR Entity Postal CodeTextContactsStored as "ZIP" for IOR entity.
IOR Entity CityTextContactsStored as "City" for IOR entity.
IOR Entity StateTextContactsStored as "State" for IOR entity.
IOR Entity CountyTextContactsStored as "Country" (assuming typo) for IOR entity.
IOR Entity Primary Contact NameTextContactsChild contact under IOR entity record.
IOR Entity Primary Contact TitleTextContactsStored as "Job Position" for contact.
IOR Entity Primary Contact EmailTextContactsStored as "Email" for contact.
IOR Entity Primary Contact Tel1TextContactsStored as "Phone" for contact.
IOR Tax IDTextAccountingStored as "VAT" in Contacts module.
AttachmentsFileDocumentsStored in Documents module linked to IOR entity.

Note: IOR entities can be managed as contacts with the Documents module for attachments. Use tags like "IOR" for filtering. Custom fields may be needed for specific IOR attributes.

1.5 Studies

Field NameData TypeOdoo Module/AppImplementation
Study CodeTextProject / CustomCustom field in Project module for study code.
Project TCTextProjectStored as a tag or custom field in Project module.
Other RFQ ReferenceTextCRM / CustomCustom field in CRM or Project module.
Identifiers (by Customer)TextCRM / CustomCustom field in CRM or Project module.
Target Deployment DateDateProjectStored as "End Date" or custom field in Project module.
CountriesTextProject / CustomCustom field or tags for multiple countries in Project module.

Note: Studies can be managed as projects in the Project module, with custom fields for specific attributes like Study Code and RFQ Reference. Use dashboards and reports in Project module for review, e.g., project dashboard for overview and custom reports for profitability and logs.

1.6 Users (Meditrade & Customer's Representatives)

Field NameData TypeOdoo Module/AppImplementation
Full NameTextUsersStored as "Name" in Users module for Odoo users.
GroupTextUsersAssigned as user groups/roles in Users module for access rights (e.g., Study Admin, Viewing Group).
NameTextUsersStored as "Name" in Users module.
EmailTextUsersStored as "Email" in Users module.
Phone NumberTextUsersStored as "Phone" in Users module.
CompanyTextUsersLinked to company in Users module (Meditrade or Customer).

Note: Users are set up directly in the Users module with appropriate access rights and groups. For customer representatives, assign portal access if needed. Use tags or custom fields for additional filtering.

1.7 Purchase Orders (By Customers)

Field NameData TypeOdoo Module/AppImplementation
Customer PO NumberTextSalesStored as "Customer Reference" in Sales Order.
Customer PO Issue DateDateSalesStored as "Order Date" or custom field in Sales module.
PO ValueNumericSalesStored as order total in Sales module.
AttachmentsFileDocumentsStored in Documents module linked to sales order.
Project NumberTextProject / CustomCustom field in Sales or Project module.
Customer NameTextSalesLinked to customer contact in Sales module.
Inquirer NameTextSales / CustomCustom field in Sales module or linked contact.

Note: Purchase orders from customers are managed as sales orders in the Sales module, with Documents for attachments. Customer fields link to Contacts.

1.8 Courier Tracking

Field NameData TypeOdoo Module/AppImplementation
Courier Name & DetailsTextInventory / CustomCustom field in Delivery Orders (Inventory module). Courier can be a contact tagged as "Courier".
AWB NumberTextInventoryStored as "Delivery Reference" or custom field.
Shipper with Courier Tracking NumberTextInventory / CustomCustom field in Delivery Orders.
Shipped Courier Delivery DateDateInventoryStored as "Scheduled Date" in Delivery Orders.
POD StatusTextInventory / CustomCustom field for Proof of Delivery status.
SignatoryTextInventory / CustomCustom field in Delivery Orders.

Note: Courier tracking can be handled in Inventory module’s Delivery Orders, with custom fields for specific tracking details. Couriers can be contacts tagged as "Courier". Third-party apps like "Shipping Integration" may enhance functionality.

1.9 Exporter

Field NameData TypeOdoo Module/AppImplementation
See IOR FieldsTextContactsManaged as a contact record in Contacts module, similar to IOR entity. Use "Company" type and tag as "Exporter" for filtering.

Note: Exporter details mirror IOR entity setup in Contacts module, with tags for filtering.

2. Product Catalogue

2.1 Products & Services (Non-Inventory, Services)

Field NameData TypeOdoo Module/AppImplementation
Article NumberTextInventoryStored as "Internal Reference" in Product module.
MclassTextInventory / CustomCustom field or category in Product module.
McategoryTextInventoryStored as "Product Category" in Product module.
Product NameTextInventoryStored as "Name" in Product module.
Product DetailsTextInventoryStored as "Description" in Product module.
ManufacturerTextInventory / CustomCustom field in Product module.
UOMTextInventoryStored as "Unit of Measure" in Product module.
Pack SizeTextInventory / CustomCustom field in Product module.
CountryTextInventory / CustomCustom field for country-specific setup.
Income AccountTextAccountingLinked to "Income Account" in Product module.
Preferred Supplier NameTextPurchaseStored as "Vendor" in Product module, linked to supplier contact tagged as "Vendor".
CostNumericInventoryStored as "Cost" in Product module.
Expense AccountTextAccountingLinked to "Expense Account" in Product module.

Note: Non-inventory products and services can be managed in the Inventory module with product types set to "Service" or "Storable Product." Custom fields are needed for Mclass, Pack Size, and Country. Preferred suppliers link to Contacts tagged as "Vendor".

3. Inventory Management

3.1 Warehouse

Field NameData TypeOdoo Module/AppImplementation
Warehouse NameTextInventoryStored as "Warehouse Name" in Inventory module.
Warehouse AddressTextInventoryStored as address in Warehouse settings, linked to a contact if at customer or courier location.
Warehouse Postal CodeTextInventoryStored as "ZIP" in Warehouse address.
Warehouse CityTextInventoryStored as "City" in Warehouse address.
Warehouse StateTextInventoryStored as "State" in Warehouse address.
Warehouse CountryTextInventoryStored as "Country" in Warehouse address.
Warehouse Primary Contact NameTextContactsLinked contact record in Contacts module, tagged appropriately (e.g., "Customer" for customer locations, "Courier" for courier).
Warehouse Primary Contact TitleTextContactsStored as "Job Position" in Contacts module.
Warehouse Primary Contact EmailTextContactsStored as "Email" in Contacts module.
Warehouse Primary Contact Tel1TextContactsStored as "Phone" in Contacts module.
Type of WarehouseTextInventory / CustomCustom field for 3PY, Supplier Warehouse, Customer Location, or Courier.

Note: Warehouses are managed in the Inventory module, with Contacts for contact details at various locations (local, customer, courier). Use tags for filtering types. Any customer-related fields link to Contacts.

3.2 Inventory/Products in Stock

Field NameData TypeOdoo Module/AppImplementation
Article NumberTextInventoryStored as "Internal Reference" in Product module.
MclassTextInventory / CustomCustom field or category in Product module.
McategoryTextInventoryStored as "Product Category" in Product module.
Product NameTextInventoryStored as "Name" in Product module.
Product DetailsTextInventoryStored as "Description" in Product module.
ManufacturerTextInventory / CustomCustom field in Product module.
UOMTextInventoryStored as "Unit of Measure" in Product module.
Pack SizeTextInventory / CustomCustom field in Product module.
CountryTextInventory / CustomCustom field for country-associated inventory.
Warranty PeriodTextInventory / CustomCustom field in Product module.
Serial NumberTextInventoryStored with "Lot/Serial Numbers" in Inventory module.
LOT NumberTextInventoryStored with "Lot/Serial Numbers" in Inventory module.
QuantityNumericInventoryStored as "Quantity" in Inventory module.
Expiry DateDateInventoryStored with Lot/Serial Numbers for perishable items.

Note: Inventory module handles stock products with Lot/Serial Number tracking. Custom fields are needed for Mclass, Manufacturer, Pack Size, Country, and Warranty Period.

4. CRM & Opportunity Management

4.1 Projects (Inquiries)

Field NameData TypeOdoo Module/AppImplementation
Proposal NumberTextCRMStored as "Opportunity Name" or custom field in CRM.
Customer NameTextCRMLinked to customer contact in CRM module.
Inquirer NameTextCRMStored as contact or custom field in CRM.
Customer Inquirer EmailTextCRMStored as contact email in CRM.
Project SponsorTextCRM / CustomCustom field in CRM or Project module.
Study CodeTextProject / CustomCustom field in Project module.
Project TCTextProjectStored as tag or custom field in Project module.
Other RFQ ReferenceTextCRM / CustomCustom field in CRM or Project module.
Identifiers (by Customer)TextCRM / CustomCustom field in CRM or Project module.
Target Shipment DateDateProjectStored as "End Date" or custom field in Project module.
CountriesTextProject / CustomCustom field or tags in Project module.
Purchase Order NumberTextSalesLinked to sales order in Sales module.
Contract TypeTextProject / CustomCustom field for lease, rental, or both.
Products (Summary)TextCRM / SalesStored in opportunity or sales order description.
Start DateDateProjectStored as "Start Date" in Project module.
End DateDateProjectStored as "End Date" in Project module.
Contract StatusTextProjectStored as project status (e.g., Open, Closed).

Note: Projects are managed in CRM and Project modules, with opportunities transitioning to projects. Custom fields are needed for specific attributes like Study Code and Contract Type. Use dashboards and reports in Project module for review, e.g., project dashboard for overview and custom reports for profitability and logs.

5. Quotation & Order Entry

5.1 Quotations (General Info)

Field NameData TypeOdoo Module/AppImplementation
Customer NameTextSalesLinked to customer contact in Sales module.
Customer AddressTextSalesStored as customer address in Sales Order.
Postal & CityTextSalesStored as "ZIP" and "City" in Sales Order.
CountryTextSalesStored as "Country" in Sales Order.
VAT NumberTextAccountingStored as "VAT" in customer record.
Offer DateDateSalesStored as "Quotation Date" in Sales module.
Offer Expiry DateDateSalesStored as "Expiration Date" in Sales module.
Account Manager (Meditrade)TextSalesStored as "Salesperson" in Sales module.
Account Manager Phone NumberTextSalesLinked to salesperson’s contact record.
Proposal NumberTextSalesStored as "Quotation Number" in Sales module.
Study CodeTextSales / CustomCustom field in Sales module.

Note: Quotations are managed in the Sales module as quotations, converting to sales orders upon acceptance.

5.2 Sales Quotations

Field NameData TypeOdoo Module/AppImplementation
CountryTextSalesStored in customer or delivery address in Sales Order.
Transaction TypeTextSales / CustomCustom field to indicate "Sales."
QuantityNumericSalesStored in order lines in Sales module.
Product Description & UOM & Pack SizeTextSalesStored as product description and UOM in order lines.
Product DetailsTextSalesStored in product description or notes.
Lead TimeTextSales / CustomCustom field in Sales module.
Unit PriceNumericSalesStored in order lines in Sales module.
Total PriceNumericSalesCalculated in Sales module.
Sales SubtotalNumericSalesCalculated in Sales module.
Taxes (Specify)NumericAccountingApplied via tax rules in Sales module.
Sales Total (Currency)NumericSalesCalculated total in Sales module.

Note: Sales quotations are standard in the Sales module, with taxes handled via Accounting. Custom fields needed for Transaction Type and Lead Time.

5.3 Rental Quotation

Field NameData TypeOdoo Module/AppImplementation
CountryTextSalesStored in customer or delivery address.
Transaction TypeTextRental / CustomCustom field or use Odoo Rental app to indicate "Rental."
QuantityNumericRentalStored in rental order lines in Rental app.
Product Description & UOM & Pack SizeTextRentalStored as product description and UOM in Rental app.
Product DetailsTextRentalStored in product description or notes.
Lead TimeTextRental / CustomCustom field in Rental app.
Unit/MonthNumericRentalStored as rental price in Rental app.
Units/MonthNumericRentalStored in rental order lines.
Duration (Mth)NumericRentalStored as rental period in Rental app.
Total PriceNumericRentalCalculated in Rental app.
Sales SubtotalNumericRentalCalculated in Rental app.
Taxes (Specify)NumericAccountingApplied via tax rules in Rental app.
Sales Total (Currency)NumericRentalCalculated total in Rental app.

Note: Odoo’s Rental app (available in Odoo Enterprise) handles rental quotations. Custom fields may be needed for specific attributes.

5.4 Service Quotation

Field NameData TypeOdoo Module/AppImplementation
(Fields to be defined)TextSales / Field ServiceService quotations are managed in Sales module using products of type "Service". The structure is the same as sales or rental quotations but with service products (e.g., calibration, return & destruction).

Note: Field Service module or Sales module with service products can handle calibration or destruction services. Custom fields may be required.

5.5 Purchase Orders (By Customers)

Field NameData TypeOdoo Module/AppImplementation
PO Number (Customer)TextSalesStored as "Customer Reference" in Sales Order.
Customer PO Issue DateDateSalesStored as "Order Date" or custom field.
PO ValueNumericSalesStored as order total in Sales module.
AttachmentsFileDocumentsStored in Documents module linked to sales order.
Project NumberTextProject / CustomCustom field in Sales or Project module.
Customer NameTextSalesLinked to customer in Sales module.
Inquirer NameTextSales / CustomCustom field or linked contact.
Study CodeTextSales / CustomCustom field in Sales module.

Note: Handled as sales orders in Sales module, with Documents for attachments.

6. Procurement & Shipping Models

Odoo Module/App: Purchase / Inventory

Implementation: Purchase module handles procurement from suppliers (e.g., buy local/central). Inventory module manages shipping models (local/international) using routes and rules. Configurations for sales and return orders, including virtual warehouses for depot services. Custom workflows for multi-country quotes.

7. Equipment & Asset Management

7.1 Asset Registry

Field NameData TypeOdoo Module/AppImplementation
Product NameTextAssetsStored as "Asset Name" in Assets module.
Contract NumberTextAssets / CustomCustom field in Assets module.
Transaction TypeTextAssets / CustomCustom field for Sales or Rental.
Study CodeTextAssets / CustomCustom field in Assets module.
PO NumberTextAssets / PurchaseLinked to purchase order in Purchase module.
Primary Product TypeTextAssets / CustomCustom field for New or Refurbished.
Rental Min Period (Month)NumericRental / CustomCustom field in Rental or Assets module.
Asset Serial NumberTextAssetsStored as "Serial Number" in Assets module.
Warranty Period (Years)NumericAssets / CustomCustom field in Assets module.
Asset Tracking NumberTextAssets / CustomCustom field in Assets module.
Recalibration RequiredTextField Service / CustomCustom field or task in Field Service module.
Last Inspection DateDateField ServiceStored in Field Service module for maintenance tasks.
Last Calibration DateDateField ServiceStored in Field Service module for maintenance tasks.
Calibration Valid In MonthNumericField Service / CustomCustom field in Field Service module.
Last Calibration - Report Reference NumberTextDocuments / CustomCustom field or stored in Documents module.
Next Calibration DueDateField ServiceStored as scheduled task in Field Service module.
Asset Rental StartDateRentalStored as rental start date in Rental app.
Depreciation ScheduleTextAssetsStored as "Depreciation" in Assets module.
Site InformationTextInventory / ContactsLinked to site contact (tagged as "Site Location") or warehouse in Inventory or Contacts module.

Note: Assets module handles fixed assets, with Rental and Field Service modules for rental and maintenance. Custom fields are needed for specific attributes like Contract Number and Calibration details.

8. Contract Management

8.1 Shipping Orders

Field NameData TypeOdoo Module/AppImplementation
Order Record IDTextInventoryStored as "Delivery Order Reference" in Inventory module.
Ordered ByTextInventoryLinked to customer or contact in Delivery Order.
Ordered DayDateInventoryStored as "Order Date" in Delivery Order.
Required Shipment DateDateInventoryStored as "Scheduled Date" in Delivery Order.
Site NumberTextInventory / CustomCustom field linked to site contact in Contacts module.
PO NumberTextSalesLinked to sales order in Sales module.
StatusTextInventoryStored as delivery status (e.g., Draft, Done).

Note: Shipping orders are managed as Delivery Orders in the Inventory module.

8.2 Contracts

Field NameData TypeOdoo Module/AppImplementation
Contract NumberTextContracts / CustomCustom field or use Subscription module for contract tracking.
Product CodeTextInventoryLinked to product in Inventory module.
Req. Shipment DateDateInventoryLinked to Delivery Order in Inventory module.
Site NumberTextContacts / CustomCustom field linked to site contact in Contacts module.
CountryTextContractsStored in contract or linked to site/customer.
Contract StatusTextContractsStored as status in Subscription or custom module.

Note: Odoo’s Subscription module (Enterprise) or a custom Contracts module can manage contracts, with links to products and sites.

9. Customer Self-Service Portal

Note: The Portal module provides customer access to view and interact with their data. Access is controlled via user roles and groups in the Users module. Customers can log in to see personalized information.

9.1 Users

Field NameData TypeOdoo Module/AppImplementation
List of Customer Users and RolesTextPortal / UsersManaged in Portal module with user roles assigned in Users module.

Note: Portal module allows customer users to access data based on roles.

9.2 Customer Information

Field NameData TypeOdoo Module/AppImplementation
All Information on the CustomerTextPortalDisplayed in Portal module for customer view, including contact details.

9.3 Sales Order Information

Field NameData TypeOdoo Module/AppImplementation
Study CodeTextPortal / CustomCustom field in Sales or Project module, visible in Portal.
PO NumberTextPortalDisplayed as "Customer Reference" in Portal.
Contract NumbersTextPortal / CustomCustom field in Portal or Contracts module.
Site InformationTextPortalLinked to site contacts, visible in Portal.

9.4 Site Information

Field NameData TypeOdoo Module/AppImplementation
All Details of Their SitesTextPortalDisplayed as child contacts in Portal module.

9.5 Asset Registry

Field NameData TypeOdoo Module/AppImplementation
All Assets Linked to Study CodeTextPortal / AssetsCustom view in Portal linking assets to study code.

9.6 Order Overview (Optional)

Field NameData TypeOdoo Module/AppImplementation
NewTextPortalDisplayed as order status in Portal.
Order PlacedTextPortalDisplayed as order status in Portal.
Shipment SentTextPortalDisplayed as delivery status in Portal.
Shipment DeliveredTextPortalDisplayed as delivery status in Portal.
Contract FinalizedTextPortal / CustomCustom status in Portal or Contracts module.
ActionsTextPortal / CustomCustom actions (e.g., Confirm, Track) in Portal.

9.7 Ordering Tool (Optional)

Field NameData TypeOdoo Module/AppImplementation
Primary Service TypesTexteCommerce / PortalCustomers select services (Rental, Sales, Calibration Services, Repair/Warranty Services) via eCommerce or Portal.

Note: Portal module provides customer access to orders, sites, and assets. eCommerce module can enable ordering. Customizations may enhance functionality. Access is restricted to logged-in customers with portal rights.

10. Finance & Accounting

Odoo Module/App: Accounting

Implementation: Set up as a Singapore entity in Accounting module: Configure company details with Singapore address, currency (SGD), and fiscal localization for Singapore (install "Singapore - Accounting" module if available or configure manually). For tax laws: GST (VAT) at 8% (as of 2023; update to current rate), withholding tax for non-residents, import taxes/duties passed to customers via cost-plus invoicing. Use multi-currency for international transactions. Invoicing integrates with Sales and Rental modules. Enable progressive invoicing for rentals. Reports for GST returns, withholding tax, and financial statements compliant with Singapore Accounting Standards (SFRS).

11. Reporting & Analytics

11.1 Study / Project View

Field NameData TypeOdoo Module/AppImplementation
All TransactionsTextAccounting / ProjectReports in Accounting and Project modules.
AssetsTextAssetsAsset reports linked to projects.
Project DetailsTextProjectProject dashboard and reports.
Project Profitability SummaryTextProjectProfitability reports in Project module.
Project ListTextProjectList view in Project module.
Project LogTextProjectActivity log in Project module.

Note: Use dashboards in Project module for real-time views and custom reports for summaries, lists, and logs. Project and Accounting modules provide reporting. Custom reports may be needed for specific study/project views.

11.2 Others

Implementation: Odoo’s Reporting module allows custom dashboards and reports for additional analytics.

12. Processes

Odoo Module/App: CRM / Sales / Inventory / Accounting

Implementation: Odoo’s workflow automation supports the enquiry-to-invoicing process: CRM for enquiries, Sales for quotes and POs, Inventory for goods movement, and Accounting for invoicing. Custom workflows can be configured for progressive invoicing and POD uploads.

13. Purchase Types

Odoo Module/App: Purchase / Accounting

Implementation: Purchase module handles Buy/Sell, Buy/Rent, and Rent/Rent models. Accounting module manages balance sheet (stock in/out, fixed assets) and income statements (depreciation, rental expenses).

14. Legal Entities

Field NameData TypeOdoo Module/AppImplementation
Meditrade Solutions International Pte Ltd. (SG)TextSettingsConfigured as main company in Settings.
Option for New EntitiesTextSettingsMulti-company setup in Odoo for branches (e.g., Switzerland, Australia).

Note: Odoo’s multi-company feature supports additional legal entities.

15. Taxes

15.1 Taxes - Sales/Purchases

Field NameData TypeOdoo Module/AppImplementation
VATNumericAccountingConfigured in Accounting module for Singapore GST (VAT).
Withholding TaxNumericAccountingConfigured as tax type in Accounting module for non-residents.
Import TaxNumericAccountingConfigured as tax passed to customers.
Import DutiesNumericAccountingConfigured similarly to import tax.
No VATTextAccountingZero-rated tax configuration in Accounting.

Note: Accounting module handles all tax types, with configurations for Singapore and international scenarios. Use Singapore fiscal localization for GST compliance (e.g., GST returns, input/output tax).

16. Additional Discussion Points

16.1 Tracking Orders/Assets

Field NameData TypeOdoo Module/AppImplementation
Contract NumberTextContracts / CustomCustom field in Contracts or Assets module.
PO NumberTextSales / PurchaseLinked to sales (customer PO) or purchase (Meditrade PO) orders.
Invoice NumberTextAccountingStored in Accounting module, linked to PO and Study Code.
Order IDTextSales / InventoryStored as order reference in Sales or Inventory.
Return IDTextInventoryStored as return reference in Inventory module.

Note: Odoo’s traceability features link orders, assets, and invoices across modules.

16.2 Customer PO vs. Meditrade PO

Implementation: Customer POs are managed as sales orders in Sales module (with "Customer Reference"), while Meditrade POs are handled in Purchase module. Both can be linked via custom fields or project references; both are required for tracking.

17. Drop Down Lists

Field NameData TypeOdoo Module/AppImplementation
Taxes - SalesTextAccountingConfigured as tax selection in Sales module.
Taxes - PurchasesTextAccountingConfigured as tax selection in Purchase module.
MclassTextInventory / CustomCustom dropdown in Product module.
McategoryTextInventoryStored as "Product Category" dropdown.
TC (Therapeutic Category)TextProject / CustomCustom dropdown allowing multiple selections.
Contract TypeTextContracts / CustomCustom dropdown for lease, rental, both.

Note: Odoo supports dropdowns natively; custom fields may be needed for specific lists.

18. Field Types

Field NameData TypeOdoo Module/AppImplementation
Input FieldText/Date/Numeric/Drop DownAll ModulesSupported natively in Odoo (text, date, numeric, selection).
Calculated FieldFormulaAll ModulesComputed fields in Odoo with Python logic.
Selected FieldTextAll ModulesMany2one fields linking to other records.
Upload FieldsFileDocumentsSupported in Documents module for attachments.

Note: Odoo’s flexibility supports all field types through standard or custom configurations.

19. QuickBooks Online (QBO) to Odoo Data Migration Mapping

This section provides detailed field-by-field mappings for migrating data from QuickBooks Online to Odoo, based on QBO API entity fields. Mappings are grouped by major QBO entities (e.g., Customer, Vendor, Item, Invoice). Use Odoo's import wizards with CSV templates or third-party connectors (e.g., "Odoo QuickBooks Online Connector") for migration. Export from QBO via API or CSV, clean data, and import to Odoo. Handle opening balances via trial balance import. For custom fields in QBO, map to Odoo custom fields (QBO API supports limited custom fields: first 3 string types for sales/purchases).

19.1 QBO Customers to Odoo Partners (Customers)

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdString (Unique identifier)External ID or Custom FieldContactsStore as external reference for syncing; not user-visible.
SyncTokenString (Version number for updates)N/AContactsUsed for concurrency control during migration; discard after import.
DisplayNameString (Display name)NameContactsMain customer name; use for Company type contacts.
GivenNameString (First name)First Name (for Individual)ContactsFor Individual type; combine with FamilyName if needed.
FamilyNameString (Last name)Last Name (for Individual)ContactsFor Individual type.
CompanyNameString (Company name)Name (for Company)ContactsUse for Company type contacts.
PrimaryEmailAddrEmailAddress object (Email)EmailContactsMain email address.
PrimaryPhoneTelephoneNumber object (Phone)PhoneContactsMain phone number.
BillAddrPhysicalAddress object (Billing address: Line1, City, etc.)Invoice Address (Street, City, State, ZIP, Country)ContactsMap to separate address type "Invoice".
ShipAddrPhysicalAddress object (Shipping address)Delivery AddressContactsMap to separate address type "Delivery".
NotesString (Notes)Internal NotesContactsStore in notes field or custom field.
CurrencyRefReferenceType (Currency ID)CurrencyAccountingMap to Odoo currency.
TaxableBoolean (Subject to tax)Taxable FlagAccountingSet tax applicability.
SalesTaxCodeRefReferenceType (Sales tax code)Fiscal Position or TaxAccountingMap to Odoo tax or fiscal position.
CustomFieldCustomField array (Up to 3 string custom fields)Custom FieldContactsMap to Odoo custom fields; limited to first 3 string types in QBO API.
BalanceDecimal (Open balance)Open BalanceAccountingImport as opening entry or reconcile with invoices.

Note: QBO Customers map to Odoo Partners with customer flag. Sub-customers (e.g., for projects) can map to child contacts or projects in Odoo. Use tags for filtering. For RFQ Customers section, this maps directly.

19.2 QBO Vendors to Odoo Partners (Suppliers)

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDContactsFor syncing.
SyncTokenStringN/AContactsFor updates during migration.
DisplayNameStringNameContactsMain vendor name.
GivenNameStringFirst NameContactsFor Individual.
FamilyNameStringLast NameContactsFor Individual.
CompanyNameStringName (Company)ContactsFor Company type.
PrimaryEmailAddrEmailAddressEmailContactsMain email.
PrimaryPhoneTelephoneNumberPhoneContactsMain phone.
VendorAddrPhysicalAddressAddress (Street, City, etc.)ContactsMap to vendor address.
CurrencyRefReferenceTypeCurrencyAccountingVendor currency.
TaxReportingBasisString (Accrual/Cash)Tax BasisAccountingConfigure in Odoo accounting settings.
CustomFieldCustomField arrayCustom FieldContactsMap to Odoo custom fields.
BalanceDecimalOpen BalanceAccountingImport as opening entry.

Note: Vendors map to Odoo Partners with supplier flag. For RFQ Suppliers section.

19.3 QBO Items to Odoo Products

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDInventoryFor syncing.
SyncTokenStringN/AInventoryFor updates.
NameStringNameInventoryProduct name.
DescriptionStringDescriptionInventorySales description.
SKUStringInternal ReferenceInventorySKU or barcode.
TypeEnum (Inventory, NonInventory, Service)Product TypeInventoryMap Inventory to Storable, NonInventory/Service to Consumable/Service.
SalesPrice / RateDecimalList PriceInventorySales price.
Tax on SalesTaxCodeRefSales TaxAccountingMap to Odoo tax.
IncomeAccountRefReferenceTypeIncome AccountAccountingLink to Odoo account.
Purchase DescriptionStringPurchase DescriptionInventoryPurchase description.
Purchase CostDecimalCostInventoryStandard cost.
Tax on PurchasesTaxCodeRefPurchase TaxAccountingMap to Odoo tax.
ExpenseAccountRefReferenceTypeExpense AccountAccountingLink to Odoo account.
Quantity On HandDecimalQuantity on HandInventoryImport as initial stock.
Low Stock AlertBooleanReordering RulesInventorySet min quantity for reordering.
Inventory Asset AccountReferenceTypeInventory AccountAccountingLink to Odoo account.
Quantity as-of DateDateInventory DateInventoryUse for initial inventory adjustment date.

Note: Items map to Odoo Products. For RFQ Products & Services section.

19.4 QBO Invoices to Odoo Customer Invoices

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDAccountingFor syncing.
SyncTokenStringN/AAccountingFor updates.
DocNumberStringReference/NumberAccountingInvoice number.
TxnDateDateDateAccountingInvoice date.
DueDateDateDue DateAccountingPayment due date.
CustomerRefReferenceTypePartnerAccountingLink to customer partner.
LineLine array (DetailType, ItemRef, Qty, UnitPrice, Amount, TaxCodeRef, Description)Invoice LinesAccountingMap to invoice lines with product, quantity, price, tax.
TotalAmtDecimalAmount TotalAccountingCalculated total.
BalanceDecimalAmount ResidualAccountingOpen balance; reconcile payments.
CustomFieldCustomField arrayCustom FieldAccountingMap to Odoo custom fields on invoices.
CurrencyRefReferenceTypeCurrencyAccountingInvoice currency.
MemoStringCustomer Message or NotesAccountingStore in notes.

Note: Invoices map to Odoo Customer Invoices. For RFQ Purchase Orders and Quotations.

19.5 QBO Bills to Odoo Vendor Bills

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDAccountingFor syncing.
SyncTokenStringN/AAccountingFor updates.
DocNumberStringReference/NumberAccountingBill number.
TxnDateDateDateAccountingBill date.
DueDateDateDue DateAccountingPayment due date.
VendorRefReferenceTypePartnerAccountingLink to vendor partner.
LineLine array (AccountBasedExpenseLineDetail or ItemBasedExpenseLineDetail, Amount, Description)Invoice LinesAccountingMap to bill lines with account/product, amount.
TotalAmtDecimalAmount TotalAccountingCalculated total.
CustomFieldCustomField arrayCustom FieldAccountingMap to Odoo custom fields.
CurrencyRefReferenceTypeCurrencyAccountingBill currency.

Note: Bills map to Odoo Vendor Bills. For RFQ procurement.

19.6 QBO Payments to Odoo Payments

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDAccountingFor syncing.
SyncTokenStringN/AAccountingFor updates.
TxnDateDatePayment DateAccountingPayment date.
TotalAmtDecimalAmountAccountingPayment amount.
CustomerRefReferenceTypePartner (Customer)AccountingFor customer payments.
VendorRefReferenceTypePartner (Vendor)AccountingFor vendor payments (if applicable).
LineLine array (LinkedTxn with TxnId, TxnType=Invoice/Bill, Amount)Reconciled LinesAccountingLink to invoices/bills and apply amounts.
DepositToAccountRefReferenceTypeJournal (Bank)AccountingDeposit to bank account.
CurrencyRefReferenceTypeCurrencyAccountingPayment currency.

Note: Payments map to Odoo Customer/Vendor Payments and reconcile with invoices/bills.

19.7 QBO Estimates to Odoo Quotations

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDSalesFor syncing.
SyncTokenStringN/ASalesFor updates.
DocNumberStringReferenceSalesQuotation number.
TxnDateDateQuotation DateSalesDate of estimate.
ExpirationDateDateExpiration DateSalesExpiry date.
CustomerRefReferenceTypePartnerSalesLink to customer.
LineLine array (ItemRef, Qty, UnitPrice, Amount, Description)Order LinesSalesMap to quotation lines.
TotalAmtDecimalAmount TotalSalesCalculated total.
CustomFieldCustomField arrayCustom FieldSalesMap to Odoo custom fields.
CurrencyRefReferenceTypeCurrencySalesQuotation currency.
EstStatusEnum (Accepted, Closed, Rejected)StateSalesMap to quotation status.

Note: Estimates map to Odoo Sales Quotations. For RFQ Quotations sections.

19.8 QBO Journal Entries to Odoo Journal Entries

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDAccountingFor syncing.
SyncTokenStringN/AAccountingFor updates.
TxnDateDateDateAccountingEntry date.
LineLine array (JournalEntryLineDetail: PostingType=Debit/Credit, AccountRef, Amount, Description)Move LinesAccountingMap to journal lines with debit/credit, account, amount.
CustomFieldCustomField arrayCustom FieldAccountingMap to Odoo custom fields.
CurrencyRefReferenceTypeCurrencyAccountingEntry currency.

Note: Journal Entries map directly to Odoo Journal Entries. For financial transactions in RFQ.

19.9 QBO Deposits to Odoo Bank Deposits

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDAccountingFor syncing.
SyncTokenStringN/AAccountingFor updates.
TxnDateDateDateAccountingDeposit date.
TotalAmtDecimalAmountAccountingTotal deposit.
LineLine array (LinkedTxn or DepositLineDetail: AccountRef, Amount)LinesAccountingMap to deposit lines, linking to payments or accounts.
DepositToAccountRefReferenceTypeJournal (Bank)AccountingDeposit to bank account.
CurrencyRefReferenceTypeCurrencyAccountingDeposit currency.

Note: Deposits map to Odoo Bank Statements or Payments. Reconcile with undeposited funds.

19.10 QBO Accounts to Odoo Accounts

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDAccountingFor syncing.
SyncTokenStringN/AAccountingFor updates.
NameStringNameAccountingAccount name.
AcctNumStringCodeAccountingAccount code.
AccountTypeEnum (Asset, Liability, etc.)TypeAccountingMap to Odoo account type.
AccountSubTypeEnum (Detailed subtypes)Sub-Type or TagAccountingUse tags or custom fields.
CurrentBalanceDecimalBalanceAccountingImport as opening balance.

Note: Accounts map to Odoo Chart of Accounts. Import first for references in other entities.

19.11 QBO TaxCodes to Odoo Taxes

QBO FieldQBO Type/DescriptionOdoo FieldOdoo ModuleNotes
IdStringExternal IDAccountingFor syncing.
SyncTokenStringN/AAccountingFor updates.
NameStringNameAccountingTax name.
TaxableBooleanTaxableAccountingSet applicability.
TaxGroupBoolean (Group or single)Tax GroupAccountingIf true, map to tax group.
TaxRateDetailsArray (TaxRateRef, RateValue)Tax RatesAccountingMap to child taxes in group or single rate.

Note: TaxCodes map to Odoo Taxes or Tax Groups. For RFQ Taxes section.

19.12 RFQ-Specific Migration Notes

RFQ SectionQBO EquivalentOdoo MappingNotes
Customers/SuppliersCustomer/Vendor entitiesPartnersImport Customers as customers, Vendors as suppliers. Sub-customers (projects) to child partners or projects.
Site InformationCustom Fields or Sub-customers/LocationsChild PartnersMap QBO custom fields or sub-entries to Odoo child contacts with tags.
Studies/ProjectsClasses or Sub-customersProjectsMap QBO classes to Odoo projects; import details as custom fields.
Products CatalogueItem entitiesProductsImport as products; custom fields for RFQ specifics.
Inventory/WarehouseInventory Items, LocationsWarehouses, StockImport stock via adjustments; locations to warehouses.
Quotations/POsEstimates, Purchase OrdersQuotations, Purchase OrdersEstimates to sales quotations; POs to purchase orders.
AssetsFixed Asset Items (add-on)AssetsExport CSV from QBO Fixed Assets and import to Odoo.
Taxes/FinanceTaxCodes, Accounts, JournalsTaxes, Accounts, JournalsImport Chart of Accounts first; map to Singapore setup.

Note: For full migration, prioritize: Accounts > Taxes > Partners > Products > Transactions. Use Odoo tools for batch import. Test reconciliation.