TIP: You can type at any time to perform a new search.
WMS Accounting
stock_account · odoo/odoo
Security findings
- Repository
- odoo/odoo · module folder
- Module version
- 1.1
- Category
- Supply Chain/Inventory
- Folder size
- 2.93 MB
- License
- LGPL-3
- Application
- No
- Auto-installable
- Yes
- Website
- None
- Last tracking update
- 2026-10-05 00:19:46
- Authors
- Odoo S.A.
- Maintainers
- Odoo S.A.
- Committers
- Raphael Collet, Thibault Delavallée, odoo, Odoo Translation Bot, Christophe Matthieu, Géry Debongnie, Arnold Moyaux, Xavier-Do, Victor Feyens, William Henrotin, svs-odoo, Tiffany Chang (tic), Gorash, Pierre Paridans, william-andre, JF Aubert, David (dafr), PNO, John Laterre (jol), Richard deMeester, Adrien Widart (awt), Victor Piryns (pivi), Gauthier Wala (gawa), Yosua Nicolaus, Dylan Kiss (dyki), Paweł Fertyk, Arnaud Sibille, InCeyN, lase@odoo.com, Quentin Wolfs, reka-odoo, Louis Gobert, Harsh Shah, Stéphane Diez, Aungkokolin1997, dhha-odoo, Hammad Arif, Hesham Saleh, Saif (segn), Victor Miguel Armenta Carrillo, Christopher Maloney (cmal), elhayyany, pkgu-odoo, Mohammad Abdulmoneim (abdu), djameltouati, Michaël Mattiello, MaximeNoirhomme, chha-odoo, bona-odoo, plha-odoo, Krzysztof Magusiak (krma), Akash Pandey, Robin Engels (roen), sagu-odoo, kdes-odoo, bhna-odoo, Dirk Douglas, Ze Chen (zeche), agbr-odoo, Lulu Grimalkin (lugr), Yash Pathak, sawer, Lancelot Semal, Tudor-Calin Panzaru (tupan), Julien Launois (jula), Martin Doyen, Jacob Was (jacw), malb, Saurabh, assh-odoo, Robert Smith (rosm), hossamelgendy1, Merlin Guillaume, Nguyen Nguyen (ngtpn), Léo Gizard (legi), Abdelouahab Laaroussi (abla), Zachary (zavan), Youssef (abyo), Abo Taha, ELCO, lase, Moamen(msho), Khaj-odoo, hapt-odoo, Youssef, Mathias Mathy, ddba-odoo, Kai (kache), Karim Gamaleldin, Chengyan Wang, niyp-odoo, Robert Smith, Jean Schoenlaub, pusu-odoo
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- l10n_ar_stock, l10n_gcc_invoice_stock_account, l10n_in_stock, l10n_it_stock_ddt, mrp_account, pos_stock, project_stock_account, purchase_stock, sale_stock, spreadsheet_dashboard_stock_account, stock_landed_costs
- Description
WMS Accounting module ====================== This module makes the link between the 'stock' and 'account' modules and allows you to create accounting entries to value your stock movements Key Features ------------ * Stock Valuation (periodical or automatic) * Invoice from Picking Dashboard / Reports for Warehouse Management includes: ------------------------------------------------------ * Stock Inventory Value at given date (support dates in the past)
Code Analysis
Views touched (20)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_product_stock_tree_inherit_stock_account |
product.product.stock.list.inherit.stock.account | product.product | list | Inherits stock.product_product_stock_tree |
product_template_form_view_stock_account |
view.template.property.form.stock.account | product.template | form | Inherits stock.product_template_form_view_stock |
product_template_tree_view |
product.template.list.inherit.stock.account | product.template | list | Inherits product.product_template_tree_view |
product_value_form_view |
product.value.form.view | product.value | form | New |
product_value_list_view |
product.value.list.view | product.value | list | New |
product_value_search_view |
product.value.search.view | product.value | search | New |
res_config_settings_view_form |
res.config.settings.view.form.inherit.stock.account | res.config.settings | form | Inherits stock.res_config_settings_view_form |
stock_account_report_invoice_document |
stock_account_report_invoice_document | ir.ui.view | qweb | Inherits account.report_invoice_document |
stock_avco_report_view_list |
stock.avco.report.view.list | stock.avco.report | list | New |
stock_inventory_adjustment_name_form_view_inherit_stock_account |
stock.inventory.adjustment.name.form.view.inherit.stock.account | stock.inventory.adjustment.name | form | Inherits stock.stock_inventory_adjustment_name_form_view |
stock_move_view_list |
stock.move.view.list.inherit.stock.account | stock.move | list | Inherits stock.view_move_tree |
stock_move_view_list_valuation |
stock.move.view.list.valuation | stock.move | list | New |
stock_move_view_pivot |
stock.move.view.pivot.inherit.stock.account | stock.move | pivot | Inherits stock.view_move_pivot |
view_location_form_inherit |
stock.location.form.inherit | stock.location | form | Inherits stock.view_location_form |
view_move_form |
account.move.form | account.move | form | Inherits account.view_move_form |
view_move_search |
stock.move.search.inherit.stock.account | stock.move | search | Inherits stock.view_move_search |
view_production_lot_form_stock_account |
view.production.lot.form.stock.account | stock.lot | form | Inherits stock.view_production_lot_form |
view_stock_quant_tree_editable_inherit |
stock.quant.list.editable.inherit | stock.quant | list | Inherits stock.view_stock_quant_tree_editable |
view_stock_quant_tree_inherit |
stock.quant.list.inherit | stock.quant | list | Inherits stock.view_stock_quant_tree |
view_stock_quant_tree_inventory_editable_inherit_stock_account |
stock.quant.inventory.list.editable.inherit.stock.account | stock.quant | list | Inherits stock.view_stock_quant_tree_inventory_editable |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (22)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (3)
-
closing_datetimeDatetimestring='Closing Date' -
product_value_idOne2many → product.valueargs: 'product.value', 'account_move_id' -
stock_move_idsOne2many → stock.movestring='Stock Move' args: 'stock.move', 'account_move_id'
-
action_show_product_value(self) -
button_cancel(self) -
button_draft(self) -
copy_data(self, default=None)
New fields (2)
-
cogs_move_idsMany2many → stock.movecompute='_compute_cogs_move_ids'help='Inventory moves used to compute COGS values.'string='COGS stock moves' args: 'stock.move' -
stock_move_idMany2one → stock.moveindex='btree_not_null' args: 'stock.move'
No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (2)
-
anglo_saxon_accountingBooleancompute='_compute_anglo_saxon_accounting'help='If checked, the product will be valued using the Anglo-Saxon accounting method.'string='Use Anglo-Saxon Accounting' -
property_cost_methodSelectionondelete={'fifo': 'set default'}selection_add=[('fifo', 'First In First Out (FIFO)')]
-
write(self, vals)
New fields (3)
-
avg_costMonetarycompute='_compute_value'compute_sudo=Truecurrency_field='company_currency_id'string='Average Cost' -
company_currency_idMany2one → res.currencycompute='_compute_value'compute_sudo=Truehelp="Technical field to correctly show the currently selected company's currency that corresponds to the totaled value of the product's valuation layers" args: 'res.currency', 'Valuation Currency' -
total_valueMonetarycompute='_compute_value'compute_sudo=Truecurrency_field='company_currency_id'string='Total Value'
-
create(self, vals_list)@api.model_create_multi -
write(self, vals)
New fields (2)
-
cost_methodSelectionselection_add=[('fifo', 'First In First Out (FIFO)')] -
lot_valuatedBooleancompute='_compute_lot_valuated'help='If checked, the valuation will be specific by Lot/Serial number.'readonly=Falsestore=Truestring='Valuation by Lot/Serial'
-
write(self, vals)
New fields (21)
-
account_move_idMany2one → account.movecopy=Falseindex='btree_not_null'string='Account Move' args: 'account.move' -
adjustmentMonetarycompute='_compute_adjustment'currency_field='currency_id'string='Adjustment' -
company_idMany2one → res.companycompute='_compute_company_id'index=Trueprecompute=Truereadonly=Falserequired=Truestore=Truestring='Company' args: 'res.company' -
computed_value_descriptionTextcompute='_compute_value_description'string='Computed Value Description' -
currency_idMany2one → res.currencyrelated='company_id.currency_id'string='Currency' args: 'res.currency' -
current_valueMonetarycurrency_field='currency_id'related='move_id.value'string='Current Value' -
current_value_descriptionTextcompute='_compute_value_description'string='Current Value Description' -
current_value_detailsCharcompute='_compute_current_value_details'string='Current Value Details' -
dateDatetimedefault=fields.Datetime.nowrequired=Truestring='Date' -
descriptionCharstring='Description' -
lot_idMany2one → stock.lotstring='Lot' args: 'stock.lot' -
move_idMany2one → stock.moveindex='btree_not_null'string='Move' args: 'stock.move' -
new_costFloatmin_display_digits='Product Price' args: 'New Unit Cost' -
new_valueMonetarycurrency_field='currency_id'default=0.0string='New Value' -
old_costFloatmin_display_digits='Product Price' args: 'Old Unit Cost' -
old_valueMonetarycurrency_field='currency_id'default=0.0string='Old Value' -
product_idMany2one → product.productindex=Trueondelete='cascade'string='Product' args: 'product.product' -
product_trackingSelectionrelated='product_id.tracking' -
quantityFloatdigits='Product Unit' args: 'Quantity' -
user_idMany2one → res.usersdefault=<expr>required=Truestring='User' args: 'res.users' -
valueMonetarycurrency_field='currency_id'required=Truestring='Value'
-
action_open_account_move(self) -
create(self, vals_list)@api.model_create_multi
New fields (3)
-
account_production_wip_account_idMany2one → account.accountcheck_company=Truestring='Production WIP Account' args: 'account.account' -
account_production_wip_overhead_account_idMany2one → account.accountcheck_company=Truestring='Production WIP Overhead Account' args: 'account.account' -
cost_methodSelectionondelete={'fifo': 'set default'}selection_add=[('fifo', 'First In First Out (FIFO)')]
-
get_inventory_value(self, at_date=None) -
use_stock_account(self) -
write(self, vals)
New fields (2)
-
group_lot_on_invoiceBooleanimplied_group='stock_account.group_lot_on_invoice' args: 'Display Lots & Serial Numbers on Invoices' -
module_stock_landed_costsBooleanhelp='Affect landed costs on reception operations and split them among products to update their cost price.' args: 'Landed Costs'
No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (15)
-
added_valueFloatcompute='_compute_cumulative_fields'string='Added Value' -
avco_valueFloatcompute='_compute_cumulative_fields'string='AVCO Value' -
company_idMany2one → res.companyrequired=Truestring='Company' args: 'res.company' -
currency_idMany2one → res.currencyrelated='company_id.currency_id'string='Currency' args: 'res.currency' -
dateDaterequired=Truestring='Date' -
descriptionTextrequired=Truestring='Description' -
justificationTextcompute='_compute_justification'string='Justification' -
product_idMany2one → product.productrequired=Truestring='Product' args: 'product.product' -
quantityFloatrequired=Truestring='Added Quantity' -
referenceCharrequired=Truestring='Reference' -
res_model_nameSelectionrequired=Truestring='Resource Model Name' args: [('stock.move', 'Stock Move'), ('product.value', 'Product Value')] -
total_quantityFloatcompute='_compute_cumulative_fields'string='Total Quantity' -
total_valueFloatcompute='_compute_cumulative_fields'string='Total Value' -
user_idMany2one → res.usersrequired=Truestring='User' args: 'res.users' -
valueFloatrequired=Truestring='Value'
-
init(self)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (2)
-
accounting_dateDatehelp='Date at which the accounting entries will be created in case of automated inventory valuation. If empty, the inventory date will be used.' args: 'Accounting Date' -
should_show_accounting_dateBooleancompute='_compute_should_show_accounting_date'
No public methods.
New fields (2)
-
is_valuedBooleancompute='_compute_is_valued'search='_search_is_valued' args: 'Is valued inside the company' -
valuation_account_idMany2one → account.accountdomain=[('account_type', 'not in', ('asset_receivable', 'liability_payable', 'asset_cash', 'liability_credit_card'))]help='Expense account used to re-qualify products removed from stock and sent to this location' args: 'account.account', 'Stock Valuation Account'
No public methods.
New fields (5)
-
avg_costMonetarycompute='_compute_value'compute_sudo=Truecurrency_field='company_currency_id'readonly=Truestring='Average Cost' -
company_currency_idMany2one → res.currencycompute='_compute_value'compute_sudo=True args: 'res.currency', 'Valuation Currency' -
lot_valuatedBooleanreadonly=Truerelated='product_id.lot_valuated'store=False -
standard_priceFloatcompany_dependent=Truegroups='base.group_user'help='Value of the lot (automatically computed in AVCO).\n Used to value the product when the purchase cost is not known (e.g. inventory adjustment).\n Used to compute margins on sale orders.'min_display_digits='Product Price' args: 'Cost' -
total_valueMonetarycompute='_compute_value'compute_sudo=Truecurrency_field='company_currency_id'string='Total Value'
-
create(self, vals_list)@api.model_create_multi -
write(self, vals)
New fields (21)
-
account_move_idMany2one → account.movecopy=Falseindex='btree_not_null' args: 'account.move', 'stock_move_id' -
analytic_account_line_idsMany2many → account.analytic.linecopy=False args: 'account.analytic.line' -
cogs_aml_idsMany2many → account.move.linecompute='_compute_cogs_aml_ids'compute_sudo=Truehelp='Account move lines using this move in order to compute their COGS'string='COGS lines' args: 'account.move.line' -
company_currency_idMany2one → res.currencyreadonly=Truerelated='company_id.currency_id'string='Company Currency' args: 'res.currency' -
invoice_line_idsOne2many → account.move.lineindex='btree_not_null' args: 'account.move.line', 'stock_move_id', 'Invoice Line' -
is_dropshipBooleancompute='_compute_is_dropship'store=Truestring='Is Dropship' -
is_inBooleancompute='_compute_is_in'store=Truestring='Is Incoming (valued)' -
is_outBooleancompute='_compute_is_out'store=Truestring='Is Outgoing (valued)' -
is_valuedBooleancompute='_compute_is_valued'string='Is Valued' -
order_partner_idMany2one → res.partnercompute='_compute_order_partner_id'compute_sql='_compute_sql_order_partner_id'compute_sudo=Truehelp="If the move originates from a document from another company, contains that company's partner, otherwise the move's partner." args: 'res.partner' -
origin_company_idMany2one → res.companycompute='_compute_origin_company_id'compute_sudo=Truehelp='Only set if the move is generated from a document belonging to another company'search='_search_origin_company_id'string='Origin Company' args: 'res.company' -
price_unitFloatargs: 'Price Unit' -
product_value_idsOne2many → product.valueindex='btree_not_null' args: 'product.value', 'move_id', 'Product Value' -
remaining_qtyFloatcompute='_compute_remaining_qty'search='search_remaining_qty'string='Remaining Quantity' -
remaining_valueMonetarycompute='_compute_remaining_value'currency_field='company_currency_id'string='Remaining Value' -
standard_priceFloatcompute='_compute_standard_price'string='Standard Price' -
to_refundBooleancopy=Truedefault=Truehelp='Trigger a decrease of the delivered/received quantity in the associated Sale Order/Purchase Order' args: 'Update quantities on SO/PO' -
valueMonetarycopy=Falsecurrency_field='company_currency_id'help="The current value of the move. It's zero if the move is not valued." args: 'Value' -
value_computed_justificationTextcompute='_compute_value_justification' args: 'Computed Value Description' -
value_justificationTextcompute='_compute_value_justification' args: 'Value Description' -
value_manualMonetarycompute='_compute_value_manual'currency_field='company_currency_id'inverse='_inverse_value_manual' args: 'Manual Value'
-
action_adjust_valuation(self) -
search_remaining_qty(self, operator, value) -
write(self, vals)Editing the done date of a valued move (to the past or the future) shifts the on-hand context of every move in between, so the valuation has to be replayed from the earliest impacted date.
New fields (0)
No new fields.
Public methods (3)-
create(self, vals_list)@api.model_create_multi -
unlink(self) -
write(self, vals)
New fields (1)
-
country_codeCharrelated='company_id.account_fiscal_country_id.code'
No public methods.
New fields (1)
-
country_codeCharrelated='company_id.account_fiscal_country_id.code'
No public methods.
New fields (4)
-
accounting_dateDatehelp='Date at which the accounting entries will be created in case of automated inventory valuation. If empty, the inventory date will be used.' args: 'Accounting Date' -
cost_methodSelectioncompute='_compute_cost_method'selection=[('standard', 'Standard Price'), ('fifo', 'First In First Out (FIFO)'), ('average', 'Average Cost (AVCO)')]string='Cost Method' -
currency_idMany2one → res.currencygroups='stock.group_stock_manager'related='company_id.currency_id' args: 'res.currency' -
valueMonetarycompute='_compute_value'groups='stock.group_stock_manager' args: 'Value'
No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…