| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 952 |
| Technical Name |
flexigo_odoo_to_bigquery_free_elt_starter |
| License | LGPL-3 |
| Website | https://flexigotech.com |
| Versions | 17.0 18.0 19.0 |
Flexigo Odoo to BigQuery Free ELT Starter
Export Odoo data to Google BigQuery using free load jobs. No streaming charges, no data surprises.
The Challenge
BigQuery is powerful for analytics, but streaming inserts charge per row. Data warehouse costs spiral when you export Odoo records continuously. You need predictable, transparent pricing.
Our Solution
This module uses BigQuery's free load-job ingestion path. Export terabytes of Odoo data with zero per-row charges. Pay only for storage and queries—exactly what you use.
Core Capabilities
Free Load Ingestion
Load jobs (default path) incur zero per-row charges. You pay only for storage and queries.
Flexible Sync Modes
Full refresh or incremental (watermark-based) exports. Choose per-model. Run on a schedule or on-demand.
Secure Credentials
Service account files, pasted JSON, or Application Default Credentials. All encrypted at rest.
Data Residency
Specify EU, US, or any BigQuery region. Meet compliance requirements for sensitive jurisdictions.
Smart Schema Evolution
Automatically adds new columns as Odoo schema evolves. No manual DDL needed.
Detailed Audit Logs
Every sync creates audit trails. Know exactly what moved, when, and if it failed.
What Gets Exported
| Feature | Description |
|---|---|
| Model Selection | Choose exactly which Odoo data to export. Auto-excludes passwords and secrets. |
| Full Refresh Mode | Exports entire models into new BigQuery tables (truncate-load). Ideal for master data. |
| Incremental Mode | Exports only new or modified records since last sync (append-load). Efficient for large tables. |
| Field Filtering | Hide sensitive fields. Auto-excluded: passwords, secrets, tokens, API keys. |
| Type Mapping | Odoo fields automatically mapped to BigQuery types (STRING, INT64, BOOL, JSON, etc.) |
| Multi-Company Isolation | Each company's exports are separate. Record rules enforce access control. |
| Batch Processing | Configurable batch size (100‑50,000) for large tables without memory bloat. |
Screenshots
Multi-Language Video Walkthrough
English â 2-minute walkthrough
Español â walkthrough de 2 minutos
Deutsch â 2-Minuten-Rundgang
Who Should Use This?
Data Analytics Teams
Export Odoo transaction data to BigQuery for real-time dashboarding, BI, and predictive analytics without paying streaming charges.
Growing Businesses
Control data warehouse costs as you scale. Free load ingestion means costs stay proportional to storage and compute, not row volume.
Compliance & Privacy Teams
Selective field export, data residency controls, and field-level audit trails enable GDPR and regional data governance.
Multi-Tenant Platforms
Multi-company isolation and record rules ensure tenant data never leaks. Each tenant's export is separate and secure.
Compatibility & Requirements
Odoo Version: 19.0
Python: 3.7+ with google-cloud-bigquery installed
Google Cloud: Project with BigQuery API enabled
Service Account: Needs roles/bigquery.jobUser and roles/bigquery.dataEditor
Supported Auth: Service account JSON, ADC (Application Default Credentials), or pasted key
License: LGPL-3 (open source, free to use)
Transparent Pricing Model
What's Free
- Ingestion via load jobs (zero per-row charges)
- Watermark queries for incremental syncs (minimal cost)
- Module download and updates (LGPL-3)
What You Pay (Google Cloud)
- BigQuery table storage (typical: 1‑2 cents per million rows ingested)
- Queries you run on exported data
- Optional streaming (if enabled, not recommended)
Frequently Asked Questions
Why free load jobs and not streaming?
Streaming inserts charge per row. Load jobs cost zero per ingestion. For most Odoo syncs, load jobs are faster and cheaper. Streaming is only needed for sub-second real-time, which Odoo doesn't require.
How often can I sync?
As often as you want. Each sync is scheduled via cron, configurable per export. Typical: every 15 minutes. No per-run costs—only storage and eventual queries.
Does it support incremental exports?
Yes. Watermark-based incremental mode tracks the last sync timestamp and exports only new/modified records. Ideal for large tables. Reduces query cost and bandwidth.
Is my data secure?
Credentials are encrypted at rest in Odoo. Service account keys use Google's recommended IAM roles. Record rules enforce multi-company isolation. Sensitive fields can be excluded from export.
Does it handle GDPR and data residency?
Yes. Configure data residency to EU, US, or any BigQuery region. Field-level audit logging tracks what was exported and when. Selective field export enables minimal data processing.
Ready to Export Your Odoo Data?
Start with the free LGPL-3 module. Install, configure your BigQuery project, and begin syncing immediately. No credit card required.
For support and documentation, visit flexigotech.com
Please log in to comment on this module