Steersman’s Website Availability Logic in Odoo

Website availability

Standard inventory availability does not always tell the full story.

A product may physically exist in a warehouse but still be unavailable for sale because it is reserved, scheduled for shipment, or waiting to complete the receiving process. Other products may be available for purchase even when they are temporarily out of stock because they can usually ship within a predictable lead time.

Steersman’s Website Availability Logic gives businesses greater control over how products are presented on an Odoo eCommerce website. Availability rules can determine whether a product remains visible, displays an availability message, shows its price, allows customers to add it to their cart, or is excluded from the website entirely.

Show Availability That Reflects Your Actual Business

Odoo’s standard inventory values may not always match the quantity a business wants to present to online customers.

For example, stock in a warehouse input location may have been received physically but may not yet be inspected, processed, or ready for sale. Similarly, a quantity may appear on hand even though it has already been reserved for another order.

Steersman’s availability logic allows the website quantity to be calculated using inventory information such as:

  • Physical on-hand quantity
  • Available quantity
  • Reserved quantity
  • Incoming quantity
  • Outgoing quantity
  • Stock in receiving or input locations
  • Forecasted quantity
  • Product category
  • Product sales ranking

Businesses can combine these values into a custom formula that more accurately represents the quantity customers should consider available.

For example:

website_qty = max(0, available_qty - outgoing_qty - input_location_qty)

With this formula, Odoo begins with the available quantity, subtracts quantities scheduled to leave the warehouse, and excludes products that are still in input locations. The formula also prevents the website quantity from falling below zero.

Communicate Realistic Shipping Expectations

A product does not always need to be removed from the website simply because its calculated availability reaches zero.

Instead, businesses can display a helpful message that sets an appropriate expectation for the customer.

For example:

"Usually ships within 3 days" if float(website_qty) <= 0 else ""

When the calculated website quantity is greater than zero, no additional message appears. When the quantity reaches zero or below, the customer sees:

Usually ships within 3 days

This allows the product to remain available for purchase while giving the customer more accurate information about when the order may ship.

Other customer-facing messages could include:

  • Currently unavailable
  • Contact us for lead time
  • Available by special order
  • Temporarily out of stock
  • Request availability information

The message can be applied across an entire product or configured more specifically for individual product variants.

Control How Products Appear Online

Website availability rules can control more than an inventory message. Depending on the product and business requirements, a rule can change several parts of the customer’s shopping experience.

Remove Products from Website Listings

Products that should no longer be displayed can be unlisted when the rule’s conditions are met.

This may be useful for discontinued products, restricted products, seasonal items, or products that are temporarily unavailable for browsing or sale.

Hide Product Pricing

Some products require a custom quote, approval, special configuration, or additional customer information before a price can be provided.

For these products, the availability rule can hide the website price while allowing the product page to remain visible.

Hide the Add to Cart Button

A product may need to remain visible for informational or marketing purposes without being available for immediate online purchase.

Steersman’s availability logic can hide the Add to Cart button for products that:

  • Require a quote
  • Have purchasing restrictions
  • Are discontinued
  • Need special handling
  • Are temporarily unavailable for online ordering

Display an Alternate Call to Action

Instead of showing Add to Cart, the product page can display a more appropriate call to action, such as:

  • Contact Us
  • Request a Quote
  • Call for Availability

This helps guide the customer toward the correct next step rather than presenting a purchasing option that does not match the product’s availability or sales process.

Apply Different Rules to Different Products

Not every product should follow the same availability process.

A business may want most products to use a standard inventory calculation while certain categories, variants, or special-order items follow different rules.

The availability logic includes exceptions that can identify when a different rule should apply. Exceptions can be based on specific product conditions, quantities, categories, or other supported criteria.

For example:

  • Stocked products can use standard available inventory.
  • Special-order products can display a lead-time message.
  • Quote-only products can hide the price and Add to Cart button.
  • Discontinued products can be removed from the website.
  • Certain product categories can use a separate availability calculation.

This gives businesses a consistent default rule while still supporting products that require different behavior.

Support Multiple Odoo Websites

For companies operating more than one website, availability rules can be assigned to a specific site.

This allows each website to have its own availability behavior. For example, a wholesale website and a retail website could display different messages, pricing options, purchasing actions, or product availability based on the needs of their respective customers.

Steersman’s Website Availability Logic connects Odoo inventory information with the way products are presented to customers online.

The result is a more flexible and informative customer experience:

  • Customers receive clearer shipping and availability expectations.
  • Products can remain visible even when immediate stock is unavailable.
  • Quote-only and restricted products can follow the correct sales process.
  • Inventory that is reserved, outgoing, or still being received can be excluded from website availability.
  • Different products and websites can follow different rules.