Saltar al contenido principal
Los detalles del producto se muestran en inglés. Próximamente traducciones.
POS Show Product Price — A build-to-order Odoo Point of Sale module that renders each product's price directly on its selecti — 1/1Vista previa ilustrativa

A build-to-order Odoo Point of Sale module that renders each product's price directly on its selection card in

the POS product grid, so cashiers see prices at a glance without opening a product.

ECOSIRE scopes, builds, installs, and supports it on your Odoo 17, 18, or 19.

¿Qué es POS Show Product Price?

A build-to-order Odoo Point of Sale module that renders each product's price directly on its selection card in the POS product grid, so cashiers see prices at a glance without opening a product. ECOSIRE scopes, builds, installs, and supports it on your Odoo 17, 18, or 19. 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

Renders the unit price as a styled badge directly on each product card in the POS selection grid, no product tap required
OWL component patch of the POS `ProductCard` plus QWeb template inheritance for the card markup — no core files edited
Price is resolved through the active `pos.config` pricelist so the badge matches what lands on the order line
Tax-display aware: shows tax-included or tax-excluded price following the POS `iface_tax_included` setting
Session-currency formatting with correct symbol, decimal precision, and separators matching your receipts
Optional strikethrough of the original list price when a pricelist rule applies a discount
Per-register configuration via new fields on `pos.config` (show/hide badge, tax-in vs tax-out, discount display)
`res.config.settings` view inheritance so the options appear in POS settings, gated by `ir.model.access.csv`
Reads only data already loaded in the POS session — no extra RPC round-trips per card, negligible grid render cost
Respects unit of measure so per-unit price displays correctly for weighed or bulk products
Works offline in the POS the same as native — no dependency on live server calls during a session
Built and tested against your exact target: Odoo 17.0, 18.0, or 19.0, Community or Enterprise
Clean `__manifest__.py` with a single `point_of_sale` dependency and a scoped `point_of_sale.assets` bundle
Graceful fallback: products with no resolvable price render without a badge rather than showing a wrong or zero value

Hecho a medida, listo para ti

Sin configuración por tu cuenta: una app funcional creada, instalada y con soporte de ECOSIRE.

  1. 1

    Haces el pedido

    Empieza con un precio único de desarrollo. Definimos el alcance contigo en el arranque.

  2. 2

    Creamos e instalamos

    ECOSIRE la crea, la configura y la instala en tu Odoo.

  3. 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

In a busy checkout, the standard Odoo POS product grid shows a product image and name on each card but not the price. Cashiers either memorize prices, keep a printed sheet at the till, or tap into a product and read the price from the order line after adding it — which slows service, invites wrong-item entries, and makes price checks for walk-up customers awkward. Odoo core has no setting to surface the price on the card itself; the POS UI (an OWL/JavaScript front end backed by pos.session data) is deliberately minimal, and the price a customer actually pays depends on the active pos.config pricelist, taxes, and the product.template/product.product list price. There is no supported click-to-configure toggle for this, so teams reach the limit of what native Odoo can do without development.

What we build is a focused POS front-end extension that renders the price on every product card in the selection grid. We patch the OWL ProductCard (and the product screen component that lays out the grid) to read the correct unit price from the loaded product and pricelist data already present in the POS session, then display it in a styled badge on the card. Because the price shown must match what lands on the order line, we resolve it through the same pricelist logic the POS uses at add-time — honoring the pos.config assigned pricelist, unit of measure, and your tax-display preference (tax-included vs tax-excluded, following the POS iface_tax_included setting). Currency formatting uses the session currency so decimals and symbols render exactly as your receipts do. The behavior is configurable: we expose settings on pos.config (for example, show/hide the badge, choose tax-in or tax-out display, and optionally show a strikethrough of the original price when a pricelist discount applies) so different registers can behave differently without code changes.

Technically this ships as a proper module with its own __manifest__.py declaring a dependency on point_of_sale, an assets bundle registered under point_of_sale.assets (or assets_backend for the config fields), OWL component patches plus QWeb template inheritance for the card markup, and any config fields added to pos.config with matching res.config.settings view inheritance and ir.model.access.csv entries. It is built cleanly for your exact Odoo series — 17.0, 18.0, or 19.0 — because the POS front end changed meaningfully across those releases (asset bundles, OWL component structure, and the store/session data model differ), and we target Community or Enterprise as you run it. No changes are made to accounting, pricing rules, or order posting — this is a display layer over data the POS already loads, so performance impact on the grid is negligible.

Delivery is build-to-order: ECOSIRE builds, installs, and supports this after you request a quotation — it is not an existing download. We start with a short scoping call to confirm your Odoo version and edition, how you want the price computed (which pricelist, tax display, multi-currency behavior), and any per-register differences. Typical delivery is one working week from confirmed scope, including UAT on a staging copy of your database before we touch production. Pricing starts from $999 (indicative, single-company base scope); multi-company setups, multiple pricelists or complex tax display rules, additional register-specific behaviors, and cross-version builds increase the quoted scope. You receive a fixed quote after the scoping call, never a surprise invoice.

lo que obtienes

  • Installable source code for your version — a self-contained module targeting your exact Odoo series and edition
  • Installation and configuration on your environment (or a guided install session for your team)
  • Technical documentation: manifest, models, config fields, asset bundle, and OWL/QWeb patch points
  • End-user guide plus a live training session for cashiers and POS administrators
  • Post-go-live support window for defect fixes and configuration adjustments
  • UAT on a staging copy of your database with a documented rollback plan before production deployment
  • Git repository handover with full commit history and tagged release
  • Version-compatibility notes covering the 17.0/18.0/19.0 differences relevant to your build

¿Para quién es esto?

Retail operations manager

Runs multiple registers and wants faster, more accurate checkout. Needs cashiers to see prices at a glance so they stop tapping into products or keeping printed price sheets at the till.

Odoo administrator / in-house IT

Maintains the company's Odoo instance and wants a clean, upgrade-friendly module rather than hacked core files. Needs proper `pos.config` settings, documented patch points, and a git repo they can maintain.

POS cashier / floor staff

Serves customers directly and fields constant price-check questions. Needs the price visible on the product card before adding it to the order to answer walk-up questions and avoid wrong-item entries.

Franchise or multi-store owner

Operates several locations with different pricelists and tax rules. Needs per-register control over how prices display so each store shows the correct tax-in or tax-out figure.

Cómo se compara POS Show Product Price

CriterioECOSIREConstrucción personalizadaCompetidorNativo de Odoo
AvailabilityBuild-to-order; installed and supported for your exact versionDepends on your dev team's backlog and skillsInstant download, but built for a generic OdooNot available — no such option in core
Price shown on cardYes, resolved through your active pricelist and tax displayPossible, if your team builds it correctlyUsually shows list price only, may ignore pricelist/taxNo — card shows image and name only
Version fit (17/18/19)Built and tested against your exact series and editionYour team owns cross-version differencesOne build; may lag or break on your versionN/A
Tax & pricelist accuracyFollows `pos.config` pricelist, UoM, tax-in/out settingOnly as correct as your implementationOften static list price, tax handling variesN/A
ConfigurabilityPer-register `pos.config` settings for display optionsWhatever you scope and buildFixed to the module author's assumptionsNone
Upgrade pathScoped migration + git repo handoverYou maintain it every upgradeWait for vendor to update, if they doN/A
SupportPost-go-live support window from the builderInternal onlyVendor ticket queue, quality variesOdoo standard support only
Total effort for youScoping call, then we deliver and trainFull spec, build, test, and maintain in-houseInstall yourself, hope it fits your setupLive with the limitation

Preguntas frecuentes sobre POS Show Product Price

Is this an existing app I can download and install right now?

No. This is a build-to-order module. ECOSIRE builds, installs, and supports it for your specific Odoo version and edition after you request a quotation. You receive installable source code and a git repository, but it is made to order rather than pulled from a public app store.

How long does delivery take?

Typical delivery is one working week from confirmed scope. That window includes building against your exact Odoo series, UAT on a staging copy of your database, and the training session. Simple single-register, single-pricelist scopes land toward the shorter end; multi-company or complex tax-display requirements take longer.

How does pricing and scoping work?

Pricing starts from $999, which is indicative for a single-company base scope. After a short scoping call we confirm your version, edition, pricelist and tax-display needs, and any per-register behavior, then give you a fixed quote. Multi-company setups, multiple pricelists, complex tax rules, and cross-version builds increase the quoted scope — but you always get a firm number before work begins.

Which Odoo versions and editions are supported?

We build for Odoo 17.0, 18.0, and 19.0, Community or Enterprise. The POS front end changed meaningfully across these releases, so we target the exact version you run rather than shipping one build for all. Tell us your version on the scoping call and we build to match.

What about support and future Odoo upgrades?

Every build includes a post-go-live support window for defect fixes and configuration adjustments. Because the POS front end can change between major Odoo releases, migrating the module to a future version (for example 19.0 to a later series) is quoted as a separate scoped update. We hand over the git repo so your team can also maintain it if you prefer.

Will the price on the card always match what the customer pays?

Yes — that is the point. We resolve the displayed price through the same active `pos.config` pricelist, unit of measure, and tax-display setting the POS uses when a product is added, so the badge matches the order line. If a product has no resolvable price, we show no badge rather than a misleading zero.

Does it modify Odoo core or slow down the POS?

No core files are edited. We patch the OWL component and inherit the QWeb template through a proper module, and the badge reads only data already loaded in the POS session — no extra server calls per card. Grid render impact is negligible, and the POS keeps working offline exactly as native does.

Solicitar presupuesto

POS Show Product Price

A build-to-order Odoo Point of Sale module that renders each product's price directly on its selection card in the POS product grid, so cashiers see prices at a glance without opening a product. ECOSIRE scopes, builds, installs, and supports it on your Odoo 17, 18, or 19.

  • Renders the unit price as a styled badge directly on each product card in the POS selection grid, no product tap required
  • OWL component patch of the POS `ProductCard` plus QWeb template inheritance for the card markup — no core files edited
  • Price is resolved through the active `pos.config` pricelist so the badge matches what lands on the order line
  • Tax-display aware: shows tax-included or tax-excluded price following the POS `iface_tax_included` setting

Solicitar presupuesto

Cuéntanos tus necesidades de POS Show Product Price y te enviaremos precios, opciones de licencia y una propuesta a medida, normalmente en un día hábil.

Sin pago ahora. Esto envía una solicitud de presupuesto a nuestro equipo; te responderemos por correo con precios y próximos pasos.