|  | 
| 1 | 1 | # Why Odoo? | 
| 2 | 2 | 
 | 
| 3 |  | -Often the following question is asked:  _why did OpenG2P choose Odoo framework as base technology for implemening modules_.  The explanation provided below addresses this question. | 
|  | 3 | +A frequent question in the OpenG2P community is why the project has chosen the Odoo framework as its underlying technology for building some of the core modules. This blog post clarifies the rationale behind that decision. | 
| 4 | 4 | 
 | 
| 5 |  | -OpenG2P was inherited from UNDP’s original version which had implemented the program management capabilities using Odoo.  At several junctures in the project we have  evaluated the cost/benefit of moving out of Odoo,  but the general consensus has been to continue with Odoo for Registry and PBMS given the flexibility and rapid deployment of features.  Also, since we are still in a phase where we encounter new requirements and business processes followed in countries, adaptability and ability to update the core platform rapidly is important. Moreover, we realise that UI is a must for all applications, rather than just having an API based system, and this where Odoo scores above the others. | 
|  | 5 | +The story goes back to OpenG2P’s roots: the platform was originally developed as an extension of UNDP’s system, which made extensive use of Odoo for program management functions. Multiple project milestones involved thoughtful evaluations about potentially moving away from Odoo. Each time, the conclusion remained consistent—Odoo continues to deliver critical flexibility and rapid feature deployment, especially for core OpenG2P modules like Registry and PBMS. | 
| 6 | 6 | 
 | 
| 7 |  | -Odoo gives tremendous capabilities to rapidly build MIS type applications with user interface. Odoo offers great **RAD** capabilities where we need to only define the persistent model and Odoo with its framework, provides a UI with CRUD functionality without much coding. We can choose from pre-built custom UI widgets to present the model. Plus, there is a **large active community** - from where we can get additional widgets wherever required. Having said that, for PBMS (Beneficiary management system), we use Odoo only for Program Configuration and Disbursement Cycle Configuration and Approvals. During the disbursement cycle, the actual beneficiary list creation, eligibility evaluation, entitlement computations - processes which are candidates for high volumes, we have delegated these processes into a decoupled microservice (a fastapi based microservice with asynchronous processing using the celery framework). This microservice can be scaled out to handle beneficiary volumes. Since the Odoo part of the application is not challenged with volumes, we can continue to leverage the strengths of Odoo. | 
|  | 7 | +**Adaptability and speed** remain vital for OpenG2P, as new country requirements and business processes frequently emerge. The ability to update the core platform rapidly is a significant advantage and Odoo’s integrated user interface makes a big difference—even when compared to purely API-driven systems. | 
| 8 | 8 | 
 | 
| 9 |  | -**Extensibility**: Odoo never forces you to modify any code to change the behaviour or build a new use case. It can be completely extensible.. The extensibility is available in every area like Data model, business logic, UI, forms and integrations. This means that the implementation team is never modifying any OpenG2P code, rather they are keeping it intact and extending through their own code. | 
|  | 9 | +Odoo’s platform enables rapid development of MIS-style applications with full UI support. Its robust rapid application development (**RAD**) tools allow teams to define data models and immediately gain fully functional CRUD interfaces with minimal code. A rich ecosystem of pre-built widgets and **vibrant community** support provide even more options for customization and enhancement. | 
| 10 | 10 | 
 | 
| 11 |  | -**High configurability** - Using Odoo’s built-in configuration tools—such as custom fields, dynamic forms, configurable workflows, and granular role-based access—administrators can quickly adapt household registration, case management, eligibility reviews, and payment approvals without needing software development effort. | 
|  | 11 | +When it comes to the PBMS (Beneficiary Management System) module, Odoo excels in configuring programs, managing disbursement cycles, and handling approval workflows. However, OpenG2P leverages a separate FastAPI-based microservice (using asynchronous Celery processing) for high-volume operations like beneficiary list creation, eligibility checks, and entitlement computation. This decoupling ensures that while Odoo drives configuration and approvals, heavy data tasks scale efficiently outside the core system. | 
| 12 | 12 | 
 | 
| 13 |  | -**Localization capabilities**- Odoo natively handles multiple languages, regional formats, and country-specific business rules, allowing systems to align seamlessly with local administrative practices. Localization packs provide ready configurations for address formats, currency conventions, calendars, and compliance features. User interfaces and data entry forms can be translated dynamically, enabling frontline workers to operate in their preferred language while administrators maintain centralized control. | 
|  | 13 | +Odoo’s **extensibility** stands out: implementation teams never have to modify OpenG2P’s base code. Instead, every aspect—data model, business logic, UI, forms, and integrations—can be extended independently, promoting maintainability and flexibility. | 
| 14 | 14 | 
 | 
| 15 |  | -**Security**: Odoo is widely used and has a proven track record on **security** of software.  With the assurance of secure undelying software, OpenG2P has added several security layers to and achieved an [A+ security rating](../privacy-and-security/security-audits/security-audit-2025-march.md) awarded by an independent assessment agency. | 
| 16 |  | - | 
| 17 |  | -Two important modules related to cash transfer - [G2P Bridge](../g2p-bridge/) and [SPAR](../spar/) **do not use Odoo**. They have been developed using fastAPI.   | 
| 18 |  | - | 
| 19 |  | -**Licensing**: Odoo is available under the LGPL license which is more permissive than say, AGPL, or GPL. We have ensured that all dependent libraries that we use are strictly LGPL only. All the dependencies that had restrictive licenses like AGPL, GPL have been removed. The licensing of Odoo (under LGPL) and other components of OpenG2P (under MPL) have been carefully examined in consultation with our IP lawyers. The clarification on the usage of these licenses for System Integrators in the context of OpenG2P has been published [here](https://docs.openg2p.org/license) | 
|  | 15 | +**Configuration** is equally powerful. Odoo’s built-in tools mean administrators can adapt workflows, registration forms, eligibility criteria, and payment approval processes through configuration rather than custom development. Dynamic fields, customizable forms, and granular access controls let organizations evolve quickly. | 
| 20 | 16 | 
 | 
|  | 17 | +**Localization** is another strength. Odoo supports multi-language interfaces, various regional formats, and country-specific rules, ensuring a smooth fit for local administrative practices. Address formats, currencies, calendars, compliance settings, and translation packs are all managed natively, giving both frontline workers and administrators the tools to operate in their preferred languages. | 
| 21 | 18 | 
 | 
|  | 19 | +**Security** is central to the platform. Odoo’s widespread usage and solid security reputation provide a strong foundation for OpenG2P’s own standards. Through additional protective layers, OpenG2P has achieved an [A+ security score](../privacy-and-security/security-audits/security-audit-2025-march.md) from independent evaluators. | 
| 22 | 20 | 
 | 
|  | 21 | +It’s important to note that key cash transfer functions—such as G2P Bridge and SPAR—are architected with **fastAPI** rather than Odoo. This choice reflects OpenG2P’s focus on performance and scalability for specialized modules. | 
| 23 | 22 | 
 | 
|  | 23 | +[**Licensing**](../social-registry/features/online-assisted-registration/) considerations also shaped our technology choices. Odoo is offered under the permissive LGPL license, and care has been taken to remove any AGPL or GPL dependencies. OpenG2P Odoo libraries rely strictly on LGPL components. Legal reviews have confirmed these choices to support straightforward adoption and compliance for system integrators. | 
| 24 | 24 | 
 | 
|  | 25 | +In summary, OpenG2P continues to rely on Odoo for its flexibility, extensibility, configuration ease, robust localization, and proven security—while innovating with complementary technologies where needed. This strategic choice helps OpenG2P deliver adaptable, secure, and scalable solutions for social protection programs across the world. | 
0 commit comments