Odoo integrations and apps: configure first, build last
A decision page, not a catalog. When a standard Odoo module is enough, when an Odoo App Store app is the right call, and when a custom connector earns the maintenance it asks of you — with the Odoo integrations we have delivered, each linked to its case study.
Configure standard Odoo first. Use Studio for fields, views, reports and rules. Take an app from the Odoo App Store only when you can name its maintainer and its version coverage. Write a custom module only for behavior Odoo does not have. Each step down adds something you carry at the next upgrade.
One module. EZlytix Analytics Solution is on the Odoo App Store for Odoo 12.0 under LGPL-3, technical name bv_ezlytix_report. It is the only app under the Brainvire Infotech author name, and we will not call that a portfolio.
Small implementations run 8 to 12 weeks, mid-market 12 to 24 weeks, and multi-entity enterprise rollouts 6 to 12 months. Version upgrades take 3 to 8 weeks. A connector is scoped inside the program it belongs to, not bolted on afterwards. Those are Brainvire’s planning figures, not Odoo’s.
An Odoo functional consultant, a technical consultant who owns the module and its tests, a data lead for whatever is being synchronized, and a solution architect. On your side, the person who owns the process the integration touches and can decide what the system of record is.
/ Four routes, not one
How do you add a capability to Odoo?
Four ways, in the order we try them: lightest to carry first. The order matters more than any one of them.
Configure what Odoo already ships
Most requirements are settings, not software. Multi-company, fiscal localization, carrier setup and the marketplace connectors Odoo maintains are configuration. The upgrade carries them.
Studio, for fields and rules
Studio customizes Odoo without coding knowledge: fields, views, models, automation rules, webhooks, PDF reports, approval and security rules. Stored as data, reviewed at each upgrade.
A third-party app from the Odoo App Store
Somebody else’s module, installed into your database. It brings its dependencies with it and needs a build for whichever Odoo version you move to next. Vet it before production.
A custom module we build with you
Code in its own repository, dependencies in a manifest, tests that run on install. Justified when the behavior does not exist in Odoo and no app covers it, and made installable on every new version.




Trusted by enterprise Odoo teams worldwide












/ The decision, row by row
Configure, Studio, an app, or a custom build?
Ten requirements we are asked for, and where each belongs. Odoo publishes the reference for installing and removing apps and for Studio; building a module that survives an upgrade is Odoo customization.
| What you need | Where it belongs | What you take on |
|---|---|---|
| A new field, a view or a PDF layout | Odoo Studio | Stored as data, so they travel with a standard upgrade and are then checked against the new views. Odoo documents what Studio can change. |
| A second company, currency or tax jurisdiction | Standard configuration | Nothing extra to maintain. Multi-company, multi-currency and fiscal localization are settings, and the upgrade carries them. |
| Amazon marketplace orders | The Amazon Connector Odoo ships | It syncs confirmed FBA and FBM orders. Odoo states it is for sales-order data; disputes and refunds stay in Seller Central. |
| Carrier labels and tracking for UPS, FedEx or DHL | Standard configuration | Odoo’s third-party shipper setup is credentials and per-carrier options. No code, nothing to rebuild. |
| Reporting on data Odoo already holds | Standard reporting first | List, pivot and graph views give most of that insight. Install a reporting app only once you can name the question standard Odoo could not answer. |
| A published capability you would rather not build | An Odoo App Store app | Its dependencies install alongside it and you inherit its release schedule. The next section is the checklist to run first. |
| A two-way sync with a storefront or marketplace Odoo does not cover | A custom connector | Field mapping, error handling, retries and reconciliation become yours, and the sync is retested at every upgrade. |
| Behavior that does not exist in Odoo at all | A custom module | One module per capability, dependencies in its manifest, tests that run on install — the customization side of the work. |
| A change to how a standard Odoo model behaves | A custom module that inherits the model | Inheritance extends standard code instead of editing it, so the next Odoo update cannot overwrite your work. |
| Something a platform decision would remove entirely | No integration at all | The safest connector is the one you do not have. Bay Alarm Medical moved its storefront onto Odoo commerce and ended up with zero APIs. That case is below. |
Capability names follow the Odoo 20 documentation. Timeline figures are Brainvire’s planning bands, not Odoo’s.
/ Before you install anything
How do you evaluate Odoo third-party apps before installing them?
Four checks, in the order that saves the most rework. Odoo marks store apps from anyone other than Odoo as Third Party, and says the database administrator is responsible for how it is used, not the publisher. Each major version is supported for three years, which is what makes version coverage the check people regret skipping.
| What to check | Why it matters, and where it is written down |
|---|---|
| Maintainer and version coverage | Who publishes it, and whether they still ship. The store lists an app per Odoo version; with no build for the version you are moving to, the app is what holds up your upgrade. |
| The license | The manifest carries a license key: LGPL-3 by default, but also GPL, AGPL or one of Odoo’s proprietary licenses. |
| Dependencies, and uninstall | The depends list installs first, and Odoo warns an app may install further apps. Uninstalling deletes its records, so rehearse that on a duplicate. |
| The next upgrade | Odoo states a database with custom modules cannot be upgraded until those modules exist for the target release. A store app counts. |
/ Delivered, with the case study attached
Which Odoo integrations has Brainvire actually delivered?
Seven, each linked to the Brainvire case study it comes from, for clients in various industries from pool supplies to real estate. If an integration is not on this list, we have no published case study for it and would rather say so. The full library is at case studies; reference material sits under Odoo guides.
| Integration | Where we shipped it | What moves between the systems |
|---|---|---|
| Adobe Commerce and Odoo | Fresh Pool Supply, pool supplies, and Librami, safety equipment | Catalog and order data kept in step between an Adobe Commerce storefront and Odoo. For Librami, one front end for B2B and B2C buyers over multi-vendor stock. |
| Shopify and Odoo | Motis Inc., firefighting tools | A Shopify store into an existing Odoo database for invoicing, accounting, sales and purchase, alongside an Odoo 14 to 16 upgrade. |
| Amazon and Odoo | Colosseum Athletics, collegiate apparel | Amazon orders through the API, separate warehouses for FBA and FBM stock, and more than 300,000 historical orders imported before go-live. |
| Salesforce and Odoo | CBS, business setup consultancy, Dubai | Salesforce job-order fields mapped into Odoo across several companies, with statements and invoicing automated and external signing in Odoo Sign. |
| SAP REFX and Odoo | Thakher, real estate, Saudi Arabia | A phased Odoo and SAP REFX integration with real-time synchronization, plus multi-language sales deeds built from quotations and product masters. |
| QuickBooks to Odoo | Samsar Resources, manufacturing | A migration, not a live connector: history moved, duplicate vendors and customers merged, payments linked back to invoices and bills. |
| RFID readers and Odoo | A North American jewelry brand, unnamed in the case study | Stone and job-order status read from RFID into Odoo, so a piece is tracked from metal selection to finished ring, with cycle counts keeping stock current. |
Each row links to the case study it is taken from. Where a client is not named, the case study does not name them either.
/ On the Odoo App Store
What does Brainvire publish on the Odoo App Store?
One module. Searching the store by the author name Brainvire Infotech returns a single result, and this is it. It came out of a 2020 build with EZlytix, announced at the time, and everything below is read straight off the listing.
| On the listing | What it says |
|---|---|
| The app | EZlytix Analytics Solution, technical name bv_ezlytix_report, published by Brainvire Infotech and marked Third Party by Odoo. It brings EZlytix retail analytics dashboards into Odoo. |
| Version and license | Odoo 12.0 and only 12.0, licensed LGPL-3. Every other version of that listing URL returns a 404. |
| Size and dependencies | 500 lines of code, depending on Inventory, Invoicing, Purchase, Sales and Discuss. Availability is listed for Odoo Online, Odoo.sh and on-premise. |
| To actually use it | The listing says to contact EZlytix for login details after installing, then connect from the EZlytix menu. The analytics run on EZlytix. |
One published module is not a product line, and describing it as one would be the easiest thing on this page to get wrong. What we sell is the work: configuration, a vetted third-party app where one fits, or a module we build and maintain with you. One example of the last is the in-house PrintNode connector that prints ZPL labels on the shop floor, described on the Odoo manufacturing accelerator — built for client systems, not published for download.
/ The same decisions, on live programs
What do these decisions look like in production?
Three programs, one for each answer this page keeps giving: use what Odoo ships, build the behavior Odoo does not have, or remove the integration altogether.
12 countriesstandardized on what Odoo ships, localized country by countryPuma Energy
A convenience-store network across 12 African markets runs one Odoo 18 ERP and POS platform, with country-specific fiscal localization layered onto a standardized group chart of accounts. Route one, at scale: the localization was configured, not written.
Read the case →
Wood coatings manufacturer
Products measured by volume and density needed weight worked out on the fly, returns tracked against inventory, and tax calculated per unit of measure while the order was still on the website. None of that is standard behavior, so it was built on Odoo.sh beside the WooCommerce storefront. Route four, justified.
Read the case →
Zero APIsbetween commerce and ERP, once the connector stopped being neededBay Alarm Medical
A Magento storefront and an Odoo 13 database were kept in step by an integration. Replacing the cart with Odoo commerce and upgrading to Odoo 16 removed the need for one: storefront and back office now share a database. The connector we did not build.
Read the case →
/ From requirement to go-live
How does an Odoo integration project run?
Four steps, whichever route the requirement lands on. When the answer is configuration or a vetted app, steps two and three get much shorter.
Inventory the Odoo modules you run
We list every installed module and third-party app, who wrote it, which version it targets and what it writes, including apps that are there only because another app required them. Each data set gets one system of record.
Map the data and its failure rules
Field by field, we map what moves, in which direction, and whether it syncs in real time or on a schedule, then agree on how errors are logged, retried and reconciled before any code is written.
Build and test on a duplicate database
The connector is a module in its own repository, with tests that run on install. It is rehearsed on a copy of your database before production sees it.
Go live, then retest at each upgrade
Cutover runs from a checklist your team signs off. After that, the connector is retested against each new Odoo version before you upgrade.
/ Questions we are asked
What else do buyers ask about Odoo apps and connectors?
Does Brainvire sell Odoo apps?
No. Brainvire publishes one module on the Odoo App Store, EZlytix Analytics Solution, built for Odoo 12.0 and licensed LGPL-3. Everything else we build for Odoo is built for one client, in that client’s repository, and maintained with them. There is no Brainvire app catalog, and this page is deliberately not one.
Should we install an app from the Odoo App Store or build a module?
Install the app if it is maintained, has a build for the version you are on, and its dependencies are ones you were going to run anyway. Build a module when the behavior does not exist in Odoo and no app covers it. Either way you are choosing who maintains it at the next upgrade.
What happens to an Odoo app when we upgrade?
Odoo states that a database containing custom modules cannot be upgraded until a version of those modules exists for the target version. A third-party app is a custom module as far as that rule is concerned. So the app’s version coverage decides your upgrade date unless you are willing to remove it.
Is Odoo Studio enough, or do we need a developer?
Studio is enough when the change is a field, a view, a PDF report, an automation rule or a security rule with no new business logic behind it. It stores its work as data in the database. A developer is needed once the requirement is behavior, because behavior belongs in versioned code with tests.
Which systems has Brainvire connected to Odoo?
Adobe Commerce, Shopify, Amazon, Salesforce, SAP REFX, QuickBooks and RFID readers, each with a named case study linked on this page. That list is what we can evidence. We keep it short on purpose: an integration nobody can point to a program for is a claim, not a capability.
Does Odoo already have a connector for Amazon or for shipping carriers?
Yes to both, and they are the first thing to try. Odoo ships an Amazon Connector that synchronizes confirmed FBA and FBM orders, and a third-party shipper setup for carriers such as UPS, FedEx and DHL. Custom work starts where those stop, which for Amazon is anything beyond sales-order data.
Can Brainvire maintain an app or connector another partner installed?
Yes, and it is a common way for a relationship to start. The first step is an inventory: what is installed, who wrote it, which version it targets, what it writes to the database, and whether it has tests. Only after that can anyone say honestly what an upgrade would take.
How do you decide whether an integration is worth building at all?
By asking what would have to be true for the integration not to exist. Sometimes the answer is a platform decision instead: Bay Alarm Medical replaced a Magento cart with Odoo commerce and ended up with zero APIs between storefront and ERP. An integration you never build cannot break at the next upgrade.
What is an Odoo integration?
A connection that moves data between Odoo and another system, such as a storefront, a CRM or a marketplace, so orders, stock, invoices and customer records stop being keyed in twice. Odoo describes its own business apps, from CRM and accounting to inventory and point of sale, as fully integrated, so an integration only matters where the data lives somewhere else. It can be a connector Odoo ships, a third-party app, one of the middleware services that sit in between, or custom code against the external API.
What are Odoo third-party apps?
Modules published on the Odoo App Store by anyone other than Odoo. You find them on odoo.com under Third party apps in the Apps menu, and the store filters them by Odoo version, by platform, and by price, open source or paid. They add features and functionality standard Odoo does not ship, and Brainvire’s EZlytix module is one of them. The database administrator, not the publisher, is responsible for how each one is used.
How much do third-party Odoo apps cost?
Each publisher sets its own price, and the store separates open-source apps from paid ones. The listing price is rarely the whole cost. Odoo warns that adding or removing apps can affect other apps in the database and modify subscription costs, the app needs a build for every version you upgrade to, and someone has to manage it through each upgrade. We would rather price that ownership up front than discover it at the first upgrade.
What are Odoo Community Association modules?
The Odoo Community Association (OCA) is a non-profit organization based in Switzerland that provides thousands of Odoo modules under open source licenses, independent of Odoo SA. An OCA module can be an alternative to a paid store app. It deserves the same four checks as any other app: maintainer and version coverage, the license, dependencies and uninstall, and the next upgrade.
Does Odoo have a REST API?
Not under that name. Since Odoo 19 the external interface is the JSON-2 API: each call posts JSON to the /json/2 endpoint, naming a model and a method, and authenticates with a bearer API key. Odoo notes that access to the external API is only available on Custom pricing plans, not One App Free or Standard, and recommends a short key duration for interactive usage. The older XML-RPC and JSON-RPC endpoints are deprecated, and Odoo 20 removed their db service. The common and object services are scheduled for removal in Odoo 22 (fall 2028), so a connector still built on them has a deadline.
Can Odoo Studio send data to other systems?
Within limits. Odoo says Studio gives you the tools to create new fields, customize views and streamline workflows without writing code, with fields added by a simple drag and drop. Its automation rules include a Send Webhook Notification action, which posts the values of selected fields to a URL and shows a sample payload so you can preview the content, and an External trigger that lets another system start a rule. Odoo recommends involving a developer or solution architect, because a misconfigured webhook may disrupt the database and take time to revert.
What happens if we uninstall an Odoo app?
Odoo deletes the app’s database records with it. Apps depend on one another, so uninstalling one can also remove the apps that rely on it; Odoo’s own example is that removing Point of Sale also removes Restaurant. Rehearse it on a duplicate database first: the uninstall window lists the apps and the records that would go, so you learn the cost while nothing in production has been dropped.
Does Odoo connect to payment providers without code?
For the providers it embeds, yes. Odoo offers Adyen, PayPal, Stripe and Mollie among others, each configured from the Accounting, Website or Sales settings. Odoo delegates sensitive data such as card numbers to the provider rather than storing it in the database. A custom connector is only worth scoping for a provider Odoo does not list, and the first step is checking that list for your version.
What happens when an Odoo sync fails?
In a connector we build, the failure is written to a log someone owns, errors that are temporary are retried, and a reconciliation compares records on both sides so a missed order shows up as a count that does not match. Who receives the alert, and how fast they respond, is agreed on at scoping, inside the implementation plan. That continuing check is also what tells you, after an upgrade, that the connector still works.
Can Brainvire vet a third-party app before we buy?
Yes. We run the four checks on this page against the app on a duplicate of your database: maintainer and version coverage, license, dependencies and uninstall, and the next upgrade. You then choose between three outcomes: install it, configure standard Odoo instead, or build the behavior as a module. The choice is yours; the review exists so it is made with the upgrade in view.
/ Next step
Bring us the requirement, not the app list.
- A senior architect replies within one business day
- Your details are never shared or sold
- An NDA can be signed before we hear any detail
US +1 (631) 897-7276 · Gulf +971-54-737-4253 · Singapore +65-9086-0319 · India +91-22-6116-3300.









Trusted by 2,000+ brands worldwide
“Brainvire has helped our business grow. We feel like it’s a true partnership. They’re always present. It’s been seven great years, looking forward to more.”
Book a working session
Tell us what the requirement is and what you run today, and we will say which of the four routes it belongs in.