Ir al contenido
Odoo Menú
  • Iniciar sesión
  • Pruébalo gratis
  • Aplicaciones
    Finanzas
    • Contabilidad
    • Facturación
    • Gastos
    • Hoja de cálculo (BI)
    • Documentos
    • Firma electrónica
    Ventas
    • CRM
    • Ventas
    • TPV para tiendas
    • TPV para restaurantes
    • Suscripciones
    • Alquiler
    Sitios web
    • Creador de sitios web
    • Comercio electrónico
    • Blog
    • Foro
    • Chat en directo
    • e-learning
    Cadena de suministro
    • Inventario
    • Fabricación
    • PLM
    • Compra
    • Mantenimiento
    • Calidad
    Recursos Humanos
    • Empleados
    • Reclutamiento
    • Ausencias
    • Evaluación
    • Referencias
    • Flota
    Marketing
    • Marketing social
    • Marketing por correo electrónico
    • Marketing por SMS
    • Eventos
    • Automatización de marketing
    • Encuestas
    Servicios
    • Proyecto
    • Partes de horas
    • Servicio de campo
    • Servicio de asistencia
    • Planificación
    • Citas
    Productividad
    • Conversaciones
    • Inteligencia artificial
    • IoT
    • VoIP
    • Información
    • WhatsApp
    Aplicaciones de terceros Studio de Odoo Plataforma de Odoo Cloud
  • Sectores
    Comercio al por menor
    • Librería
    • Tienda de ropa
    • Tienda de muebles
    • Tienda de ultramarinos
    • Ferretería
    • Juguetería
    Alimentación y hostelería
    • Bar y pub
    • Restaurante
    • Comida rápida
    • Casa de huéspedes
    • Distribuidor de bebidas
    • Hotel
    Inmueble
    • Agencia inmobiliaria
    • Estudio de arquitectura
    • Construcción
    • Gestión inmobiliaria
    • Jardinería
    • Asociación de propietarios
    Consultoría
    • Asesoría contable
    • Partner de Odoo
    • Agencia de marketing
    • Bufete de abogados
    • Adquisición de talentos
    • Auditorías y certificaciones
    Fabricación
    • Textil
    • Metal
    • Muebles
    • Alimentos
    • Cervecería
    • Regalos corporativos
    Salud y bienestar
    • Club deportivo
    • Óptica
    • Gimnasio
    • Especialistas en bienestar
    • Farmacia
    • Peluquería
    Oficios
    • Servicios de mantenimiento
    • Hardware y soporte técnico
    • Sistemas de energía solar
    • Zapatero
    • Servicios de limpieza
    • Servicios de calefacción, ventilación y aire acondicionado
    Otros
    • Organización sin ánimo de lucro
    • Agencia de protección del medio ambiente
    • Alquiler de vallas publicitarias
    • Estudio fotográfico
    • Alquiler de bicicletas
    • Distribuidor de software
    Explorar todos los sectores
  • Comunidad
    Aprender
    • Tutoriales
    • Documentación
    • Certificaciones
    • Formación
    • Blog
    • Podcast
    Potenciar la educación
    • Programa de formación
    • Scale Up! El juego empresarial
    • Visita Odoo
    Obtener el software
    • Descargar
    • Comparar ediciones
    • Versiones
    Colaborar
    • GitHub
    • Foro
    • Eventos
    • Traducciones
    • Convertirse en partner
    • Servicios para partners
    • Registrar tu asesoría contable
    Obtener servicios
    • Encontrar un partner
    • Encontrar un asesor fiscal
    • Contacta con un experto
    • Servicios de implementación
    • Referencias de clientes
    • Ayuda
    • Actualizaciones
    GitHub YouTube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Solicitar una demostración
  • Precios
  • Ayuda
Debe estar registrado para interactuar con la comunidad.
Todas las publicaciones Personas Insignias
Etiquetas (Ver todo)
odoo accounting v14 pos v15
Sobre este foro
Debe estar registrado para interactuar con la comunidad.
Todas las publicaciones Personas Insignias
Etiquetas (Ver todo)
odoo accounting v14 pos v15
Sobre este foro
Ayuda

ODOO 19 Problem with Product Availability Status

Suscribirse

Reciba una notificación cuando haya actividad en esta publicación

Esta pregunta ha sido marcada
ecommerce19.0
2 Respuestas
1421 Vistas
Avatar
Jean-Sebastien Dupuis
Odoo 19.0 added a Google Merchant XML feed which is a great feature for online retailers and goes hand-in-hand with product markup/snippets. Odoo 19.0 also has a Click & Collect function for retailers that have both an eCommerce and a physical store. Unfortunately, both features fail when it comes to stock availability status. I hope the following constructive feedback is considered for a future release of our favorite ERP. (NB. we are using Odoo Online so not looking for a 3rd party app)

Google supports 4 different values for stock availability status:

- In stock [in_stock]
- Out of stock [out_of_stock]
- Preorder [preorder]
- Backorder [backorder]

Source: https://support.google.com/merchants/answer/7052112?visit_id=637049928698613640-3024115257&rd=1#price_and_availability


All four of them are listed as recognized status by schema.org.

Source: https://schema.org/ItemAvailability


In Odoo 19, when we sell a product (Goods more specifically), we can opt to "Track Inventory".
- When the Quantity on Hand is positive, the product shows as "Available" on the front end and "InStock" in product markup.
- When the Quantity on Hand is < 1, the product is marked as "Out of Stock" on the front end and "OutOfStock" in the markup.

All good so far.

As a retailer, we also want to take pre-orders for high-demand products that are not released yet on the market (preorder). We also want customers to be able to place orders for old products we can purchase from our suppliers but that we don't carry in our regular inventory (backorder). To achieve this in Odoo, we can tick the "Sell when out-of-Stock" option in the Sales tab of the product template.

This is where things go wrong.

A product with Quantity on Hand < 1 and Sell when out-of-Stock = TRUE shows as "Available" to customers on the front end. It shows as "In Stock" in the Google Merchant XML feed (which ends up showing in Free Listings and in Google Ads). The product shows as in stock in the page markup. This leads to customers placing orders on our Odoo website thinking the product is in stock or even showing up at the store thinking the product is on shelf (in the case of Click & Collect). We disappoint walk-in customers and we have to refund online orders.

It is true that the terms "Available" and "In stock" are not the same but in a buyer's mind "available" means "i can get it right now". It generates friction and leads to bad customer experience. To temporarily solve the problem, we had to put custom code to hide the availability block on the product page. Better show nothing than wrong data.

SOLUTION

The first improvement would be to change the stock status to "backorder" when the "Quantity on Hand" is < 1 and "Sell when out-of-Stock" = TRUE (even better, look at the "Free to Use" field that takes reservations into consideration). Customers should see "Out of Stock" on the product page but still be able to "Add to cart". Accepting backorders in our industry is crucial given the numbers of different products on the market.

The second improvement to introduce the "preorder" status would probably require the addition of a Release Date field. Not a “must have” but “nice to have”.
- quantity on Hand < 1, "Sell when out-of-Stock" = TRUE, AND today < Release Date -> status = preorder
- quantity on Hand < 1, "Sell when out-of-Stock" = TRUE, AND today > Release Date -> status = backorder

We understand that Odoo is built for many types of businesses and different industries, but we believe many retailers would benefit from this improvement. This would put Odoo’s website app in line with Google standards.


I have sent this feedback to Odoo but would like to know if other business owners face the same problem.

0
Avatar
Descartar
Avatar
Mohammed.Samy
Mejor respuesta

Hi there,

Thank you for detailing this so thoroughly. You are absolutely not alone in this—many retailers using Odoo face this exact friction point. You hit the nail on the head regarding the disconnect between Odoo’s internal ordering logic ("Can we sell it?") and Google’s strict schema requirements ("Is it physically on the shelf?").

To add to the urgency of your feature request: this isn't just a bad customer experience issue; it's a Google Merchant Center (GMC) compliance risk. GMC is notoriously strict about availability mismatches. If their bots or manual reviewers notice that items submitted as in_stock in the XML feed actually behave as backorders on the site (or have long shipping delays), they will issue preemptive item disapprovals or even suspend the Merchant account for misleading availability.

While we wait and advocate for Odoo to implement backorder and preorder natively into the core logic, here are two actionable ways you can fix this in Odoo Online right now without needing a third-party app:

1. Utilize the "Out-of-Stock Message" Field

While ribbons are great for visual cues, you can directly address the frontend text issue using standard Odoo features.

  • When you check "Continue Selling" (formerly "Sell when out-of-Stock"), Odoo surfaces an "Out-of-Stock Message" field on the eCommerce tab of the product template.

  • Instead of leaving the default behavior, explicitly write: "Available for Backorder - Ships in [X] Days." This overrides the generic "Available" assumption and immediately sets the right expectation for retail and Click & Collect customers before they add it to their cart.

2. Modify the XML Feed & Schema via QWeb Views (Developer Mode)

Since you are on Odoo Online, you cannot install custom Python modules, but you can edit QWeb views to fix your Google Merchant XML feed and page schema.

If you turn on Developer Mode, you can navigate to Settings > Technical > User Interface > Views. You can search for the Google Merchant feed template and the website product schema template. You can wrap the availability output in a simple conditional t-if statement based on free_qty.

Here is the logic concept you can apply to the QWeb view:

XML

<!-- Check if physically in stock -->
<t t-if="product.sudo().free_qty &gt; 0">
    <g:availability>in_stock</g:availability>
</t>
<!-- Check if out of stock but allowed to backorder -->
<t t-elif="product.allow_out_of_stock_order">
    <g:availability>backorder</g:availability>
</t>
<!-- Otherwise, it's out of stock -->
<t t-else="">
    <g:availability>out_of_stock</g:availability>
</t>

Note: If you use Odoo Studio, you could even add a custom x_release_date field to your product templates and add another t-elif to output preorder if datetime.date.today() < product.x_release_date!

Your proposed solution for a future Odoo release is perfectly aligned with modern eCommerce standards. I highly recommend submitting this as a feature request on the official Odoo GitHub repository if you haven't already. If you post the GitHub link here, I (and likely many others) will gladly upvote it!


-1
Avatar
Descartar
Avatar
Vivek Kundaliya
Mejor respuesta

This is a well-identified limitation in Odoo 19's eCommerce stock availability display, and you have described it very clearly. You are correct that the current behavior is confusing for customers.


Current behavior explanation: When Sell when out of Stock is enabled, Odoo treats the product as orderable regardless of stock, and the frontend label shows Available even when the physical stock is zero. This is technically correct from Odoo's business logic perspective (the product CAN be ordered), but it is misleading from a customer-facing standpoint and misaligns with Google Merchant Center's availability taxonomy.


What you can do today without custom code:


  1. For products where you want to clearly signal to customers that the item is not physically in stock but can still be ordered (backorder), you can use the product description or a custom ribbon/badge. In eCommerce > Products, you can add a ribbon (like Pre-order or Available to Order) via Website > eCommerce > Products > Ribbons. This gives customers a visual signal without changing the Add to Cart behavior.

2. For the Google Merchant XML feed issue specifically, since you are on Odoo Online, you can submit feedback directly to Odoo support. This is exactly the type of product improvement that gets prioritized when multiple merchants report it.


3. You can partially work around this by not enabling Sell when out of Stock globally, and instead managing availability manually: when stock hits zero and you want to take backorders, update the product to allow backorders at that point.


Your suggested improvement (showing Out of Stock on the product page while still allowing Add to Cart for backorderable products) is a very reasonable product feature request and aligns with how most eCommerce platforms handle this. Submitting this via Odoo's official feedback channel or voting on the GitHub issue tracker is the best path to getting it implemented natively.

-1
Avatar
Descartar
¿Le interesa esta conversación? ¡Participe en ella!

Cree una cuenta para poder utilizar funciones exclusivas e interactuar con la comunidad.

Inscribirse
Publicaciones relacionadas Respuestas Vistas Actividad
Odoo18: E-commerce mini cart now showing
ecommerce
Avatar
Avatar
1
may 26
3770
Ribbons and badges transparency and position
ecommerce
Avatar
0
may 26
1
ecommerce and taxes Resuelto
ecommerce
Avatar
Avatar
1
feb 26
1652
shdljaokpalkdjcvzxnkclzkldakfjbx
19.0
Avatar
0
feb 26
116
Installed Apps Persist After Docker Volume Reset in Odoo 19
19.0
Avatar
Avatar
2
feb 26
1502
Comunidad
  • Tutoriales
  • Documentación
  • Foro
Código abierto
  • Descargar
  • GitHub
  • Runbot
  • Traducciones
Servicios
  • Alojamiento Odoo.sh
  • Ayuda
  • Actualizar
  • Desarrollos personalizados
  • Educación
  • Encontrar un asesor fiscal
  • Encontrar un partner
  • Convertirse en partner
Sobre nosotros
  • Nuestra empresa
  • Activos de marca
  • Contacta con nosotros
  • Puestos de trabajo
  • Eventos
  • Podcast
  • Blog
  • Clientes
  • Información legal • Privacidad
  • Seguridad
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk Slovenščina Español (América Latina) Español Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo es un conjunto de aplicaciones empresariales de código abierto que cubre todas las necesidades de tu empresa: CRM, comercio electrónico, contabilidad, inventario, punto de venta, gestión de proyectos, etc.

La propuesta única de valor de Odoo es ser muy fácil de usar y estar totalmente integrado.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now