Use your Odoo data for reporting, automation and AI.

Data Panda brings your Odoo data together with the data from the rest of your business. From one place, we turn it into dashboards, automations, AI workflows and custom apps your team uses every day.

Data Panda Reporting Automation AI Apps
Odoo logo

The ERP that ties your whole business together.

Odoo started in Belgium in 2005 as TinyERP and grew into a modular ERP covering CRM, sales, purchasing, inventory, accounting, HR, projects and manufacturing. It is one of the most widely deployed ERPs in European SMEs, with a large open-source core and an Enterprise edition on top.

The point of pulling Odoo into a warehouse is not that Odoo lacks reports. It is that the questions worth asking usually cross modules: sales versus purchasing versus stock, or Odoo versus a webshop, or Odoo versus a standalone CRM. Those questions end up in spreadsheets, and spreadsheets rot.

What you get once Odoo is connected.

Cross-module reporting

One view of sales, stock, purchasing and accounting instead of four Odoo dashboards.

  • Margin per product, customer and region
  • Stock turnover and slow-moving items
  • Open AR and AP aging next to cash position

External-system automation

Sync Odoo with the systems that live outside it, without the bi-weekly export dance.

  • Webshop orders into Odoo sales + stock
  • CRM wins into Odoo sales orders
  • Accounting exports into your group consolidation

AI workflows

Turn Odoo history into forecasts and scoring that guide the next order or the next cash call.

  • Demand forecasting on stock movements
  • Credit-risk scoring on payment history
  • AI assist on document classification and coding

Custom apps on your data

Small tools on top of Odoo data for people who should not be learning Odoo.

  • Sales rep dashboards with stock availability
  • Supplier portals with open POs and receipts
  • Project managers' profitability views

Use cases we deliver with Odoo data.

A list of concrete reports, automations and AI features we have built on Odoo data. Pick the one that matches your situation.

Margin by productAfter purchase cost, freight and discounts.
Stock turnoverWeeks of cover per SKU, by warehouse.
AR agingOpen receivables per customer, by bucket.
Sales to delivery leadOrder date to shipment date, per product line.
Purchase-to-pay cyclePO to receipt to payment, average per supplier.
CRM win rate by repStage velocity and close rate from Odoo CRM.
Customer lifetime valueRevenue and margin across the whole history.
Multi-company consolidationCross-entity P&L without the monthly export.
Production throughputMRP work orders per hour, per workstation.
Project profitabilityHours, materials and invoiced revenue per project.

Answers you will finally get.

Why is working capital creeping up?

AR aging, inventory days and AP aging side by side, with trend lines over twelve months. Flags the account, SKU group or supplier cohort that is driving the shift.

Which products are quietly killing margin?

Gross margin per product over time, after purchase cost, freight and discount. Ranks slow-moving SKUs with a full margin picture before you reorder.

How long between winning a deal and delivering it?

Sales order date to shipment date, per product line and customer. Exposes where the handoff between sales and warehouse lengthens the cycle.

Where each function gets value.

For finance leaders

Working capital under control. AR, AP and inventory aging next to cash position, with group consolidation that does not wait for the month-end export.

For sales leaders

Win rate by rep and region, plus pipeline-to-order velocity. See stock availability at quote time instead of after the customer already said yes.

For operations

Stock turnover and purchase-to-pay cycle in one picture. The handoffs between sales, purchasing and warehouse show up as data, not as friction.

What you can automate with Odoo.

Pair with Salesforce

Hand customers off from Salesforce to Odoo

Closed-won Salesforce opportunities flow into Odoo as quotations or sales orders, with customer and contact records reconciled. Sales stops re-keying into the ERP and finance sees Salesforce-side forecast next to Odoo-side backlog.

Pair with HubSpot

Turn HubSpot deals into Odoo sales orders

Marketing-sourced HubSpot deals create draft sales orders in Odoo when they reach closed-won. Order status, shipment and invoice state flow back to the HubSpot deal, so sales always knows where a customer is in the fulfilment cycle.

Pair with Exact Online

Consolidate Odoo with a Benelux entity on Exact Online

For groups running Odoo in the operational entity and Exact Online at the accounting or holding level, we align chart of accounts, sync customer masters and push Odoo journal totals into Exact Online. One consolidated P&L, no monthly reconciliation.

Pair with Shopify

Sync webshop orders into Odoo stock and accounting

Shopify orders land in Odoo as sales orders with the right products, stock moves and invoices. Inventory stays in one place, and the ecommerce side of the business shows up in the same P&L as the rest of the group.

Want more information about this connector?

I'm interested in this connector

Available Odoo data and actions.

Odoo data covers 83 available tables across the supported connection options. The exact selection depends on your connection and access rights. Use the data in reports, combine it with the rest of your stack, or query it directly in your warehouse.

The tables at the top of the list open up to show their columns and data types.

  • Contacts 186 columns
    • Id integer
    • Tz string
    • Ref boolean
    • Vat boolean
    • Zip string
    • City string
    • Date boolean
    • Lang string
    • Name string
    • Type string
    • Color integer
    • Debit number
    • Email string
    • Phone string
    • Title boolean
    • Trust string
    • Active boolean
    • Credit number
    • Mobile boolean
    • Self_0 integer
    • Self_1 string
    • Street string
    • Barcode boolean
    • Comment boolean
    • Street2 boolean
    • Team_id boolean
    • User_id boolean
    • Website string
    • Employee boolean
    • Function boolean
    • State_id boolean
    • Form_file boolean
    • Im_status string
    • Is_public boolean
    • Ocn_token boolean
    • Parent_id boolean
    • Sale_warn string
    • Total_due number
    • Tz_offset string
    • Bank_ids_0 integer
    • Company_id boolean
    • Country_id boolean
    • Create_uid boolean
    • Is_company boolean
    • Signup_url string
    • State_id_0 integer
    • State_id_1 string
    • Task_count integer
    • User_ids_0 integer
    • Write_date Date & time
    • Child_ids_0 integer
    • Create_date Date & time
    • Debit_limit number
    • Has_message boolean
    • Industry_id boolean
    • Message_ids string
    • Parent_id_0 integer
    • Parent_id_1 string
    • Parent_name string
    • Partner_gid integer
    • Signup_type string
    • Write_uid_0 integer
    • Write_uid_1 string
    • Company_id_0 integer
    • Company_id_1 string
    • Company_name boolean
    • Company_type string
    • Country_code string
    • Country_id_0 integer
    • Country_id_1 string
    • Create_uid_0 integer
    • Create_uid_1 string
    • Credit_limit number
    • Display_name string
    • Invoice_warn string
    • Signup_token string
    • Signup_valid boolean
    • __last_update Date & time
    • Channel_ids_0 integer
    • Channel_ids_1 integer
    • Currency_id_0 integer
    • Currency_id_1 string
    • Customer_rank integer
    • Invoice_ids_0 integer
    • Invoice_ids_1 integer
    • Invoice_ids_2 integer
    • Meeting_count integer
    • Message_ids_0 integer
    • Message_ids_1 integer
    • Message_ids_2 integer
    • Partner_share boolean
    • Purchase_warn string
    • Sale_warn_msg boolean
    • Supplier_rank integer
    • Total_overdue number
    • Activity_state boolean
    • Employee_ids_0 integer
    • Is_blacklisted boolean
    • Message_bounce integer
    • Total_invoiced number
    • Additional_info boolean
    • Contact_address string
    • Email_formatted string
    • Employees_count integer
    • Followup_status string
    • Phone_sanitized string
    • Signature_count integer
    • Activity_summary boolean
    • Activity_type_id boolean
    • Activity_user_id boolean
    • Company_registry boolean
    • Email_normalized string
    • Followup_line_id boolean
    • Invoice_warn_msg boolean
    • Partner_latitude number
    • Sale_order_count integer
    • Sale_order_ids_0 integer
    • Sale_order_ids_1 integer
    • Active_lang_count integer
    • Message_has_error boolean
    • Opportunity_count integer
    • Partner_longitude number
    • Phone_blacklisted boolean
    • Purchase_warn_msg boolean
    • Ref_company_ids_0 integer
    • Show_credit_limit boolean
    • Signup_expiration boolean
    • Activity_type_icon boolean
    • Bank_account_count integer
    • Followup_line_id_0 integer
    • Followup_line_id_1 string
    • Journal_item_count integer
    • Message_needaction boolean
    • Mobile_blacklisted boolean
    • Message_is_follower boolean
    • Payment_token_count integer
    • Phone_mobile_search boolean
    • Same_vat_partner_id boolean
    • Certifications_count integer
    • Purchase_order_count integer
    • Unpaid_invoice_ids_0 integer
    • Message_has_sms_error boolean
    • Message_partner_ids_0 integer
    • Unpaid_invoices_count integer
    • Activity_date_deadline boolean
    • Citizen_identification boolean
    • Followup_reminder_type string
    • Message_follower_ids_0 integer
    • Receipt_reminder_email boolean
    • Supplier_invoice_count integer
    • Unreconciled_aml_ids_0 integer
    • Unreconciled_aml_ids_1 integer
    • Activity_exception_icon boolean
    • Calendar_last_notif_ack Date & time
    • Commercial_company_name string
    • Commercial_partner_id_0 integer
    • Commercial_partner_id_1 string
    • Followup_responsible_id boolean
    • Contact_address_complete string
    • Has_unreconciled_entries boolean
    • Message_attachment_count integer
    • Property_payment_term_id boolean
    • Use_partner_credit_limit boolean
    • Followup_next_action_date boolean
    • Last_time_entries_checked boolean
    • Message_has_error_counter integer
    • My_activity_date_deadline boolean
    • Activity_calendar_event_id boolean
    • Message_main_attachment_id boolean
    • Message_needaction_counter integer
    • Online_partner_information boolean
    • Phone_sanitized_blacklisted boolean
    • Certifications_company_count integer
    • Property_account_position_id boolean
    • Property_product_pricelist_0 integer
    • Property_product_pricelist_1 string
    • Reminder_date_before_receipt integer
    • Activity_exception_decoration boolean
    • Property_account_payable_id_0 integer
    • Property_account_payable_id_1 string
    • Property_purchase_currency_id boolean
    • Property_account_receivable_id_0 integer
    • Property_account_receivable_id_1 string
    • Same_company_registry_partner_id boolean
    • Property_supplier_payment_term_id boolean
    • Duplicated_bank_account_partners_count integer
  • Pos Order
  • Invoices 40 columns
    • Id integer
    • State string
    • Quantity number
    • Move_id_0 integer
    • Move_id_1 string
    • Move_type string
    • Team_id_0 integer
    • Team_id_1 string
    • Price_total number
    • Account_id_0 integer
    • Account_id_1 string
    • Company_id_0 integer
    • Company_id_1 string
    • Country_id_0 integer
    • Country_id_1 string
    • Display_name Date & time
    • Invoice_date Date & time
    • Journal_id_0 integer
    • Journal_id_1 string
    • Partner_id_0 integer
    • Partner_id_1 string
    • Product_id_0 integer
    • Product_id_1 string
    • __last_update Date & time
    • Payment_state string
    • Price_average number
    • Price_subtotal number
    • Invoice_date_due Date & time
    • Product_uom_id_0 integer
    • Product_uom_id_1 string
    • Invoice_user_id_0 integer
    • Invoice_user_id_1 string
    • Product_categ_id_0 integer
    • Product_categ_id_1 string
    • Fiscal_position_id_0 integer
    • Fiscal_position_id_1 string
    • Company_currency_id_0 integer
    • Company_currency_id_1 string
    • Commercial_partner_id_0 integer
    • Commercial_partner_id_1 string
  • Products 101 columns
    • Id integer
    • Name string
    • Type string
    • Color integer
    • Active boolean
    • Volume number
    • Weight number
    • Barcode boolean
    • Sale_ok boolean
    • Priority string
    • Sequence integer
    • Uom_id_0 integer
    • Uom_id_1 string
    • Uom_name string
    • Image_128 boolean
    • Image_256 boolean
    • Image_512 boolean
    • Categ_id_0 integer
    • Categ_id_1 string
    • Company_id boolean
    • Image_1024 boolean
    • Image_1920 boolean
    • List_price number
    • Project_id boolean
    • Tax_string string
    • Taxes_id_0 integer
    • Write_date Date & time
    • Create_date Date & time
    • Description boolean
    • Has_message boolean
    • Purchase_ok boolean
    • Sales_count number
    • Uom_po_id_0 integer
    • Uom_po_id_1 string
    • Write_uid_0 integer
    • Write_uid_1 string
    • Create_uid_0 integer
    • Create_uid_1 string
    • Default_code boolean
    • Display_name string
    • Service_type string
    • __last_update Date & time
    • Currency_id_0 integer
    • Currency_id_1 string
    • Detailed_type string
    • Message_ids_0 integer
    • Activity_state boolean
    • Expense_policy string
    • Invoice_policy string
    • Sale_line_warn string
    • Service_policy string
    • Standard_price number
    • Product_tooltip string
    • Purchase_method string
    • Volume_uom_name string
    • Weight_uom_name string
    • Activity_summary boolean
    • Activity_type_id boolean
    • Activity_user_id boolean
    • Description_sale boolean
    • Planning_enabled boolean
    • Planning_role_id boolean
    • Service_tracking string
    • Message_has_error boolean
    • Activity_type_icon boolean
    • Cost_currency_id_0 integer
    • Cost_currency_id_1 string
    • Is_product_variant boolean
    • Message_needaction boolean
    • Purchase_line_warn string
    • Sale_line_warn_msg boolean
    • Message_is_follower boolean
    • Project_template_id boolean
    • Service_to_purchase boolean
    • Supplier_taxes_id_0 integer
    • Description_purchase boolean
    • Pricelist_item_count integer
    • Product_variant_id_0 integer
    • Product_variant_id_1 string
    • Message_has_sms_error boolean
    • Message_partner_ids_0 integer
    • Product_variant_count integer
    • Product_variant_ids_0 integer
    • Purchased_product_qty number
    • Activity_date_deadline boolean
    • Message_follower_ids_0 integer
    • Purchase_line_warn_msg boolean
    • Visible_expense_policy boolean
    • Activity_exception_icon boolean
    • Can_image_1024_be_zoomed boolean
    • Message_attachment_count integer
    • Visible_qty_configurator boolean
    • Message_has_error_counter integer
    • My_activity_date_deadline boolean
    • Activity_calendar_event_id boolean
    • Message_main_attachment_id boolean
    • Message_needaction_counter integer
    • Property_account_income_id boolean
    • Has_configurable_attributes boolean
    • Property_account_expense_id boolean
    • Activity_exception_decoration boolean
  • Payments
  • Projects
  • Users
  • Stock Move
  • Helpdesk Ticket
  • Mail Message
  • Journal 7 columns
    • Id integer
    • Name string
    • Asset_id boolean
    • Asset_id_0 integer
    • Asset_id_1 string
    • Write_date Date & time
    • Amount_total number
  • Journal Lines 5 columns
    • Id integer
    • Name string
    • Quantity number
    • Write_date Date & time
    • Price_total number
Show the other 71 tables
  • Product Variants 114 columns
    • Id integer
    • Code boolean
    • Name string
    • Type string
    • Color integer
    • Active boolean
    • Volume number
    • Weight number
    • Barcode boolean
    • Sale_ok boolean
    • Priority string
    • Sequence integer
    • Uom_id_0 integer
    • Uom_id_1 string
    • Uom_name string
    • Image_128 boolean
    • Image_256 boolean
    • Image_512 boolean
    • Lst_price number
    • Categ_id_0 integer
    • Categ_id_1 string
    • Company_id boolean
    • Image_1024 boolean
    • Image_1920 boolean
    • List_price number
    • Project_id boolean
    • Tax_string string
    • Taxes_id_0 integer
    • Write_date Date & time
    • Create_date Date & time
    • Description boolean
    • Has_message boolean
    • Partner_ref string
    • Price_extra number
    • Purchase_ok boolean
    • Sales_count number
    • Uom_po_id_0 integer
    • Uom_po_id_1 string
    • Write_uid_0 integer
    • Write_uid_1 string
    • Create_uid_0 integer
    • Create_uid_1 string
    • Default_code boolean
    • Display_name string
    • Service_type string
    • __last_update Date & time
    • Currency_id_0 integer
    • Currency_id_1 string
    • Detailed_type string
    • Message_ids_0 integer
    • Activity_state boolean
    • Expense_policy string
    • Invoice_policy string
    • Sale_line_warn string
    • Service_policy string
    • Standard_price number
    • Product_tooltip string
    • Purchase_method string
    • Volume_uom_name string
    • Weight_uom_name string
    • Activity_summary boolean
    • Activity_type_id boolean
    • Activity_user_id boolean
    • Description_sale boolean
    • Planning_enabled boolean
    • Planning_role_id boolean
    • Service_tracking string
    • Image_variant_128 boolean
    • Image_variant_256 boolean
    • Image_variant_512 boolean
    • Message_has_error boolean
    • Product_tmpl_id_0 integer
    • Product_tmpl_id_1 string
    • Activity_type_icon boolean
    • Cost_currency_id_0 integer
    • Cost_currency_id_1 string
    • Image_variant_1024 boolean
    • Image_variant_1920 boolean
    • Is_product_variant boolean
    • Message_needaction boolean
    • Purchase_line_warn string
    • Sale_line_warn_msg boolean
    • Combination_indices string
    • Message_is_follower boolean
    • Project_template_id boolean
    • Service_to_purchase boolean
    • Supplier_taxes_id_0 integer
    • Description_purchase boolean
    • Pricelist_item_count integer
    • Product_variant_id_0 integer
    • Product_variant_id_1 string
    • Message_has_sms_error boolean
    • Message_partner_ids_0 integer
    • Product_variant_count integer
    • Product_variant_ids_0 integer
    • Purchased_product_qty number
    • Activity_date_deadline boolean
    • Message_follower_ids_0 integer
    • Purchase_line_warn_msg boolean
    • Visible_expense_policy boolean
    • Activity_exception_icon boolean
    • Can_image_1024_be_zoomed boolean
    • Message_attachment_count integer
    • Visible_qty_configurator boolean
    • Message_has_error_counter integer
    • My_activity_date_deadline boolean
    • Activity_calendar_event_id boolean
    • Message_main_attachment_id boolean
    • Message_needaction_counter integer
    • Property_account_income_id boolean
    • Has_configurable_attributes boolean
    • Property_account_expense_id boolean
    • Activity_exception_decoration boolean
    • Can_image_variant_1024_be_zoomed boolean
  • Purchase Orders 96 columns
    • Id integer
    • Name string
    • Notes boolean
    • State string
    • Origin boolean
    • Priority string
    • User_id_0 integer
    • User_id_1 string
    • Access_url string
    • Amount_tax number
    • Date_order Date & time
    • Product_id boolean
    • Write_date Date & time
    • Create_date Date & time
    • Has_message boolean
    • Incoterm_id boolean
    • Partner_ref boolean
    • Write_uid_0 integer
    • Write_uid_1 string
    • Access_token boolean
    • Amount_total number
    • Company_id_0 integer
    • Company_id_1 string
    • Country_code string
    • Create_uid_0 integer
    • Create_uid_1 string
    • Date_approve boolean
    • Date_planned Date & time
    • Display_name string
    • Order_line_0 integer
    • Order_line_1 integer
    • Partner_id_0 integer
    • Partner_id_1 string
    • Product_id_0 integer
    • Product_id_1 string
    • __last_update Date & time
    • Currency_id_0 integer
    • Currency_id_1 string
    • Currency_rate number
    • Invoice_count integer
    • Message_ids_0 integer
    • Message_ids_1 integer
    • Message_ids_2 integer
    • Message_ids_3 integer
    • Access_warning string
    • Activity_state boolean
    • Amount_untaxed number
    • Invoice_status string
    • Dest_address_id boolean
    • Payment_term_id boolean
    • Activity_summary boolean
    • Activity_type_id boolean
    • Activity_user_id boolean
    • Sale_order_count integer
    • Tax_country_id_0 integer
    • Tax_country_id_1 string
    • Message_has_error boolean
    • Activity_type_icon boolean
    • Fiscal_position_id boolean
    • Message_needaction boolean
    • Date_calendar_start Date & time
    • Message_is_follower boolean
    • Fiscal_position_id_0 integer
    • Fiscal_position_id_1 string
    • Message_has_sms_error boolean
    • Message_partner_ids_0 integer
    • Activity_date_deadline boolean
    • Message_follower_ids_0 integer
    • Receipt_reminder_email boolean
    • Activity_exception_icon boolean
    • Mail_reminder_confirmed boolean
    • Tax_totals_amount_total number
    • Mail_reception_confirmed boolean
    • Message_attachment_count integer
    • Message_has_error_counter integer
    • My_activity_date_deadline boolean
    • Tax_totals_amount_untaxed number
    • Activity_calendar_event_id boolean
    • Message_main_attachment_id boolean
    • Message_needaction_counter integer
    • Tax_totals_display_tax_base boolean
    • Tax_totals_subtotals_0_name string
    • Reminder_date_before_receipt integer
    • Tax_totals_subtotals_order_0 string
    • Activity_exception_decoration boolean
    • Tax_totals_subtotals_0_amount number
    • Tax_totals_formatted_amount_total string
    • Tax_totals_formatted_amount_untaxed string
    • Tax_totals_subtotals_0_formatted_amount string
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_group_key integer
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_tax_group_id integer
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_tax_group_name string
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_tax_group_amount number
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_tax_group_base_amount number
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_formatted_tax_group_amount string
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_formatted_tax_group_base_amount string
  • Sales Orders 123 columns
    • Id integer
    • Name string
    • Note string
    • State string
    • Origin boolean
    • Medium_id boolean
    • Reference boolean
    • Signature boolean
    • Signed_by boolean
    • Signed_on boolean
    • Source_id boolean
    • Team_id_0 integer
    • Team_id_1 string
    • Type_name string
    • User_id_0 integer
    • User_id_1 string
    • Access_url string
    • Amount_tax number
    • Date_order Date & time
    • Is_expired boolean
    • Project_id boolean
    • Terms_type string
    • Write_date Date & time
    • Campaign_id boolean
    • Create_date Date & time
    • Has_message boolean
    • Tasks_count integer
    • Write_uid_0 integer
    • Write_uid_1 string
    • Access_token boolean
    • Amount_total number
    • Company_id_0 integer
    • Company_id_1 string
    • Country_code string
    • Create_uid_0 integer
    • Create_uid_1 string
    • Display_name string
    • Order_line_0 integer
    • Partner_id_0 integer
    • Partner_id_1 string
    • __last_update Date & time
    • Currency_id_0 integer
    • Currency_id_1 string
    • Currency_rate number
    • Expected_date Date & time
    • Invoice_count integer
    • Invoice_ids_0 integer
    • Message_ids_0 integer
    • Message_ids_1 integer
    • Message_ids_2 integer
    • Project_count integer
    • Validity_date boolean
    • Access_warning string
    • Activity_state boolean
    • Amount_untaxed number
    • Invoice_status string
    • Opportunity_id boolean
    • Pricelist_id_0 integer
    • Pricelist_id_1 string
    • Commitment_date boolean
    • Milestone_count integer
    • Payment_term_id boolean
    • Require_payment boolean
    • Visible_project boolean
    • Activity_summary boolean
    • Activity_type_id boolean
    • Activity_user_id boolean
    • Client_order_ref boolean
    • Show_update_fpos boolean
    • Tax_country_id_0 integer
    • Tax_country_id_1 string
    • Message_has_error boolean
    • Require_signature boolean
    • Activity_type_icon boolean
    • Message_needaction boolean
    • Amount_undiscounted number
    • Analytic_account_id boolean
    • Message_is_follower boolean
    • Fiscal_position_id_0 integer
    • Fiscal_position_id_1 string
    • Is_product_milestone boolean
    • Partner_invoice_id_0 integer
    • Partner_invoice_id_1 string
    • Purchase_order_count integer
    • Message_has_sms_error boolean
    • Message_partner_ids_0 integer
    • Message_partner_ids_1 integer
    • Partner_shipping_id_0 integer
    • Partner_shipping_id_1 string
    • Planning_initial_date boolean
    • Show_update_pricelist boolean
    • Activity_date_deadline boolean
    • Message_follower_ids_0 integer
    • Message_follower_ids_1 integer
    • Partner_credit_warning string
    • Planning_hours_planned number
    • Planning_hours_to_plan number
    • Sale_order_template_id boolean
    • Activity_exception_icon boolean
    • Tax_totals_amount_total number
    • Message_attachment_count integer
    • Message_has_error_counter integer
    • My_activity_date_deadline boolean
    • Tax_totals_amount_untaxed number
    • Activity_calendar_event_id boolean
    • Message_main_attachment_id boolean
    • Message_needaction_counter integer
    • Planning_first_sale_line_id boolean
    • Tax_totals_display_tax_base boolean
    • Tax_totals_subtotals_0_name string
    • Tax_totals_subtotals_order_0 string
    • Activity_exception_decoration boolean
    • Tax_totals_subtotals_0_amount number
    • Tax_totals_formatted_amount_total string
    • Tax_totals_formatted_amount_untaxed string
    • Tax_totals_subtotals_0_formatted_amount string
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_group_key integer
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_tax_group_id integer
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_tax_group_name string
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_tax_group_amount number
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_tax_group_base_amount number
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_formatted_tax_group_amount string
    • Tax_totals_groups_by_subtotal_Untaxed Amount_0_formatted_tax_group_base_amount string
  • Account Account
  • Account Account Tag
  • Account Analytic Account
  • Account Analytic Line
  • Account Asset
  • Account Bank Statement
  • Account Bank Statement Line
  • Account Fiscal Position
  • Account Group
  • Account Journal
  • Account Move
  • Account Move Line
  • Account Payment
  • Accounts
  • Calendar Event
  • Crm Lead
  • Invoice Lines
  • Invoice Lines All Move Types
  • Ir Model
  • Ir Model Fields
  • Journals
  • Mail Tracking Value
  • Models
  • Partner Categories
  • Partners
  • Payment Method Lines
  • Pos Order Line
  • Pos Order Lines
  • Pos Orders
  • Pos Payment
  • Pos Payments
  • Product Categories
  • Product Category
  • Product Product
  • Product Template
  • Project Project
  • Project Stages
  • Project Task
  • Project Task Type
  • Purchase Order
  • Purchase Order Line
  • Purchase Order Lines
  • Res Bank
  • Res Country
  • Res Groups
  • Res Partner
  • Res Partner Bank
  • Res Partner Category
  • Res Users
  • Sale Order
  • Sale Order Line
  • Sales Order Lines
  • Statements
  • Stock Location
  • Stock Locations
  • Stock Move Line
  • Stock Move Lines
  • Stock Moves
  • Stock Picking
  • Stock Picking Type
  • Stock Picking Types
  • Stock Pickings
  • Stock Production Lot
  • Stock Quant
  • Stock Quantities
  • Stock Valuation Layer
  • Stock Valuation Layers
  • Tasks

Write-back actions available

Alongside reading data, these actions let you create, update or manage information in Odoo. The exact actions depend on your connection and permissions; some require a separate write-back connection.

Create 24

  • Add sale order
    Example input
    noteteam_iddate_orderorder_linepartner_id +5
  • Add invoice
    Example input
    refpartner_idinvoice_datepayment_stateinvoice_origin +1
  • Add product
    Example input
    name
  • Add project task
    Example input
    payloadadditional_params

Update 17

  • Update sale order
  • Update invoice
    Example input
    idstatepayment_state
  • Update product
    Example input
    idname
  • Update helpdesk ticket
    Example input
    idnamepartner_iddescription

Delete 1

  • Delete product

33 more write-back actions are available for Odoo. We show a representative selection here to keep the overview useful.

Need another table, field or write-back action? Tell us what you need. We can check the available options or help extend the connector.

Your data lands in a warehouse. Your BI tools read from it.

You keep the reporting tool you already have. We connect it to the warehouse where your Odoo data lives.

Power BI logo
Power BI Microsoft
Microsoft Fabric logo
Fabric Microsoft
Snowflake logo
Snowflake Data warehouse
Google BigQuery logo
BigQuery Google
Tableau logo
Tableau Visualisation
Microsoft Excel logo
Excel Sheets & pivots

From Odoo to answers in three steps.

01

Connect securely

OAuth authentication. Read-only by default. We sign a DPA and your admin keeps the keys. Read our DPA

02

Land in your warehouse

Data flows into your warehouse on your schedule. Near real time or nightly, your call. You own the data.

03

Reporting, automation, AI

We build the first dashboard, workflow or AI feature with you, then hand over the keys. Or we stay on for ongoing delivery.

Pick the track that fits how you work.

Track 01

Self-serve

We set up the foundation. Your team builds on top.

  • Odoo connector configured and running
  • Warehouse set up in your cloud account
  • Clean access for your Power BI, Fabric or Tableau team
  • Documentation on what's in the data model
  • Sync monitoring so you're warned before reports break

Best fit Teams that already have a BI analyst or data engineer and want to own the build.

Track 02

Done for you

We build the whole thing, end to end.

  • Everything in Self-serve
  • Dashboards built to the questions your team actually asks
  • Automations between your systems
  • AI workflows scoped to real tasks your team runs
  • Custom apps where a dashboard does not cut it
  • Ongoing delivery at a pace that fits your team

Best fit Teams without in-house BI or dev capacity. You tell us what you need and we deliver it.

Frequently asked questions.

Who owns the data?

You do. It lands in your warehouse, on your cloud account. We don't resell or aggregate it. If you stop working with us, the warehouse stays yours and keeps running.

How fresh is the data?

Near real time for most operational systems. For heavier sources we schedule hourly or nightly. You pick based on what the reports need.

Do I need a warehouse already?

No. If you don't have one, we help you pick one and set it up as part of the first delivery. Common starting points are Snowflake, Microsoft Fabric, or a small Postgres start.

Does the sync cover multi-company Odoo instances?

Yes. We scope access by company, respect the record-rules set up in Odoo, and can fan out or consolidate at warehouse level. Common setup is one warehouse schema per Odoo company, with a consolidated view on top.

Which Odoo versions do you connect to?

Odoo 14 and later, both Community and Enterprise, on Odoo.sh and on self-hosted PostgreSQL. For older versions we work via the standard XML-RPC interface where the newer JSON-RPC is not available.

GDPR-compliant
Data stays in the EU
You own the warehouse

A first deliverable live in four to six weeks.

We review your Odoo setup and the systems around it. Together we pick the first thing worth building.