A build-to-order Frappe app that exposes governed ERPNext data to Tableau and Looker Studio through a Web Data Connector and community connector, with curated extracts and incremental refresh. ECOSIRE scopes, builds, installs, and supports it. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $299.00 USD; request a quote for a scoped proposal.

A build-to-order Frappe app that exposes governed ERPNext data to Tableau and Looker Studio through a Web Data Connector and community connector, with curated extracts and incremental refresh. ECOSIRE scopes, builds, installs, and supports it.
Aucun paiement maintenant. Ceci envoie une demande de devis à notre équipe — nous vous recontacterons par e-mail avec les tarifs et les prochaines étapes.
Teams that run ERPNext quickly outgrow the built-in report views, Query Reports, and the dashboard charts on the Frappe desk. Analysts want ERPNext data inside the BI tools they already standardize on — Tableau and Looker Studio — where they can blend it with marketing, finance, and web data and share governed dashboards. The native path forces them into fragile CSV exports, hand-maintained ODBC connections straight at MariaDB, or one-off Python scripts that ignore ERPNext's permission model. None of those scale, and hitting the database directly bypasses role permissions, user permissions, and the multi-company boundaries ERPNext enforces at the application layer.
Tableau Web Data Connector (WDC) that authenticates to ERPNext and lists curated extracts, no direct MariaDB access
Looker Studio community connector (Apps Script) with getConfig/getSchema/getData mapped to whitelisted ERPNext methods
Report Extract DocType to define each dataset: source DocType or Query Report, selected fields, filters, and allowed role profiles
All data served through @frappe.whitelist() methods over the Frappe REST API so frappe.has_permission and user permissions are enforced per request
Incremental refresh driven by a configurable watermark field (modified / posting date) — pulls only changed rows since last sync
scheduler_events cron job that pre-materializes heavy extracts into a reporting table and maintains per-extract sync state
ECOSIRE builds a proper Frappe app — its own module, DocTypes, and hooks.py wiring — that publishes ERPNext data to Tableau and Looker Studio through governed, read-only endpoints. On the Tableau side we ship a Web Data Connector (WDC) that authenticates against ERPNext and pulls from curated extract definitions rather than raw tables. On the Looker Studio side we deliver a community connector (Apps Script) whose getSchema and getData map to the same whitelisted ERPNext methods. Every extract is a named Report Extract DocType you configure in the desk: which source (a DocType, a Query Report, or a curated SQL view we author), which fields, which filters, and which role profiles may read it. The connector calls @frappe.whitelist() methods over the Frappe REST API, so frappe.has_permission and user permissions are honored on every request — Tableau and Looker Studio only ever see rows the connecting service account is actually entitled to.
Refresh is incremental by design. Each extract declares a watermark field (typically modified, or a posting/transaction date), and the connector requests only rows changed since the last successful pull, so a nightly Tableau extract refresh or a Looker Studio cache warm doesn't re-scan millions of rows. A scheduler_events hook maintains lightweight sync state and can pre-materialize heavier extracts into a reporting table on a cron cadence, while doc_events in hooks.py (on_update/on_submit) keep near-real-time extracts current for the DocTypes you flag. Pagination, rate limiting, and typed field metadata (so Tableau sees dates as dates and currency as numbers) are handled in the connector layer, not left to the analyst.
Because this is build-to-order, nothing is pre-listed for instant download. You start with a short scoping call; we confirm the DocTypes, reports, refresh windows, permission mapping, and your Frappe/ERPNext version (v15 or v16 supported). We then build against a staging bench, validate through UAT, and install on your instance. Typical delivery is 2-4 weeks from confirmed scope, depending on how many extracts and how much curated modeling you need. You receive the installable app source, the Looker Studio connector, documentation, and a support window — and the git repository is handed over so you own what we build.
Standardizes reporting on Tableau or Looker Studio and needs ERPNext sales, finance, and inventory data flowing in on a reliable incremental schedule without maintaining brittle CSV exports or raw database connections.
Owns the Frappe bench and is accountable for data governance. Wants BI access that honors role profiles, user permissions, and multi-company boundaries, with an auditable, revocable integration user rather than a direct DB login.
Lives in dashboards blending ERPNext GL, AR/AP, and stock figures with external data. Needs trustworthy, correctly-typed extracts (currency as numbers, dates as dates) that reconcile to the desk reports.
Evaluates whether to buy or build the pipeline. Wants a documented, source-available Frappe app they own via git handover, on supported v15/v16, instead of an unmaintained script or an opaque marketplace add-on.
Achetez la licence sur ecosire.com et téléchargez le ZIP de l'application ERPNext Tableau / Looker Studio Connector depuis le tableau de bord de votre compte.
Extrayez le ZIP dans le dossier d'applications de votre banc ou exécutez « bench get-app » avec le chemin d'accès à l'application extraite.
Exécutez `bench --site SITE_NAME install-app APP_NAME` suivi de `bench migrate` pour installer ERPNext Tableau / Looker Studio Connector et appliquer son schéma.
Ouvrez les paramètres de licence ECOSIRE sur votre site et activez votre clé de licence. Nécessite les applications gratuites ecosire_connect et ecosire_license_client.
| Critère | ÉCOSIRE | Construction personnalisée | Concurrent | Odoo natif |
|---|---|---|---|---|
| Data governance / permissions | Enforced via whitelisted methods, role profile, user permissions | Depends on the developer; often bypassed with raw DB access | Varies; many read tables directly and ignore permissions | |
| Tableau connectivity | Purpose-built Web Data Connector with curated extracts | Hand-built WDC or ODBC, maintained in-house | Sometimes a generic REST WDC, rarely curated | |
| Looker Studio connectivity | Dedicated community connector (Apps Script) | DIY Apps Script you build and maintain | Uncommon; usually Tableau-only | |
| Incremental refresh | Watermark-based, only changed rows, scheduler-backed | Possible but must be designed and tested by you | Often full re-pull each run | |
| Version support | Built and tested for v15 and v16 | Whatever you target and maintain | May lag current ERPNext releases | |
| Ownership | Full source plus git repo handover | You own it, but you also build it | Often closed-source or licensed | |
| Delivery & support | 2-4 weeks build, UAT, training, support window | Your team's timeline and backlog | Instant install but self-support | |
| Total effort for your team | Scoping call, then we build and install | High — design, build, secure, maintain | Low upfront, high when it breaks or lags |
This is build-to-order, so there is no instant download. After a short scoping call to confirm your DocTypes, reports, refresh windows, and permission mapping, typical delivery is 2-4 weeks from confirmed scope. Larger sets of extracts or heavy curated modeling can extend that, and we tell you the estimate before you commit.
It never touches MariaDB directly. Every extract is served through @frappe.whitelist() methods over the Frappe REST API, so frappe.has_permission, user permissions, and multi-company boundaries are enforced on each request. BI tools connect as a scoped integration user and only receive rows that user is entitled to see.
Each extract declares a watermark field, usually modified or a posting/transaction date. On each refresh the connector requests only rows changed since the last successful sync, so scheduled Tableau extract refreshes and Looker Studio cache warms don't re-scan the full table. Heavier extracts can be pre-materialized on a scheduler cron for speed.
We build and test against Frappe/ERPNext v15 and v16, packaged as a standard app installed via bench get-app and bench install-app. We confirm your exact version during scoping and target that branch.
Every engagement includes a post-go-live support window for bug fixes and configuration questions. Because you receive the full source and the git repository, your team can maintain and extend the app; we also offer ongoing support and version-upgrade work (for example v15 to v16) as a separate arrangement.
Yes. Beyond straight DocType extracts, we can author curated Query Reports or Server Scripts as governed read-only views, so Tableau and Looker Studio consume pre-joined, pre-aggregated datasets instead of you rebuilding the logic in the BI layer.
You own it. We install on your instance (self-hosted bench or Frappe Cloud private bench) and hand over the git repository. Nothing routes your data through an ECOSIRE-hosted service; the connector talks directly between your BI tool and your ERPNext.
A build-to-order Frappe app that exposes governed ERPNext data to Tableau and Looker Studio through a Web Data Connector and community connector, with curated extracts and incremental refresh. ECOSIRE scopes, builds, installs, and supports it.