Odoo.sh Accounting Module Customization to allow Dynamic Issuers
Budget: €250 – €750 EUR
Project Overview===================
We need an experienced Odoo developer to customize the Odoo.sh Accounting module (version 18) to enable dynamic invoice generation via API.
Our platform will sends sales orders to Odoo via API to create standard invoices between our company and clients. Additionally, we require the ability to generate invoices where our clients are the issuer and any person/entity (their final client) is the invoiced person, independent of Odoo’s standard sales order-driven invoice process.
Odoo’s default invoicing ties the issuer and invoiced person to the sales order’s company and partner, which doesn’t support our need for flexible issuer assignments. This simplified customization will allow API-driven invoice creation with dynamic issuer and invoiced person fields, focusing on core functionality to keep costs low.
Project Requirements===================
Dynamic Invoice Creation via API:
Enable Odoo Accounting to create invoices via API where the issuer is a client (Odoo partner) and the invoiced person is any partner (existing or created dynamically).
Extend the account.move API to accept custom fields for issuer and invoiced person, bypassing sales order dependency.
Example API payload:
json
[
"move_type": "out_invoice",
"issuer_partner_id": 123, // Client partner ID
"invoiced_partner_id": 456, // Final client partner ID
"invoice_line_ids": [["product_id": 789, "quantity": 1, "price_unit": 100]],
"invoice_date": "2025-04-23"
]
Support basic invoice data: products, quantities, prices, and taxes.
Minimal Accounting Integration:
Map all dynamic invoices to a single, pre-configured journal (e.g., “Client Invoices Journal”) to simplify accounting setup.
Use default tax and currency settings from the client’s partner record or a fallback configuration.
Ensure invoices are validated and posted correctly, with basic journal entries.
Partner Management:
Allow API to create new partner records for final clients if they don’t exist, using minimal required fields (e.g., name, email).
Reuse existing partner records for clients as issuers.
No UI Customization:
Skip modifications to Odoo’s invoice form or other UI elements to reduce development effort.
Invoices will be created and managed via API only, with manual review possible in Odoo’s standard interface (using default fields).
Documentation and Testing:
Provide basic technical documentation covering API usage and module setup.
Perform essential testing to ensure API-driven invoice creation works and invoices are accounted correctly.
Questions to Address
Please include answers to the following in your proposal:
Is it possible? Confirm if this simplified customization is feasible within Odoo’s framework.
Recommended architecture? Suggest a minimal architecture, focusing on API and backend changes.
Estimated development cost? Provide a cost estimate, including hours and rate.
We need an experienced Odoo developer to customize the Odoo.sh Accounting module (version 18) to enable dynamic invoice generation via API.
Our platform will sends sales orders to Odoo via API to create standard invoices between our company and clients. Additionally, we require the ability to generate invoices where our clients are the issuer and any person/entity (their final client) is the invoiced person, independent of Odoo’s standard sales order-driven invoice process.
Odoo’s default invoicing ties the issuer and invoiced person to the sales order’s company and partner, which doesn’t support our need for flexible issuer assignments. This simplified customization will allow API-driven invoice creation with dynamic issuer and invoiced person fields, focusing on core functionality to keep costs low.
Project Requirements===================
Dynamic Invoice Creation via API:
Enable Odoo Accounting to create invoices via API where the issuer is a client (Odoo partner) and the invoiced person is any partner (existing or created dynamically).
Extend the account.move API to accept custom fields for issuer and invoiced person, bypassing sales order dependency.
Example API payload:
json
[
"move_type": "out_invoice",
"issuer_partner_id": 123, // Client partner ID
"invoiced_partner_id": 456, // Final client partner ID
"invoice_line_ids": [["product_id": 789, "quantity": 1, "price_unit": 100]],
"invoice_date": "2025-04-23"
]
Support basic invoice data: products, quantities, prices, and taxes.
Minimal Accounting Integration:
Map all dynamic invoices to a single, pre-configured journal (e.g., “Client Invoices Journal”) to simplify accounting setup.
Use default tax and currency settings from the client’s partner record or a fallback configuration.
Ensure invoices are validated and posted correctly, with basic journal entries.
Partner Management:
Allow API to create new partner records for final clients if they don’t exist, using minimal required fields (e.g., name, email).
Reuse existing partner records for clients as issuers.
No UI Customization:
Skip modifications to Odoo’s invoice form or other UI elements to reduce development effort.
Invoices will be created and managed via API only, with manual review possible in Odoo’s standard interface (using default fields).
Documentation and Testing:
Provide basic technical documentation covering API usage and module setup.
Perform essential testing to ensure API-driven invoice creation works and invoices are accounted correctly.
Questions to Address
Please include answers to the following in your proposal:
Is it possible? Confirm if this simplified customization is feasible within Odoo’s framework.
Recommended architecture? Suggest a minimal architecture, focusing on API and backend changes.
Estimated development cost? Provide a cost estimate, including hours and rate.