erp
Odoo ERP CLI for Shell Scripts
Use the Odoo ERP CLI for shell scripts with headless JSON commands, schema discovery, credentials, and permission controls.
8 functions 7 read 1 write API key auth
Odoo ERP CLI for Shell Scripts
Call integration functions from shell scripts with stable JSON input and output.
Use shell scripts for small local automations that need one or more integration calls. The Odoo ERP CLI uses the same integration registry as the TUI, Lua runtime, and MCP gateway, but returns predictable command output for automation.
Command Shape
# Odoo ERP CLI for Shell Scripts
kosmokrator integrations:configure odoo --set api_key="$ODOO_API_KEY" --set url="$ODOO_URL" --enable --read allow --write ask --json
kosmo integrations:call odoo.odoo_list_contacts '{"page":1,"limit":1,"name":"example_name","email":"example_email","is_company":true}' --json Discovery Before Execution
Agents and scripts can inspect Odoo ERP docs and schemas before choosing a function.
kosmo integrations:docs odoo --json
kosmo integrations:docs odoo.odoo_list_contacts --json
kosmo integrations:schema odoo.odoo_list_contacts --json
kosmo integrations:search "Odoo ERP" --json
kosmo integrations:list --json Useful Odoo ERP CLI Functions
| Function | Type | Parameters | Description |
|---|---|---|---|
odoo.odoo_list_contacts | Read | page, limit, name, email, is_company | List contacts (customers, vendors) from Odoo with pagination. Returns contact names, emails, phone numbers, and company info. |
odoo.odoo_get_contact | Read | id | Get full details of a specific Odoo contact by ID. Returns name, email, phone, address, and all associated data. |
odoo.odoo_create_contact | Write | name, email, phone, is_company, company_type, street, city, zip, country, website, vat, type, parent_id, function | Create a new contact (customer or vendor) in Odoo. Supports individuals and companies. |
odoo.odoo_list_sales_orders | Read | page, limit, status, partner_id, date_from, date_to | List sales orders from Odoo with pagination. Filter by status, customer, or date range. |
odoo.odoo_list_invoices | Read | page, limit, status, partner_id, date_from, date_to | List invoices from Odoo with pagination. Filter by status, customer, or date range. |
odoo.odoo_list_products | Read | page, limit, name, category, type, sale_ok, purchase_ok | List products from Odoo with pagination. Filter by name, category, or type. |
odoo.odoo_list_leads | Read | page, limit, type, stage, user_id, partner_id | List CRM leads and opportunities from Odoo with pagination. Filter by stage, type, or assigned user. |
odoo.odoo_get_current_user | Read | none | Get the currently authenticated Odoo user profile. Returns name, email, role, and company information. |
Automation Notes
- Use
--jsonfor machine-readable output. - Keep credentials out of argv by using environment variables or stored KosmoKrator configuration.
- Configure read/write policy before unattended runs; use
--forceonly for trusted automation. - Use the MCP gateway instead when the agent needs dynamic tool discovery inside a conversation.