- Inicio
- Apps
- SaaS Tools
- Website Multi Invoice Payment
Vista previa ilustrativaA build-to-order Odoo customer-portal extension that lets your customers select and pay several open invoices in
a single bulk checkout. ECOSIRE scopes, builds, installs, and supports it for Odoo 17.0, 18.0, and 19.0.
¿Qué es Website Multi Invoice Payment?
A build-to-order Odoo customer-portal extension that lets your customers select and pay several open invoices in a single bulk checkout. ECOSIRE scopes, builds, installs, and supports it for Odoo 17.0, 18.0, and 19.0. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Características clave
Hecho a medida, listo para ti
Sin configuración por tu cuenta: una app funcional creada, instalada y con soporte de ECOSIRE.
- 1
Haces el pedido
Empieza con un precio único de desarrollo. Definimos el alcance contigo en el arranque.
- 2
Creamos e instalamos
ECOSIRE la crea, la configura y la instala en tu Odoo.
- 3
En marcha + soporte
Sales en vivo en aproximadamente una semana laboral, con dos semanas de soporte tras la puesta en marcha. Los defectos en el código que entregamos se corrigen sin coste.
Especificaciones técnicas
- Compatibilidad con Odoo
- Odoo 17, Odoo 18, Odoo 19
- Ediciones
- Enterprise y Community
- Licencia
- La licencia requiere confirmación
- Requisito de Python
- Python 3.10+
- Base de datos
- PostgreSQL 12+
Sobre este producto
Every finance team running Odoo eventually hits the same friction: a customer with ten open invoices has to open the portal, click into each invoice separately, and run ten individual online payments. That means ten payment-provider transaction fees, ten account.payment records to reconcile, ten confirmation emails, and a frustrated customer who abandons half the payments midway. Out of the box the Odoo portal is built around the single-invoice view (/my/invoices/<id>) — the payment and account_payment flows key each transaction to one account.move, so there is no native "select several invoices and pay the combined balance at once" experience on the website. Teams work around it with manual bank transfers and spreadsheet chasing, which is exactly the reconciliation drag Odoo was supposed to eliminate.
This is what we build for you. Website Multi Invoice Payment is a portal extension that adds a bulk-selection layer over the customer's list of posted, unpaid account.move records. We inherit the portal account controller (PortalAccount / http.Controller) so the logged-in customer sees checkboxes plus a live "selected total" that we compute from amount_residual, scoped by move_type in ('out_invoice','out_refund') and payment_state in ('not_paid','partial') and filtered by the portal record rules so a partner only ever sees their own documents. A single "Pay selected" action assembles the chosen invoices into one payment intent and hands it to Odoo's standard payment engine, so the money moves through whichever acquirers you already have configured (payment.provider) with no bespoke gateway code. On success we generate the payment, post it, and let Odoo's reconciliation match it against each selected account.move — optionally splitting a single received amount across invoices oldest-first when a partial-allocation policy is requested.
Technically, the module ships as a proper addon: a __manifest__.py declaring dependencies on account, account_payment, payment, portal, and website; new/extended models with @api.depends compute fields for the running selection total and eligible-invoice domain; QWeb templates that extend the existing portal invoice list rather than replacing it (so your theme and any other portal customizations survive); and ir.model.access.csv plus record rules that keep the multi-select strictly inside the requesting partner's commercial entity. We wire the confirmation and receipt into the standard mail templates, expose the bulk-pay result over the JSON-RPC/XML-RPC layer for any headless or app integration you run, and cover both Community (manual/wire acquirers) and Enterprise (full electronic-payment acquirers, follow-up automation) so the feature behaves correctly on your edition. Everything is delivered against your pinned series — 17.0, 18.0, or 19.0 — with the controller and template inheritance adjusted for the API differences between them.
Because this is build-to-order, nothing is pre-listed for instant download: after a short scoping call we confirm the exact selection rules, allocation policy, and acquirer set, then build, test on a staging clone of your database, and install to production. Typical delivery is one working week from confirmed scope. Pricing starts from $999 (indicative, single-company base scope); multi-company deployments, additional payment acquirers or currencies, partial-allocation logic, and localization or e-invoice reconciliation requirements increase the quoted scope — you receive a fixed quote after the scoping call, never a surprise invoice.
lo que obtienes
- Installable, version-pinned addon source code (17.0, 18.0, or 19.0) with clean `__manifest__.py`, models, controllers, QWeb templates, and security files
- Installation and configuration on your environment, including acquirer wiring and portal template verification
- Technical documentation covering module architecture, models, extended controller, security rules, and upgrade notes
- End-user guide plus a live training session for your finance/portal team
- Post-go-live support window for defect fixes and configuration questions
- UAT on a staging clone of your database with a documented rollback plan before production install
- Git repository handover with full commit history and tag matching your Odoo series
- Release notes and a short admin runbook for maintaining acquirers and allocation settings
¿Para quién es esto?
Finance / AR manager on Odoo
Runs accounts receivable in Odoo and is tired of chasing customers who pay invoices one at a time or not at all. Needs bulk portal payment to lift collection rates and cut reconciliation labor.
B2B seller with high invoice volume per customer
Issues many recurring or project invoices to the same partners. Wants customers to clear several outstanding balances in one checkout instead of abandoning a tedious per-invoice flow.
Odoo admin / functional consultant
Owns the internal Odoo instance and its portal theme. Needs a clean, inheritance-based addon that won't clash with existing customizations and ships with docs, security rules, and a rollback plan.
Operations lead in a services or subscription business
Manages a customer portal where clients self-serve. Wants a smoother 'pay everything I owe' experience to reduce support tickets and speed up cash collection.
Cómo se compara Website Multi Invoice Payment
| Criterio | ECOSIRE | Construcción personalizada | Competidor | Nativo de Odoo |
|---|---|---|---|---|
| Bulk-pay multiple invoices at once | Built as a first-class portal feature, tailored to your rules | Possible but you design and maintain it from scratch | May offer a generic multi-select with fixed behavior | Not available — portal pays one invoice at a time |
| Fit to your workflow (allocation, currencies, acquirers) | Scoped to your exact policy and edition before build | Fully custom but dependent on in-house Odoo expertise | Fixed feature set; you adapt to its assumptions | None beyond the standard single-invoice flow |
| Theme and customization safety | QWeb inheritance, extends not replaces; verified in UAT | Depends entirely on developer discipline | Varies; some replace templates and cause clashes | N/A — no such feature to conflict |
| Odoo 17/18/19 and Community vs Enterprise | Version-pinned build for your exact series and edition | You port and test across versions yourself | Often lags new releases or targets one series | Ships with core but without bulk payment |
| Security and multi-company scoping | `ir.model.access.csv` + record rules per your entity model | You must design and audit access controls | Generic rules; may not match your company structure | Standard portal rules, single-invoice only |
| Delivery and installation | Built, tested on staging, installed with rollback plan | Your team plans, builds, and deploys it | Self-install; support depends on the vendor | Already present, but lacks the capability |
| Support and ownership | Post-go-live support window + full git repo handover | Self-supported unless you retain a developer | Vendor-dependent support and license terms | Covered by your Odoo support, feature absent |
| Total cost of ownership | Fixed quote from $999 indicative; predictable scope | Unpredictable dev + maintenance cost over time | Low sticker price but rigid; adaptation costs add up | Free but doesn't solve the problem |
Preguntas frecuentes sobre Website Multi Invoice Payment
Is this an existing app I can download and install right now?
No. This is a build-to-order module. ECOSIRE scopes your exact requirements, then builds, tests on staging, and installs it. There is no instant download — you receive source code and a working install tailored to your Odoo series and acquirers.
How long does delivery take?
Typical delivery is one working week from confirmed scope. After the scoping call we lock the selection rules, allocation policy, and acquirer set, then build, run UAT on a staging clone of your database, and install to production. Complex multi-company or localization scopes can extend the timeline, which we state in the quote.
How does pricing and scoping work?
Pricing starts from $999 (indicative, single-company base scope). The exact figure depends on drivers like multi-company setup, extra payment acquirers or currencies, partial-allocation logic, and localization needs. You get a fixed, written quote after a short scoping call — never a surprise invoice.
What about support and updates after go-live?
Every build includes a post-go-live support window for defect fixes and configuration questions, plus a git repository handover so your team owns the code. We can also quote a longer maintenance arrangement or a version upgrade (for example moving the module from 18.0 to 19.0) as a separate scope.
Will it work with my existing payment providers?
Yes. The module reuses your configured `payment.provider` acquirers and hands the combined payment to Odoo's native `payment` engine, so it works with whatever gateways or manual/wire methods you already run. We don't build a bespoke gateway; we build the bulk-selection and reconciliation layer on top of the standard flow.
Does it work on Odoo Community or only Enterprise?
Both. On Community it works with manual and wire acquirers; on Enterprise it additionally covers the full electronic-payment acquirers and follow-up automation. We target your specific edition and series (17.0, 18.0, or 19.0) and adjust controller and template inheritance accordingly.
Will it break my existing portal theme or customizations?
No. We extend the existing portal invoice templates via QWeb inheritance rather than replacing them, and add security via `ir.model.access.csv` and record rules. Existing website theme and portal customizations remain intact, and we verify this during UAT on your staging clone.
Módulos relacionados

Vonage (Nexmo) SMS Gateway for Odoo
A build-to-order Odoo module that routes all SMS through your Vonage (Nexmo) account for global transactional and bulk messaging. ECOSIRE builds, installs, and supports it on your Odoo 17, 18, or 19.

Wallee Payment Provider for Odoo
A made-to-order Odoo payment provider that connects your Wallee space to native checkout, with hosted or inline card entry, TWINT and PostFinance support, tokenization, refunds and automatic reconciliation. ECOSIRE builds, installs and supports it after a scoping call.

Web Utils
A build-to-order utility layer for the Odoo web client — sticky headers, quick record navigation, list-view density controls, one-click ID/URL copy, and other daily-use helpers. ECOSIRE scopes, builds, installs, and supports it for your database.

WhatsApp Business Cloud API Connector (All-in-One)
Build-to-order Odoo module putting two-way WhatsApp Cloud API into CRM, Sales, Helpdesk & Invoicing — no Enterprise needed. Built & supported by ECOSIRE.
Website Multi Invoice Payment
A build-to-order Odoo customer-portal extension that lets your customers select and pay several open invoices in a single bulk checkout. ECOSIRE scopes, builds, installs, and supports it for Odoo 17.0, 18.0, and 19.0.
- Bulk-selection UI on the portal `/my/invoices` list via inherited QWeb templates, with per-row checkboxes and a 'select all eligible' toggle
- Live selected-total field computed from `amount_residual` with `@api.depends`, updating client-side as the customer checks and unchecks invoices
- Eligible-invoice domain filtered to `move_type in ('out_invoice','out_refund')` and `payment_state in ('not_paid','partial')` so only genuinely payable documents appear
- Single 'Pay selected' action that assembles the chosen `account.move` set into one payment intent handed to the native `payment` engine