Analytics & BI · Odoo 17

Microsoft Fabric Connector for Odoo 17

Move Odoo 17 data into Microsoft Fabric through secure, paginated REST exports built for large datasets — full and incremental loads with job monitoring.

Microsoft Fabric Connector for Odoo 17 — Odoo ERP integration by KSROlabs

What is the Microsoft Fabric Connector for Odoo 17?

The Microsoft Fabric Connector for Odoo 17 prepares selected Odoo model data for Microsoft Fabric. Administrators create export profiles, choose fields and filters, define full or incremental sync behaviour, and run exports manually or on schedule. Odoo builds compressed, paginated export files and exposes them through token-protected REST endpoints; Microsoft Fabric reads them with a standard REST source, follows the next-page URL, and loads the data into a Lakehouse or Warehouse — no direct database access, no custom scripts, no fragile one-off integrations.

What's included

🔁

Full & Incremental Exports

Rebuild Fabric tables from complete Odoo snapshots, or load only changed records using write_date watermark logic with id-based upserts in Fabric.

📚

Built for Large Tables

Keyset pagination, compressed page files, progress checkpoints, and request throttling move large Odoo datasets page by page — validated with a 1.2 million row export benchmark.

🔒

Secure Token Access

Fabric reads token-protected REST endpoints — no direct PostgreSQL access, no database credentials leaving your Odoo infrastructure. Tokens are generated and revoked from Odoo.

🎯

Admin-Controlled Export Profiles

Choose exactly which Odoo models, fields, and filtered rows Fabric can read. Set sync mode, schedule, page size, and retention per profile from the Odoo UI.

📊

Job Dashboard & Logs

Every export records status, row counts, page counts, duration, errors, and detailed logs — with retry actions and automatic cleanup of expired files.

🧩

Fabric REST Source Ready

Responses put rows under $.data with a next-page URL under $.next, so a Fabric Copy Job or Data Pipeline Copy Activity pages through the data with standard configuration.

⏱️

Scheduling & Concurrency Control

Run exports manually or on daily/weekly schedules in off-hours windows, and cap simultaneous Fabric page requests to protect your Odoo server.

🗄️

Lakehouse & Warehouse Destinations

Load full exports with overwrite or staging-and-merge, and incremental runs with upsert by id — into whichever Fabric destination your analytics team uses.

Odoo to Microsoft Fabric

A controlled REST export layer between Odoo 17 and Microsoft Fabric

Odoo teams often rely on manual CSV exports, fragile scripts, or direct database access for analytics. The KSROlabs Microsoft Fabric Connector for Odoo 17 gives administrators a governed way to expose selected Odoo models to Fabric through token-protected REST endpoints.

Fabric REST Source

Built for full exports, incremental loads, and large Odoo tables

Fabric pulls page-based responses from Odoo, reads records from $.data, follows $.next, and can upsert changed rows using write_date as the incremental watermark and id as the merge key.

How the Odoo to Fabric connector works

A production workflow for exporting Odoo data into Microsoft Fabric without direct PostgreSQL access.

Configure connector

Install the Odoo 17 module, confirm the public Odoo URL, and generate a bearer token for Fabric.

Create export profiles

Define one profile per Odoo model with selected fields, filters, sync mode, schedule, and page size.

Odoo builds pages

Odoo queues the job, reads selected stored fields, writes compressed page files, and records progress.

Fabric follows next

Fabric uses a REST source, reads $.data, and follows AbsoluteUrl = $.next until all pages are loaded.

Monitor and retry

Admins review status, row counts, page counts, duration, errors, and logs from the Odoo job dashboard.

Designed for Microsoft Fabric REST pagination

Configure Fabric Copy Job or Data Pipeline Copy Activity with row path $.data and pagination rule AbsoluteUrl = $.next. Odoo prepares the pages; Fabric follows the next URL until the export is complete.

{
  "data": [{"id": 1, "name": "Example"}],
  "has_more": true,
  "next": "https://odoo.example.com/fabric/v2/jobs/<token>/pages/2"
}

Odoo to Microsoft Fabric use cases

Common analytics and data warehouse scenarios for Odoo customers using Microsoft Fabric.

Finance analytics from Odoo accounting tables in Microsoft Fabric.

Sales and CRM reporting in Fabric Lakehouse, Warehouse, or Power BI.

Inventory, procurement, and operational dashboards from Odoo data.

Odoo data warehouse ingestion without direct PostgreSQL access.

Periodic Odoo reconciliation and controlled full refreshes in Fabric.

Large Odoo table exports with page-based loading and job visibility.

Technical specifications

Key implementation details for Odoo administrators and Microsoft Fabric teams.

Odoo version

Odoo 17

Fabric connection

REST source in Copy Job or Data Pipeline Copy Activity

Authentication

Bearer token

Sync modes

Full export and incremental changed-row loading

Pagination

next URL in response body

Row path

$.data

Incremental watermark

write_date

Merge key

id

Large data strategy

Keyset pagination, compressed pages, checkpointed jobs

Scheduling

Manual, daily, and weekly

Monitoring

Job dashboard, errors, row counts, page counts, and logs

Validated for large Odoo exports

The connector was validated through direct REST/API testing, including authentication, pagination, incremental logic, error handling, logging, concurrency limits, and a 1.2 million row export benchmark.

Ready to connect Odoo?

Install the Microsoft Fabric Connector for Odoo 17 from the Odoo App Store — pricing available on the listing. Free setup support included with every purchase.

Frequently asked questions

Common questions about the Microsoft Fabric Connector for Odoo 17.

What is the Microsoft Fabric Connector for Odoo 17?

It is an Odoo 17 module that turns Odoo into a controlled REST data source for Microsoft Fabric. Administrators create export profiles for the models they want to expose, select fields and filters, and choose full or incremental sync. Odoo builds compressed, paginated export files and serves them through token-protected REST endpoints; Fabric pulls the data with a standard REST source and loads it into a Lakehouse or Warehouse.

Is this an official Microsoft connector?

No. It is an Odoo module that exposes Fabric-compatible REST APIs. Microsoft Fabric connects to it using its standard REST source capabilities in a Copy Job or Data Pipeline Copy Activity.

Does Fabric need direct access to the Odoo database?

No. Fabric reads token-protected REST endpoints exposed by Odoo. Database credentials remain inside the Odoo infrastructure, and administrators control exactly which models and fields are exposed through export profiles.

Which Odoo version is supported?

This connector is built for Odoo 17. Contact KSROlabs to discuss other Odoo versions — they would require separate migration and testing.

Does it support full exports?

Yes. Odoo creates ready export jobs as compressed, paginated page files. Fabric starts from the job’s first page URL and follows the next field until all pages are loaded — ideal for first-time loads, dimension tables, and periodic reconciliation.

Does it support incremental sync?

Yes. Fabric calls the live incremental endpoint with an updated_after watermark; Odoo returns rows whose write_date is newer, and Fabric upserts them by id. After a successful run, Fabric stores the returned max_write_date as the next watermark. This is scheduled or on-demand loading, not real-time streaming.

Does it sync deleted records?

Not as delete events. Incremental export captures inserted and updated records. If delete reconciliation is required, use periodic full refreshes or a separate reconciliation process.

Can it handle large Odoo tables?

Yes — it is designed for large datasets using keyset pagination, selected stored fields, compressed NDJSON page files, progress checkpoints, retention cleanup, and request throttling. It was validated with a 1.2 million row export benchmark. Actual performance depends on table width, selected fields, indexes, disk speed, and Odoo server sizing.

What Fabric configuration is required?

Use a REST source in a Copy Job or Data Pipeline Copy Activity with row path $.data and pagination rule AbsoluteUrl = $.next, stopping when next is null or has_more is false. For full loads, overwrite the target or use staging plus merge; for incremental loads, upsert by id. No custom code is required, but the row path and pagination rule must be configured.

What happens if an export fails?

The Odoo job moves to Error status, stores the error details, and writes job logs. Failed jobs can be reviewed from the job dashboard and retried when appropriate. Queued and running jobs are protected against accidental deletion.

Can I choose which fields are exported?

Yes. Each export profile selects the model, the stored fields to include, and optional domain filters, plus sync mode, schedule, and rows per page. The connector exports stored scalar fields — not every computed or relational field.

Is this a two-way sync?

No. The connector exports Odoo data to Microsoft Fabric. It does not write Fabric data back into Odoo, and it is not a real-time transactional synchronisation tool.

You may also need

Other KSROlabs modules that pair well with Microsoft Fabric Connector for Odoo 17.

Power BI

Power BI Connector

Connect Odoo to Power BI with enterprise-grade Azure authentication.

Learn more →
BigQuery

BigQuery Connector

Sync Odoo data to Google BigQuery with incremental CDC and automated scheduling.

Learn more →
SQL / Analytics

SQL Explorer Pro

Advanced SQL query builder, data visualisation, and export for Odoo.

Learn more →

Explore all KSROlabs modules

Eleven production-grade Odoo integrations for AI, analytics, storage, and commerce.

View all modules →