One grid for every variant order across Sales and Purchase.
Enter quantities for every size, color, and attribute combination in a single stock-aware grid — with axis control, live totals, and color swatches built in.
The problem
Selling or stocking apparel, footwear, or any product with multiple attributes means dozens or hundreds of SKUs. Odoo’s native order form puts one variant on one line, so a 40-SKU wholesale order means opening the product selector forty times and typing each quantity by hand — slow, error-prone, and blind to stock.
The solution
Variant Matrix Grid Entry turns every attribute combination into one scrollable grid on Sales and Purchase orders. Pick which attribute is rows and which is columns, see per-cell free and forecasted stock with green/red availability coding, and generate every order line from the grid in a single click.
Everything a variant-heavy catalog needs
Every capability below is implemented in the module.
User-selectable row/column axis
Choose which product attribute drives the grid’s rows and which drives its columns, per product template — no more auto-assigned axes that break down past two attributes.
Per-cell free & forecasted stock
Every grid cell shows live free stock and forecasted stock pulled straight from Inventory, so quantities are entered with real availability in view, not blind.
Green/red availability coding
Cells are color-coded the instant the grid opens — green for in-stock, red for out-of-stock — for an immediate visual read of what can actually ship.
Color swatch headers
Color attribute values render as real color swatches on row and column headers instead of plain text names, making apparel and textile grids faster to scan.
Row, column, and grand totals
A trailing totals column, column-footer totals, and a live grand-total counter tally entered quantities as you type, confirming the order size before you commit.
Sticky headers, sticky first column
Header row and the leading attribute column stay pinned in view while you scroll a large grid, so labels are never lost in a long list of variants.
Hide discontinued variants
A per-template toggle greys out or removes discontinued, non-orderable variants from the grid so the matrix only shows what can actually be sold or purchased.
Works on Sales and Purchase
The same enhanced matrix dialog powers both Sales and Purchase order lines, so one module covers quoting, order-taking, and procurement without buying separate apps.
Matrix Products app & settings
A dedicated Matrix Products menu lists every matrix-enabled template, and a Settings block lets you toggle stock, forecast, swatches, and matrix-by-default for the whole database.
How it works
Enable matrix on a template
Open a product template, set Variant Selection to Matrix, and pick which attribute becomes the Matrix Column Axis.
Open the grid on an order
Add the product to a Sales or Purchase order and click the configuration icon to open the enhanced matrix dialog.
Enter quantities with stock in view
Type quantities per cell while free/forecasted stock, availability coloring, and live totals guide the entry.
Confirm to generate every line
Close the dialog and every non-zero cell becomes an order line in one step — no more one-variant-at-a-time entry.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
Yes. Each product template has a Matrix Column Axis field, so you decide per product which attribute drives columns and which drives rows — no fixed or auto-assigned layout.
Buy it on the Odoo App Store
Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.
Variant Matrix Grid Entry
A stock-aware product matrix on sales and purchase orders with selectable axes, per-cell free and forecasted stock, color swatches and live totals.
Buy on Odoo App Store