OdooWiki OCA HUB

Stock Picking Invoice Link

stock_picking_invoice_link folder_open OCA/stock-logistics-workflow open_in_new
Warehouse Management License: AGPL-3

The base module used by sale_stock_picking_invoice_link and purchase_stock_picking_invoice_link to adds a link between pickings and invoices as well as on the lines.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Links stock transfers (pickings) with their customer invoices and refunds, so you can jump from an invoice to its deliveries and from a delivery to its invoices, and see which stock moves each invoice line covers.

This module connects warehouse deliveries with the invoices that were created from them, in both directions.

On a customer invoice you get a "Delivery" button in the top button box showing how many related transfers exist; clicking it opens the list of those transfers, or directly the single transfer's form. On a stock transfer you get an "Invoice" button showing the number of related invoices, which opens them in the same way. Both buttons only appear when there is something to show, and the invoice button is limited to users with invoicing rights.

On each stock move form, a read-only "Invoice Lines" section lists the invoice lines linked to that move, again only for invoicing users. On invoice lines, the related stock moves are stored behind the scenes so the link can be computed.

Business rules: once a stock move is done and already linked to an invoice line, its quantity cannot be changed — Odoo raises an error to prevent the delivered quantity from disagreeing with what was invoiced. When you create a credit note or a refund invoice, the link to the original stock moves is carried over, and for returns the new invoice lines are linked to the corresponding return moves.

The module touches account.move, account.move.line, stock.picking, stock.move and the invoice reversal wizard.

Depends on

stock_account
Models and fields (5)
  • stock.move · extends an existing modelinvoice_line_ids (Invoice Line)
  • account.move · extends an existing modelpicking_ids (Related Pickings), picking_count (Pickings count)
  • stock.picking · extends an existing modelinvoice_ids (Invoices), invoice_count (Number of Invoices)
  • account.move.line · extends an existing modelmove_line_ids (Related Stock Moves)
  • account.move.reversal · extends an existing model

Text generated by AI (DeepSeek) from reading the Odoo 19.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: 8 confirmed, 1 with no information of 9 versions.

Sources · Odoo 19.0

Confirmed on 2026-11-03 in branch 19.0 of OCA/stock-logistics-workflow.

terminal Installation and usage

OCA documentation · Odoo 19.0
  • Create a Sales Order and confirm.
  • Deliver its pickings totally or partially.
  • Create an invoice of the goods delivered.
  • If you open invoice form, you must see a new Pickings tab with information about them.

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.