OdooWiki OCA HUB

Sale Stock Line Customer Reference

sale_stock_line_customer_ref folder_open OCA/sale-workflow open_in_new
Sales/Sales License: AGPL-3

This module allows you to add a customer reference on a sale order line. Lines sharing the same product but different customer references won't be merged together in stock transfers.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Add a customer reference on sale order lines and carry it through to delivery operations, packages and stock moves, so lines with the same product but different references are not merged.

This module adds a free-text "Customer Ref." field on sale order lines. You can fill it in the order lines list (hidden by default, can be shown) or in the line detail form.

When the order is confirmed, the reference is copied onto the related stock moves and shown on the delivery order, on the detailed operations screen and on the move line form, but only when a reference exists.

  • Moves are no longer merged when their customer reference differs, so two lines of the same product with different references stay separate in the transfer.
  • The reference is also stored on packages: when a package is used as result package on an operation, its customer reference is updated with the references of the lines it contains, and cleared when the package is no longer used.
  • A "Customer Ref." field is added on packages, visible in the package form.

Technical helper fields decide whether the "Customer Ref." column is displayed on the transfer, on package levels and on the detailed operations list, so the column only appears when relevant. No new menus or reports are added; the changes appear inside existing Sales and Inventory screens.

Depends on

sale_stock
Models and fields (6)
  • stock.move · extends an existing modelcustomer_ref, customer_ref_sale_line_id (Sale Line With Customer Ref.)
  • stock.picking · extends an existing modelhas_customer_ref
  • sale.order.line · extends an existing modelcustomer_ref (Customer Ref.)
  • stock.move.line · extends an existing modelcustomer_ref
  • stock.package_level · extends an existing modelhas_customer_ref
  • stock.quant.package · extends an existing modelcustomer_ref (Customer Ref.)

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 2 confirmed, 7 with no information of 9 versions.

Sources · Odoo 18.0

Confirmed on 2026-11-03 in branch 18.0 of OCA/sale-workflow.

terminal Installation and usage

OCA documentation · Odoo 18.0

By default the customer reference field is not displayed on the sale order form, you have to enable it in the list of optional fields.

We want the customer ref on the package because the label should be printed from there (like all other kind of existing labels). As we can't get the right stock.move.line/stock.move easily from the package it is easier to store the Customer Ref. of the move/move_line on the package when this one is assigned to the move line. Also, a (destination) package could contain different products (so different moves), and these moves could have different Customer Ref., all of them will be concatened in the package => ", ".join(customer_ref_of_all_moves_link_to_this_package)

No verified information in OCA: Installation, Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.