OdooRPC
OdooRPC is a Python package providing an easy way to pilot your Odoo servers through RPC.
What it is and what it does
OdooRPC is a Python client that lets you interact with Odoo servers remotely using JSON-RPC or XML-RPC protocols. It mirrors the server-side API, so you can search records, browse data, execute workflows, manage databases, and download reports from Python code without needing direct database access. The library handles authentication, user context, and internationalization automatically.
You connect to an Odoo server by hostname and port, log in with credentials, then access models and records through a familiar object-oriented interface. It supports named parameters, record browsing, and raw queries, making it useful for automation scripts, integrations, and administrative tasks that need to manipulate Odoo data from outside the server.
Use it for:
- Automate data entry and updates in Odoo from external Python scripts or scheduled jobs
- Build integration layers between Odoo and third-party systems or databases
- Generate custom reports or analytics by querying Odoo data programmatically
- Manage multiple Odoo databases or perform bulk operations across instances
- Execute Odoo workflows and state transitions as part of external business processes
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
OdooRPC is a Python client library that connects to Odoo servers via JSON-RPC and XML-RPC protocols, allowing you to query data models, execute workflows, manage databases, and download reports programmatically.
Yes, if you need to automate or integrate with Odoo servers. The package has no dependencies, is actively maintained, and carries no known vulnerabilities. The LGPL v3 license is permissive for most use cases as long as modifications are shared. The main caveat is that the last release was over a year ago—verify compatibility with your specific Odoo version before relying on it for production.
Install
odoorpc on PyPI
pip
pip install odoorpcuv
uv add odoorpcpoetry
poetry add odoorpcInstalling OdooRPC
Before you install
Installation is straightforward with no runtime dependencies. The package is actively maintained with recent commits and has been stable since its early releases, though the last release was over a year ago.
License in practice
OdooRPC is licensed under LGPL v3, a copyleft license requiring that derivative works and modifications remain under the same license and be made available to users.
Quickstart
pip install odoorpc
import odoorpc
odoo = odoorpc.ODOO('localhost', port=8069)
odoo.login('db_name', 'user', 'passwd')
user = odoo.env.user
print(user.name)
Verify before relying
- Whether the package actively supports Python 3.7+ as stated, given classifiers list 3.4, 3.5, 3.6 but description claims 3.7+
- Current compatibility with recent Odoo server versions beyond the stated 8.0+ baseline
Package facts
| License | LGPL v3 (copyleft) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 1,094 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 135,670/month — #11,424 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: OdooRPC-0.10.1-py2.py3-none-any.whl
Keywords: openerp, odoo, server, rpc, client, xml-rpc, xmlrpc, jsonrpc, json-rpc, odoorpc, oerplib, communication, lib, library, python, service, web, webservice
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
ERPpeekERPpeek is a command-line and library client…
permissive · top 15,000 on PyPI
aiohttp-xmlrpcProvides async XML-RPC server and client…
permissive · top 15,000 on PyPI
mcp-server-odooAn MCP server that bridges AI assistants like…
copyleft · top 5,000 on PyPI
whoolwhool is a PEP 517 and PEP 660 compliant build…
permissive · top 15,000 on PyPI
openupgradelibProvides utility functions for Odoo database…
agpl · top 15,000 on PyPI
json-rpcImplements JSON-RPC 2.0 and 1.0 protocol…
permissive · top 5,000 on PyPI
pylint-odooA Pylint plugin that adds Odoo-specific code…
agpl · top 15,000 on PyPI
jsonrpcclientGenerates JSON-RPC request objects and parses…
unclear · top 15,000 on PyPI
ajsonrpcImplements the JSON-RPC 2.0 protocol with an…
permissive · top 5,000 on PyPI
ovsProvides official Python bindings for Open…
permissive · top 15,000 on PyPI