| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/18.0/account_cutoff_base |
| VERSION | |
| VERSION | 1.0.1 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, Weblate, OCA-git-bot, oca-ci, vbnext |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-closing |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:30:17 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - onboarding - product - bus - web_tour - html_editor - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module contains the technical basis for other cut-off modules ; it doesn't provide useful features by itself. You need to install other cut-off modules to get the useful features: - the module *account_cutoff_start_end_dates* will manage cut-offs based on start date and end date of invoice/move lines, - the module *account_cutoff_picking* will manage cut-offs based on the pickings. - the module *account_cutoff_accrual_subscription* will manage cut-offs based on subscriptions. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_search |
account.cutoff.line.search | account.cutoff.line | search | New |
account_cutoff_line_tree |
account.cutoff.line.list | account.cutoff.line | list | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.list | account.cutoff.mapping | list | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.list | account.cutoff.tax.line | list | New |
account_cutoff_tree |
account.cutoff.list | account.cutoff | list | New |
res_config_settings_view_form |
cutoff.res.config.settings.form | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
view_tax_form |
account.cutoff.accrual.view_tax_form | account.tax | field | Inherits account.view_tax_form |
auto_reverse
Boolean
help='Automatically reverse created move on following day. Use this if you accrue a value end of period that you want to reverse begin of next period'
company_currency_id
Many2one
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
compute='_compute_cutoff_account_id'
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
precompute=True
readonly=False
store=True
string='Cut-off Account'
tracking=True
cutoff_date
Date
compute='_compute_cutoff_date'
copy=False
precompute=True
readonly=False
store=True
string='Cut-off Date'
tracking=True
cutoff_journal_id
Many2one → account.journal
check_company=True
comodel_name='account.journal'
compute='_compute_cutoff_journal_id'
domain="[('company_id', '=', company_id), ('type', '=', 'general')]"
precompute=True
readonly=False
store=True
string='Cut-off Account Journal'
tracking=True
cutoff_type
Selection
required=True
selection='_selection_cutoff_type'
string='Type'
line_ids
One2many → account.cutoff.line
comodel_name='account.cutoff.line'
inverse_name='parent_id'
string='Cut-off Lines'
move_id
Many2one → account.move
check_company=True
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_partner
Boolean
compute='_compute_move_partner'
precompute=True
readonly=False
store=True
string='Partner on Journal Items'
tracking=True
move_ref
Char
compute='_compute_move_ref'
precompute=True
readonly=False
store=True
string='Reference of the Cut-off Journal Entry'
move_reversal_id
Many2one → account.move
compute='_compute_move_reversal_id'
string='Cut-off Journal Entry Reversal'
args: 'account.move'
source_move_state
Selection
default='posted'
required=True
string='Source Entries'
tracking=True
args: [('posted', 'Posted Entries'), ('draft_posted', 'Draft and Posted Entries')]
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
selection=[('draft', 'Draft'), ('done', 'Done')]
tracking=True
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
string='Total Cut-off Amount'
tracking=True
back2draft(self)
button_line_list(self)
create_move(self)
cutoff_type_label_map(self)
get_lines(self)
unlink(self)
account_id
Many2one → account.account
check_company=True
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help='Amount that is used as base to compute the Cut-off Amount.'
readonly=True
company_currency_id
Many2one
related='parent_id.company_currency_id'
string='Company Currency'
company_id
Many2one → res.company
related='parent_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one → res.currency
readonly=True
string='Currency'
args: 'res.currency'
cutoff_account_code
Char
related='cutoff_account_id.code'
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
check_company=True
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
cutoff_type
Selection
related='parent_id.cutoff_type'
name
Char
notes
Html
origin_move_date
Date
related='origin_move_line_id.move_id.date'
string='Origin Journal Entry Date'
origin_move_id
Many2one
related='origin_move_line_id.move_id'
string='Origin Journal Entry'
origin_move_line_id
Many2one → account.move.line
readonly=True
string='Origin Journal Item'
args: 'account.move.line'
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
price_origin
Char
readonly=True
price_unit
Float
digits='Product Price'
help="Price per unit (discount included) without taxes in the default unit of measure of the product in the currency of the 'Currency' field."
readonly=True
string='Unit Price w/o Tax'
quantity
Float
digits='Product Unit of Measure'
readonly=True
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
default='all'
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
readonly=True
string='Tax Amount'
base
Monetary
currency_field='currency_id'
readonly=True
company_currency_id
Many2one
related='parent_id.company_currency_id'
string='Company Currency'
company_id
Many2one → res.company
related='parent_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
check_company=True
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
tax_id
Many2one → account.tax
check_company=True
required=True
string='Tax'
args: 'account.tax'
No public methods.
account_accrued_expense_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
string='Accrued Expense Tax Account'
account_accrued_revenue_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
string='Accrued Revenue Tax Account'
No public methods.
accrual_taxes
Boolean
default=True
string='Accrual On Taxes'
default_accrued_expense_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Expenses'
default_accrued_expense_tax_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Tax Account for Accrued Expense'
default_accrued_revenue_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Revenues'
default_accrued_revenue_tax_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Tax Account for Accrued Revenue'
default_cutoff_journal_id
Many2one → account.journal
check_company=True
string='Default Cut-off Journal'
args: 'account.journal'
default_cutoff_move_partner
Boolean
string='Partner on Journal Items by Default'
default_prepaid_expense_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Expense'
args: 'account.account'
default_prepaid_revenue_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Revenue'
args: 'account.account'
post_cutoff_move
Boolean
string='Post Cut-off Journal Entry'
No public methods.
accrual_taxes
Boolean
readonly=False
related='company_id.accrual_taxes'
dft_accrued_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
readonly=False
related='company_id.default_accrued_expense_account_id'
dft_accrued_expense_tax_account_id
Many2one
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
readonly=False
related='company_id.default_accrued_expense_tax_account_id'
dft_accrued_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_account_id'
dft_accrued_revenue_tax_account_id
Many2one
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_tax_account_id'
dft_cutoff_journal_id
Many2one
domain="[('type', '=', 'general'), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_cutoff_journal_id'
dft_cutoff_move_partner
Boolean
readonly=False
related='company_id.default_cutoff_move_partner'
dft_prepaid_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
readonly=False
related='company_id.default_prepaid_expense_account_id'
dft_prepaid_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_ids', 'in', company_id)]"
readonly=False
related='company_id.default_prepaid_revenue_account_id'
post_cutoff_move
Boolean
readonly=False
related='company_id.post_cutoff_move'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/17.0/account_cutoff_base |
| VERSION | |
| VERSION | 1.2.0 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, Weblate, OCA-git-bot, oca-ci, thaolt |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-closing |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:20:09 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - onboarding - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | This module contains the technical basis for other cut-off modules ; it doesn't provide useful features by itself. You need to install other cut-off modules to get the useful features: - the module *account_cutoff_start_end_dates* will manage cut-offs based on start date and end date of invoice/move lines, - the module *account_cutoff_picking* will manage cut-offs based on the pickings. - the module *account_cutoff_accrual_subscription* will manage cut-offs based on subscriptions. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_search |
account.cutoff.line.search | account.cutoff.line | search | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
res_config_settings_view_form |
cutoff.res.config.settings.form | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
view_tax_form |
account.cutoff.accrual.view_tax_form | account.tax | field | Inherits account.view_tax_form |
company_currency_id
Many2one
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
default=<expr>
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
string='Cut-off Account'
tracking=True
cutoff_date
Date
copy=False
default=<expr>
string='Cut-off Date'
tracking=True
cutoff_journal_id
Many2one → account.journal
check_company=True
comodel_name='account.journal'
default=<expr>
domain="[('company_id', '=', company_id)]"
string='Cut-off Account Journal'
tracking=True
cutoff_type
Selection
required=True
selection='_selection_cutoff_type'
string='Type'
line_ids
One2many → account.cutoff.line
comodel_name='account.cutoff.line'
inverse_name='parent_id'
string='Cut-off Lines'
move_id
Many2one → account.move
check_company=True
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_partner
Boolean
default=<expr>
string='Partner on Journal Items'
tracking=True
move_ref
Char
default=<expr>
string='Reference of the Cut-off Journal Entry'
source_move_state
Selection
default='posted'
required=True
string='Source Entries'
tracking=True
args: [('posted', 'Posted Entries'), ('draft_posted', 'Draft and Posted Entries')]
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
selection=[('draft', 'Draft'), ('done', 'Done')]
tracking=True
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
string='Total Cut-off Amount'
tracking=True
back2draft(self)
button_line_tree(self)
create_move(self)
cutoff_type_label_map(self)
get_lines(self)
unlink(self)
account_id
Many2one → account.account
check_company=True
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help='Amount that is used as base to compute the Cut-off Amount.'
readonly=True
company_currency_id
Many2one
related='parent_id.company_currency_id'
string='Company Currency'
company_id
Many2one → res.company
related='parent_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one → res.currency
readonly=True
string='Currency'
args: 'res.currency'
cutoff_account_code
Char
related='cutoff_account_id.code'
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
check_company=True
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
cutoff_type
Selection
related='parent_id.cutoff_type'
name
Char
notes
Text
origin_move_date
Date
related='origin_move_line_id.move_id.date'
string='Origin Journal Entry Date'
origin_move_id
Many2one
related='origin_move_line_id.move_id'
string='Origin Journal Entry'
origin_move_line_id
Many2one → account.move.line
readonly=True
string='Origin Journal Item'
args: 'account.move.line'
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
price_origin
Char
readonly=True
price_unit
Float
digits='Product Price'
help="Price per unit (discount included) without taxes in the default unit of measure of the product in the currency of the 'Currency' field."
readonly=True
string='Unit Price w/o Tax'
quantity
Float
digits='Product Unit of Measure'
readonly=True
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
default='all'
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
readonly=True
string='Tax Amount'
base
Monetary
currency_field='currency_id'
readonly=True
company_currency_id
Many2one
related='parent_id.company_currency_id'
string='Company Currency'
company_id
Many2one → res.company
related='parent_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
check_company=True
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
tax_id
Many2one → account.tax
check_company=True
required=True
string='Tax'
args: 'account.tax'
No public methods.
account_accrued_expense_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
string='Accrued Expense Tax Account'
account_accrued_revenue_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
string='Accrued Revenue Tax Account'
No public methods.
accrual_taxes
Boolean
default=True
string='Accrual On Taxes'
default_accrued_expense_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Expenses'
default_accrued_expense_tax_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Tax Account for Accrued Expense'
default_accrued_revenue_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Revenues'
default_accrued_revenue_tax_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Tax Account for Accrued Revenue'
default_cutoff_journal_id
Many2one → account.journal
check_company=True
string='Default Cut-off Journal'
args: 'account.journal'
default_cutoff_move_partner
Boolean
string='Partner on Journal Items by Default'
default_prepaid_expense_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Expense'
args: 'account.account'
default_prepaid_revenue_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Revenue'
args: 'account.account'
post_cutoff_move
Boolean
string='Post Cut-off Journal Entry'
No public methods.
accrual_taxes
Boolean
readonly=False
related='company_id.accrual_taxes'
dft_accrued_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_expense_account_id'
dft_accrued_expense_tax_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_expense_tax_account_id'
dft_accrued_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_account_id'
dft_accrued_revenue_tax_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_tax_account_id'
dft_cutoff_journal_id
Many2one
domain="[('type', '=', 'general'), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_cutoff_journal_id'
dft_cutoff_move_partner
Boolean
readonly=False
related='company_id.default_cutoff_move_partner'
dft_prepaid_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_prepaid_expense_account_id'
dft_prepaid_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_prepaid_revenue_account_id'
post_cutoff_move
Boolean
readonly=False
related='company_id.post_cutoff_move'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/16.0/account_cutoff_base |
| VERSION | |
| VERSION | 1.6.0 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Stéphane Bidoul, Alexis de Lattre, Jacques-Etienne Baudoux, Denis Roussel, Weblate, OCA-git-bot, oca-ci, Dũng (Trần Đình) |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-closing |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:53:56 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES |
openupgradelib |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_search |
account.cutoff.line.search | account.cutoff.line | search | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
res_config_settings_view_form |
cutoff.res.config.settings.form | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
view_tax_form |
account.cutoff.accrual.view_tax_form | account.tax | field | Inherits account.view_tax_form |
auto_reverse
Boolean
help='Automatically reverse created move on following day. Use this if you accrue a value end of period that you want to reverse begin of next period'
company_currency_id
Many2one
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
required=True
states={'done': [('readonly', True)]}
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
default=<expr>
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
states={'done': [('readonly', True)]}
string='Cut-off Account'
tracking=True
cutoff_date
Date
copy=False
default=<expr>
states={'done': [('readonly', True)]}
string='Cut-off Date'
tracking=True
cutoff_journal_id
Many2one → account.journal
check_company=True
comodel_name='account.journal'
default=<expr>
domain="[('company_id', '=', company_id)]"
states={'done': [('readonly', True)]}
string='Cut-off Account Journal'
tracking=True
cutoff_type
Selection
required=True
selection='_selection_cutoff_type'
states={'done': [('readonly', True)]}
string='Type'
line_ids
One2many → account.cutoff.line
comodel_name='account.cutoff.line'
inverse_name='parent_id'
states={'done': [('readonly', True)]}
string='Cut-off Lines'
move_id
Many2one → account.move
check_company=True
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_partner
Boolean
default=<expr>
states={'done': [('readonly', True)]}
string='Partner on Journal Items'
tracking=True
move_ref
Char
default=<expr>
states={'done': [('readonly', True)]}
string='Reference of the Cut-off Journal Entry'
move_reversal_id
Many2one → account.move
compute='_compute_move_reversal_id'
string='Cut-off Journal Entry Reversal'
args: 'account.move'
source_move_state
Selection
default='posted'
required=True
states={'done': [('readonly', True)]}
string='Source Entries'
tracking=True
args: [('posted', 'Posted Entries'), ('draft_posted', 'Draft and Posted Entries')]
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
selection=[('draft', 'Draft'), ('done', 'Done')]
tracking=True
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
string='Total Cut-off Amount'
tracking=True
back2draft(self)
button_line_tree(self)
create_move(self)
cutoff_type_label_map(self)
get_lines(self)
name_get(self)
unlink(self)
account_id
Many2one → account.account
check_company=True
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help='Amount that is used as base to compute the Cut-off Amount.'
readonly=True
company_currency_id
Many2one
related='parent_id.company_currency_id'
string='Company Currency'
company_id
Many2one → res.company
related='parent_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one → res.currency
readonly=True
string='Currency'
args: 'res.currency'
cutoff_account_code
Char
related='cutoff_account_id.code'
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
check_company=True
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
cutoff_type
Selection
related='parent_id.cutoff_type'
name
Char
notes
Text
origin_move_date
Date
related='origin_move_line_id.move_id.date'
string='Origin Journal Entry Date'
origin_move_id
Many2one
related='origin_move_line_id.move_id'
string='Origin Journal Entry'
origin_move_line_id
Many2one → account.move.line
index=True
readonly=True
string='Origin Journal Item'
args: 'account.move.line'
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
price_origin
Char
readonly=True
price_unit
Float
digits='Product Price'
help="Price per unit (discount included) without taxes in the default unit of measure of the product in the currency of the 'Currency' field."
readonly=True
string='Unit Price w/o Tax'
quantity
Float
digits='Product Unit of Measure'
readonly=True
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
default='all'
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
readonly=True
string='Tax Amount'
base
Monetary
currency_field='currency_id'
readonly=True
company_currency_id
Many2one
related='parent_id.company_currency_id'
string='Company Currency'
company_id
Many2one → res.company
related='parent_id.company_id'
store=True
args: 'res.company'
currency_id
Many2one
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
check_company=True
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
tax_id
Many2one → account.tax
check_company=True
required=True
string='Tax'
args: 'account.tax'
No public methods.
account_accrued_expense_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
string='Accrued Expense Tax Account'
account_accrued_revenue_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
string='Accrued Revenue Tax Account'
No public methods.
accrual_taxes
Boolean
default=True
string='Accrual On Taxes'
default_accrued_expense_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Expenses'
default_accrued_expense_return_account_id
Many2one → account.account
check_company=True
string='Default Account for Accrued Expenses Refunds'
args: 'account.account'
default_accrued_expense_tax_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Tax Account for Accrued Expense'
default_accrued_revenue_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Revenues'
default_accrued_revenue_return_account_id
Many2one → account.account
check_company=True
string='Default Account for Accrued Revenues Refunds'
args: 'account.account'
default_accrued_revenue_tax_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Tax Account for Accrued Revenue'
default_cutoff_journal_id
Many2one → account.journal
check_company=True
string='Default Cut-off Journal'
args: 'account.journal'
default_cutoff_move_partner
Boolean
string='Partner on Journal Items by Default'
default_prepaid_expense_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Expense'
args: 'account.account'
default_prepaid_revenue_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Revenue'
args: 'account.account'
post_cutoff_move
Boolean
string='Post Cut-off Journal Entry'
No public methods.
accrual_taxes
Boolean
readonly=False
related='company_id.accrual_taxes'
dft_accrued_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_expense_account_id'
dft_accrued_expense_return_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_expense_return_account_id'
dft_accrued_expense_tax_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_expense_tax_account_id'
dft_accrued_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_account_id'
dft_accrued_revenue_return_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_return_account_id'
dft_accrued_revenue_tax_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_tax_account_id'
dft_cutoff_journal_id
Many2one
domain="[('type', '=', 'general'), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_cutoff_journal_id'
dft_cutoff_move_partner
Boolean
readonly=False
related='company_id.default_cutoff_move_partner'
dft_prepaid_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_prepaid_expense_account_id'
dft_prepaid_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_prepaid_revenue_account_id'
post_cutoff_move
Boolean
readonly=False
related='company_id.post_cutoff_move'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/15.0/account_cutoff_base |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, OCA Transbot, Weblate, OCA-git-bot, oca-ci, Maksym Yankin |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-closing |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:46:41 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_search |
account.cutoff.line.search | account.cutoff.line | search | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
res_config_settings_view_form |
cutoff.res.config.settings.form | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
view_tax_form |
account.cutoff.accrual.view_tax_form | account.tax | field | Inherits account.view_tax_form |
company_currency_id
Many2one
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
default=<expr>
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account'
tracking=True
cutoff_date
Date
copy=False
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Date'
tracking=True
cutoff_journal_id
Many2one → account.journal
check_company=True
comodel_name='account.journal'
default=<expr>
domain="[('company_id', '=', company_id)]"
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account Journal'
tracking=True
cutoff_type
Selection
readonly=True
required=True
selection='_selection_cutoff_type'
states={'draft': [('readonly', False)]}
string='Type'
line_ids
One2many → account.cutoff.line
comodel_name='account.cutoff.line'
inverse_name='parent_id'
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Lines'
move_id
Many2one → account.move
check_company=True
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_label
Char
default=<expr>
help="This label will be written in the 'Name' field of the Cut-off Account Move Lines and in the 'Reference' field of the Cut-off Account Move."
readonly=True
states={'draft': [('readonly', False)]}
string='Label of the Cut-off Journal Entry'
move_partner
Boolean
default=<expr>
string='Partner on Move Line'
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
selection=[('draft', 'Draft'), ('done', 'Done')]
tracking=True
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
readonly=True
string='Total Cut-off Amount'
tracking=True
back2draft(self)
button_line_tree(self)
create_move(self)
cutoff_type_label_map(self)
get_lines(self)
unlink(self)
account_id
Many2one → account.account
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help="Amount that is used as base to compute the Cut-off Amount. This Amount is in the 'Amount Currency', which may be different from the 'Company Currency'."
readonly=True
analytic_account_id
Many2one → account.analytic.account
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one → res.currency
help="Currency of the 'Amount' field."
readonly=True
string='Amount Currency'
args: 'res.currency'
cutoff_account_code
Char
readonly=True
related='cutoff_account_id.code'
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
name
Char
notes
Text
origin_move_date
Date
related='origin_move_line_id.move_id.date'
string='Origin Journal Entry Date'
origin_move_id
Many2one
related='origin_move_line_id.move_id'
string='Origin Journal Entry'
origin_move_line_id
Many2one → account.move.line
readonly=True
string='Origin Journal Item'
args: 'account.move.line'
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
price_origin
Char
readonly=True
price_unit
Float
digits='Product Price'
help="Price per unit (discount included) without taxes in the default unit of measure of the product in the currency of the 'Currency' field."
readonly=True
string='Unit Price w/o Tax'
quantity
Float
digits='Product Unit of Measure'
readonly=True
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
default='all'
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
help='Tax Amount in the currency of the PO.'
readonly=True
string='Tax Amount'
analytic_account_id
Many2one → account.analytic.account
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
base
Monetary
currency_field='currency_id'
help='Base Amount in the currency of the PO.'
readonly=True
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one
readonly=True
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
tax_id
Many2one → account.tax
required=True
string='Tax'
args: 'account.tax'
No public methods.
account_accrued_expense_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain=[('deprecated', '=', False)]
string='Accrued Expense Tax Account'
account_accrued_revenue_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain=[('deprecated', '=', False)]
string='Accrued Revenue Tax Account'
No public methods.
accrual_taxes
Boolean
default=True
string='Accrual On Taxes'
default_accrued_expense_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Expenses'
default_accrued_revenue_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Revenues'
default_cutoff_journal_id
Many2one → account.journal
check_company=True
string='Default Cut-off Journal'
args: 'account.journal'
default_cutoff_move_partner
Boolean
string='Partner on Move Line by Default'
default_prepaid_expense_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Expense'
args: 'account.account'
default_prepaid_revenue_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Revenue'
args: 'account.account'
No public methods.
accrual_taxes
Boolean
readonly=False
related='company_id.accrual_taxes'
dft_accrued_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_expense_account_id'
dft_accrued_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_account_id'
dft_cutoff_journal_id
Many2one
domain="[('type', '=', 'general'), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_cutoff_journal_id'
dft_cutoff_move_partner
Boolean
readonly=False
related='company_id.default_cutoff_move_partner'
dft_prepaid_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_prepaid_expense_account_id'
dft_prepaid_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_prepaid_revenue_account_id'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/14.0/account_cutoff_base |
| VERSION | |
| VERSION | 2.0.1 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, Denis Roussel, OCA Transbot, Sébastien Alix, oca-travis, Weblate, OCA-git-bot, oca-ci |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-closing |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:41:10 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_search |
account.cutoff.line.search | account.cutoff.line | search | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
res_config_settings_view_form |
cutoff.res.config.settings.form | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
view_tax_form |
account.cutoff.accrual.view_tax_form | account.tax | field | Inherits account.view_tax_form |
company_currency_id
Many2one
related='company_id.currency_id'
store=True
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
default=<expr>
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account'
tracking=True
cutoff_date
Date
copy=False
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Date'
tracking=True
cutoff_journal_id
Many2one → account.journal
check_company=True
comodel_name='account.journal'
default=<expr>
domain="[('company_id', '=', company_id)]"
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account Journal'
tracking=True
cutoff_type
Selection
readonly=True
required=True
selection='_selection_cutoff_type'
states={'draft': [('readonly', False)]}
string='Type'
line_ids
One2many → account.cutoff.line
comodel_name='account.cutoff.line'
inverse_name='parent_id'
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Lines'
move_id
Many2one → account.move
check_company=True
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_label
Char
default=<expr>
help="This label will be written in the 'Name' field of the Cut-off Account Move Lines and in the 'Reference' field of the Cut-off Account Move."
readonly=True
states={'draft': [('readonly', False)]}
string='Label of the Cut-off Journal Entry'
move_partner
Boolean
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Partner on Move Line'
tracking=True
source_move_state
Selection
default='posted'
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Source Entries'
tracking=True
args: [('posted', 'Posted Entries'), ('draft_posted', 'Draft and Posted Entries')]
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
selection=[('draft', 'Draft'), ('done', 'Done')]
tracking=True
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
readonly=True
string='Total Cut-off Amount'
tracking=True
back2draft(self)
button_line_tree(self)
create_move(self)
cutoff_type_label_map(self)
get_lines(self)
unlink(self)
account_id
Many2one → account.account
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help="Amount that is used as base to compute the Cut-off Amount. This Amount is in the 'Amount Currency', which may be different from the 'Company Currency'."
readonly=True
analytic_account_id
Many2one → account.analytic.account
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
company_currency_id
Many2one
related='parent_id.company_currency_id'
store=True
string='Company Currency'
currency_id
Many2one → res.currency
help="Currency of the 'Amount' field."
readonly=True
string='Amount Currency'
args: 'res.currency'
cutoff_account_code
Char
related='cutoff_account_id.code'
store=True
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
name
Char
notes
Text
origin_move_date
Date
related='origin_move_line_id.move_id.date'
string='Origin Journal Entry Date'
origin_move_id
Many2one
related='origin_move_line_id.move_id'
string='Origin Journal Entry'
origin_move_line_id
Many2one → account.move.line
readonly=True
string='Origin Journal Item'
args: 'account.move.line'
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
price_origin
Char
readonly=True
price_unit
Float
digits='Product Price'
help="Price per unit (discount included) without taxes in the default unit of measure of the product in the currency of the 'Currency' field."
readonly=True
string='Unit Price w/o Tax'
quantity
Float
digits='Product Unit of Measure'
readonly=True
string='Quantity'
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
check_company=True
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
default='all'
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
help='Tax Amount in the currency of the PO.'
readonly=True
string='Tax Amount'
analytic_account_id
Many2one → account.analytic.account
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
base
Monetary
currency_field='currency_id'
help='Base Amount in the currency of the PO.'
readonly=True
company_currency_id
Many2one
related='parent_id.company_currency_id'
store=True
string='Company Currency'
currency_id
Many2one
related='parent_id.currency_id'
store=True
string='Currency'
cutoff_account_id
Many2one → account.account
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
tax_id
Many2one → account.tax
required=True
string='Tax'
args: 'account.tax'
No public methods.
account_accrued_expense_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain=[('deprecated', '=', False)]
string='Accrued Expense Tax Account'
account_accrued_revenue_id
Many2one → account.account
check_company=True
comodel_name='account.account'
domain=[('deprecated', '=', False)]
string='Accrued Revenue Tax Account'
No public methods.
accrual_taxes
Boolean
default=True
string='Accrual On Taxes'
default_accrued_expense_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Expenses'
default_accrued_revenue_account_id
Many2one → account.account
check_company=True
comodel_name='account.account'
string='Default Account for Accrued Revenues'
default_cutoff_journal_id
Many2one → account.journal
check_company=True
string='Default Cut-off Journal'
args: 'account.journal'
default_cutoff_move_partner
Boolean
string='Partner on Move Line by Default'
default_prepaid_expense_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Expense'
args: 'account.account'
default_prepaid_revenue_account_id
Many2one → account.account
check_company=True
string='Default Account for Prepaid Revenue'
args: 'account.account'
post_cutoff_move
Boolean
string='Post Cut-off Entry'
No public methods.
accrual_taxes
Boolean
readonly=False
related='company_id.accrual_taxes'
dft_accrued_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_expense_account_id'
dft_accrued_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_accrued_revenue_account_id'
dft_cutoff_journal_id
Many2one
domain="[('type', '=', 'general'), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_cutoff_journal_id'
dft_cutoff_move_partner
Boolean
readonly=False
related='company_id.default_cutoff_move_partner'
dft_prepaid_expense_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_prepaid_expense_account_id'
dft_prepaid_revenue_account_id
Many2one
domain="[('deprecated', '=', False), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_prepaid_revenue_account_id'
post_cutoff_move
Boolean
readonly=False
related='company_id.post_cutoff_move'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/13.0/account_cutoff_base |
| VERSION | |
| VERSION | 2.0.0 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, GitHub, OCA Transbot, JordiMForgeFlow, oca-travis, Weblate, OCA-git-bot, oca-ci, jim.hoefnagels, Darius Martinkus |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-closing |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:34:19 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_search |
account.cutoff.line.search | account.cutoff.line | search | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
res_config_settings_view_form |
cutoff.res.config.settings.form | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
company_currency_id
Many2one
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
comodel_name='account.account'
default=<expr>
domain=[('deprecated', '=', False)]
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account'
cutoff_date
Date
copy=False
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Date'
tracking=True
cutoff_journal_id
Many2one → account.journal
comodel_name='account.journal'
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account Journal'
cutoff_type
Selection
default=<expr>
readonly=True
required=True
selection='_selection_cutoff_type'
states={'draft': [('readonly', False)]}
string='Type'
line_ids
One2many → account.cutoff.line
comodel_name='account.cutoff.line'
inverse_name='parent_id'
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Lines'
move_id
Many2one → account.move
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_label
Char
default=<expr>
help="This label will be written in the 'Name' field of the Cut-off Account Move Lines and in the 'Reference' field of the Cut-off Account Move."
readonly=True
states={'draft': [('readonly', False)]}
string='Label of the Cut-off Journal Entry'
move_partner
Boolean
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Partner on Move Line'
tracking=True
source_move_state
Selection
default='posted'
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Source Entries'
tracking=True
args: [('posted', 'Posted Entries'), ('draft_posted', 'Draft and Posted Entries')]
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
selection=[('draft', 'Draft'), ('done', 'Done')]
tracking=True
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
readonly=True
string='Total Cut-off Amount'
tracking=True
back2draft(self)
button_line_tree(self)
create_move(self)
cutoff_type_label_map(self)
get_lines(self)
unlink(self)
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help="Amount that is used as base to compute the Cut-off Amount. This Amount is in the 'Amount Currency', which may be different from the 'Company Currency'."
readonly=True
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one → res.currency
help="Currency of the 'Amount' field."
readonly=True
string='Amount Currency'
args: 'res.currency'
cutoff_account_code
Char
readonly=True
related='cutoff_account_id.code'
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
name
Char
notes
Text
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
tax_ids
Many2many → account.tax
column1='cutoff_line_id'
column2='tax_id'
readonly=True
string='Taxes'
args: 'account.tax'
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
help='Tax Amount in the currency of the PO.'
readonly=True
string='Tax Amount'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
base
Monetary
currency_field='currency_id'
help='Base Amount in the currency of the PO.'
readonly=True
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one
readonly=True
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
tax_id
Many2one → account.tax
required=True
string='Tax'
args: 'account.tax'
No public methods.
default_cutoff_journal_id
Many2one → account.journal
string='Default Cut-off Journal'
args: 'account.journal'
default_cutoff_move_partner
Boolean
string='Partner on Move Line by Default'
post_cutoff_move
Boolean
string='Post Cut-off Entry'
No public methods.
dft_cutoff_journal_id
Many2one
domain="[('type', '=', 'general'), ('company_id', '=', company_id)]"
readonly=False
related='company_id.default_cutoff_journal_id'
dft_cutoff_move_partner
Boolean
readonly=False
related='company_id.default_cutoff_move_partner'
post_cutoff_move
Boolean
readonly=False
related='company_id.post_cutoff_move'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/12.0/account_cutoff_base |
| VERSION | |
| VERSION | 1.1.0 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, GitHub, Stéphane Bidoul (ACSONE), OCA Transbot, oca-travis, Weblate, OCA-git-bot, Lara Baggio, Jeroen Evens |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-closing |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:29:24 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - decimal_precision - bus - web_tour - uom - analytic - portal - http_routing - digest |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
res_config_settings_view_form |
cutoff.res.config.settings.form | res.config.settings | xpath | Inherits account.res_config_settings_view_form |
company_currency_id
Many2one
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
comodel_name='account.account'
default=<expr>
domain=[('deprecated', '=', False)]
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account'
cutoff_date
Date
copy=False
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Date'
track_visibility='onchange'
cutoff_journal_id
Many2one → account.journal
comodel_name='account.journal'
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account Journal'
cutoff_type
Selection
default=<expr>
oldname='type'
readonly=True
required=True
selection='_selection_cutoff_type'
states={'draft': [('readonly', False)]}
string='Type'
line_ids
One2many → account.cutoff.line
comodel_name='account.cutoff.line'
inverse_name='parent_id'
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Lines'
move_id
Many2one → account.move
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_label
Char
default=<expr>
help="This label will be written in the 'Name' field of the Cut-off Account Move Lines and in the 'Reference' field of the Cut-off Account Move."
readonly=True
states={'draft': [('readonly', False)]}
string='Label of the Cut-off Journal Entry'
move_partner
Boolean
default=<expr>
string='Partner on Move Line'
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
selection=[('draft', 'Draft'), ('done', 'Done')]
track_visibility='onchange'
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
readonly=True
string='Total Cut-off Amount'
track_visibility='onchange'
back2draft(self)
button_line_tree(self)
create_move(self)
cutoff_type_label_map(self)
get_lines(self)
unlink(self)
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help="Amount that is used as base to compute the Cut-off Amount. This Amount is in the 'Amount Currency', which may be different from the 'Company Currency'."
readonly=True
analytic_account_code
Char
related='analytic_account_id.code'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
company_currency_id
Many2one
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one → res.currency
help="Currency of the 'Amount' field."
readonly=True
string='Amount Currency'
args: 'res.currency'
cutoff_account_code
Char
readonly=True
related='cutoff_account_id.code'
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
name
Char
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
tax_ids
Many2many → account.tax
column1='cutoff_line_id'
column2='tax_id'
readonly=True
string='Taxes'
args: 'account.tax'
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
help='Tax Amount in the currency of the PO.'
readonly=True
string='Tax Amount'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
base
Monetary
currency_field='currency_id'
help='Base Amount in the currency of the PO.'
readonly=True
company_currency_id
Many2one
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
tax_id
Many2one → account.tax
required=True
string='Tax'
args: 'account.tax'
No public methods.
default_cutoff_journal_id
Many2one → account.journal
string='Default Cut-off Journal'
args: 'account.journal'
default_cutoff_move_partner
Boolean
string='Partner on Move Line by Default'
No public methods.
dft_cutoff_journal_id
Many2one
readonly=False
related='company_id.default_cutoff_journal_id'
dft_cutoff_move_partner
Boolean
readonly=False
related='company_id.default_cutoff_move_partner'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/11.0/account_cutoff_base |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Bhavesh Odedra, OCA Transbot, oca-travis, Weblate, mpanarin, oleksandrpaziuk |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/account-closing |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:24:01 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account - base_setup - base - web - product - decimal_precision - bus - web_tour - analytic - web_planner - portal - http_routing |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
view_company_form |
cutoff.company.form | res.company | xpath | Inherits base.view_company_form |
company_currency_id
Many2one
readonly=True
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
comodel_name='account.account'
default=<expr>
domain=[('deprecated', '=', False)]
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account'
cutoff_date
Date
copy=False
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Date'
track_visibility='onchange'
cutoff_journal_id
Many2one → account.journal
comodel_name='account.journal'
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account Journal'
cutoff_type
Selection
default=<expr>
oldname='type'
readonly=True
required=True
selection='_selection_cutoff_type'
states={'draft': [('readonly', False)]}
string='Type'
line_ids
One2many → account.cutoff.line
comodel_name='account.cutoff.line'
inverse_name='parent_id'
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Lines'
move_id
Many2one → account.move
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_label
Char
default=<expr>
help="This label will be written in the 'Name' field of the Cut-off Account Move Lines and in the 'Reference' field of the Cut-off Account Move."
readonly=True
states={'draft': [('readonly', False)]}
string='Label of the Cut-off Journal Entry'
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
selection=[('draft', 'Draft'), ('done', 'Done')]
string='State'
track_visibility='onchange'
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
readonly=True
string='Total Cut-off Amount'
track_visibility='onchange'
back2draft(self)
create_move(self)
cutoff_type_label_map(self)
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help="Amount that is used as base to compute the Cut-off Amount. This Amount is in the 'Amount Currency', which may be different from the 'Company Currency'."
readonly=True
string='Amount'
analytic_account_code
Char
readonly=True
related='analytic_account_id.code'
string='Analytic Account Code'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one → res.currency
help="Currency of the 'Amount' field."
readonly=True
string='Amount Currency'
args: 'res.currency'
cutoff_account_code
Char
readonly=True
related='cutoff_account_id.code'
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
name
Char
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
tax_ids
Many2many → account.tax
column1='cutoff_line_id'
column2='tax_id'
readonly=True
string='Taxes'
args: 'account.tax'
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
help='Tax Amount in the currency of the PO.'
readonly=True
string='Tax Amount'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
base
Monetary
currency_field='currency_id'
help='Base Amount in the currency of the PO.'
readonly=True
string='Base'
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one
readonly=True
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
string='Sequence'
tax_id
Many2one → account.tax
required=True
string='Tax'
args: 'account.tax'
No public methods.
default_cutoff_journal_id
Many2one → account.journal
string='Default Cut-off Journal'
args: 'account.journal'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/10.0/account_cutoff_base |
| VERSION | |
| VERSION | 1.1.0 |
| CATEGORY | |
| CATEGORY | Accounting |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, Pedro M. Baeza, GitHub, Stéphane Bidoul (ACSONE), OCA Transbot, Adrien Peiffer (ACSONE), oca-travis, Weblate |
| WEBSITE | |
| WEBSITE | http://www.akretion.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:20:01 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account_accountant - account - base_setup - base - web_kanban - web - product - decimal_precision - bus - web_tour - report - analytic - web_planner |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
view_account_config_settings |
cutoff.account.config.settings.form | account.config.settings | group | Inherits account.view_account_config_settings |
default_cutoff_journal_id
Many2one
related='company_id.default_cutoff_journal_id'
No public methods.
company_currency_id
Many2one
readonly=True
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
default=<expr>
domain=[('deprecated', '=', False)]
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account'
args: 'account.account'
cutoff_date
Date
copy=False
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Date'
track_visibility='onchange'
cutoff_journal_id
Many2one → account.journal
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account Journal'
args: 'account.journal'
line_ids
One2many → account.cutoff.line
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Lines'
args: 'account.cutoff.line', 'parent_id'
move_id
Many2one → account.move
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_label
Char
default=<expr>
help="This label will be written in the 'Name' field of the Cut-off Account Move Lines and in the 'Reference' field of the Cut-off Account Move."
readonly=True
states={'draft': [('readonly', False)]}
string='Label of the Cut-off Journal Entry'
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
string='State'
track_visibility='onchange'
args: [('draft', 'Draft'), ('done', 'Done')]
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
readonly=True
string='Total Cut-off Amount'
track_visibility='onchange'
type
Selection
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Type'
args: [('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
back2draft(self)
button_line_tree(self)
create_move(self)
get_lines(self)
unlink(self)
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help="Amount that is used as base to compute the Cut-off Amount. This Amount is in the 'Amount Currency', which may be different from the 'Company Currency'."
readonly=True
string='Amount'
analytic_account_code
Char
readonly=True
related='analytic_account_id.code'
string='Analytic Account'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one → res.currency
help="Currency of the 'Amount' field."
readonly=True
string='Amount Currency'
args: 'res.currency'
cutoff_account_code
Char
readonly=True
related='cutoff_account_id.code'
string='Cut-off Account'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
name
Char
notes
Text
string='Notes'
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
tax_ids
Many2many → account.tax
column1='cutoff_line_id'
column2='tax_id'
readonly=True
string='Taxes'
args: 'account.tax'
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
help='Tax Amount in the currency of the PO.'
readonly=True
string='Tax Amount'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
base
Monetary
currency_field='currency_id'
help='Base Amount in the currency of the PO.'
readonly=True
string='Base'
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one
readonly=True
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
string='Sequence'
tax_id
Many2one → account.tax
readonly=True
required=True
string='Tax'
args: 'account.tax'
No public methods.
default_cutoff_journal_id
Many2one → account.journal
string='Default Cut-off Journal'
args: 'account.journal'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/9.0/account_cutoff_base |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, Pedro M. Baeza, OCA Transbot, Adrien Peiffer (ACSONE), oca-travis, Weblate |
| WEBSITE | |
| WEBSITE | http://www.akretion.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:15:24 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account_accountant - account - base_setup - base - web_kanban - web - product - decimal_precision - bus - report - analytic - web_tip - web_planner |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
view_company_form |
cutoff.company.form | res.company | group | Inherits base.view_company_form |
company_currency_id
Many2one
readonly=True
related='company_id.currency_id'
string='Company Currency'
company_id
Many2one → res.company
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
default=_default_cutoff_account_id
domain=[('deprecated', '=', False)]
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account'
args: 'account.account'
cutoff_date
Date
copy=False
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Date'
track_visibility='onchange'
cutoff_journal_id
Many2one → account.journal
default=<expr>
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Account Journal'
args: 'account.journal'
line_ids
One2many → account.cutoff.line
readonly=True
states={'draft': [('readonly', False)]}
string='Cut-off Lines'
args: 'account.cutoff.line', 'parent_id'
move_id
Many2one → account.move
copy=False
readonly=True
string='Cut-off Journal Entry'
args: 'account.move'
move_label
Char
default=_default_move_label
help="This label will be written in the 'Name' field of the Cut-off Account Move Lines and in the 'Reference' field of the Cut-off Account Move."
readonly=True
states={'draft': [('readonly', False)]}
string='Label of the Cut-off Journal Entry'
state
Selection
copy=False
default='draft'
help="State of the cutoff. When the Journal Entry is created, the state is set to 'Done' and the fields become read-only."
index=True
readonly=True
string='State'
track_visibility='onchange'
args: [('draft', 'Draft'), ('done', 'Done')]
total_cutoff_amount
Monetary
compute='_compute_total_cutoff'
currency_field='company_currency_id'
readonly=True
string='Total Cut-off Amount'
track_visibility='onchange'
type
Selection
default=<expr>
readonly=True
required=True
states={'draft': [('readonly', False)]}
string='Type'
args: [('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
back2draft(self)
create_move(self)
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
args: 'account.account', 'Account'
amount
Monetary
currency_field='currency_id'
help="Amount that is used as base to compute the Cut-off Amount. This Amount is in the 'Amount Currency', which may be different from the 'Company Currency'."
readonly=True
string='Amount'
analytic_account_code
Char
readonly=True
related='analytic_account_id.code'
string='Analytic Account Code'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one → res.currency
help="Currency of the 'Amount' field."
readonly=True
string='Amount Currency'
args: 'res.currency'
cutoff_account_code
Char
readonly=True
related='cutoff_account_id.code'
string='Cut-off Account Code'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Cut-off Amount without taxes in the Company Currency.'
readonly=True
string='Cut-off Amount'
name
Char
parent_id
Many2one → account.cutoff
ondelete='cascade'
string='Cut-off'
args: 'account.cutoff'
partner_id
Many2one → res.partner
readonly=True
string='Partner'
args: 'res.partner'
tax_ids
Many2many → account.tax
id1='cutoff_line_id'
id2='tax_id'
readonly=True
string='Taxes'
args: 'account.tax'
tax_line_ids
One2many → account.cutoff.tax.line
readonly=True
string='Cut-off Tax Lines'
args: 'account.cutoff.tax.line', 'parent_id'
No public methods.
account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Regular Account'
args: 'account.account'
company_id
Many2one → res.company
default=<expr>
required=True
string='Company'
args: 'res.company'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_type
Selection
required=True
string='Cut-off Type'
args: [('all', 'All Cut-off Types'), ('accrued_revenue', 'Accrued Revenue'), ('accrued_expense', 'Accrued Expense'), ('prepaid_revenue', 'Prepaid Revenue'), ('prepaid_expense', 'Prepaid Expense')]
No public methods.
amount
Monetary
currency_field='currency_id'
help='Tax Amount in the currency of the PO.'
readonly=True
string='Tax Amount'
analytic_account_id
Many2one → account.analytic.account
domain=[('account_type', '!=', 'closed')]
readonly=True
string='Analytic Account'
args: 'account.analytic.account'
base
Monetary
currency_field='currency_id'
help='Base Amount in the currency of the PO.'
readonly=True
string='Base'
company_currency_id
Many2one
readonly=True
related='parent_id.company_currency_id'
string='Company Currency'
currency_id
Many2one
readonly=True
related='parent_id.currency_id'
string='Currency'
cutoff_account_id
Many2one → account.account
domain=[('deprecated', '=', False)]
readonly=True
required=True
string='Cut-off Account'
args: 'account.account'
cutoff_amount
Monetary
currency_field='company_currency_id'
help='Tax Cut-off Amount in the company currency.'
readonly=True
string='Cut-off Tax Amount'
parent_id
Many2one → account.cutoff.line
ondelete='cascade'
required=True
string='Account Cut-off Line'
args: 'account.cutoff.line'
sequence
Integer
readonly=True
string='Sequence'
tax_id
Many2one → account.tax
required=True
string='Tax'
args: 'account.tax'
No public methods.
default_cutoff_journal_id
Many2one → account.journal
string='Default Cut-off Journal'
args: 'account.journal'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/8.0/account_cutoff_base |
| VERSION | |
| VERSION | 0.1.0 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Stéphane Bidoul, Alexis de Lattre, Yannick Vaucher, Alexandre Fayolle, Pedro M. Baeza, GitHub, Stéphane Bidoul (ACSONE), OCA Transbot, Adrien Peiffer (ACSONE), oca-travis, Weblate |
| WEBSITE | |
| WEBSITE | http://www.akretion.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:11:26 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/account-financial-tools: - account_reversal odoo/odoo: - account_accountant - account_voucher - account - base_setup - base - web_kanban - web - product - decimal_precision - report - analytic - board - edi - email_template |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
This module contains objets, fields and menu entries that are used by other
cut-off modules. So you need to install other cut-off modules to get the
additionnal functionalities :
* the module *account_cutoff_prepaid* will manage prepaid cut-offs based on
start date and end date,
* the module *account_cutoff_accrual_picking* will manage the accruals based
on the status of the pickings.
Please contact Alexis de Lattre from Akretion <alexis.delattre@akretion.com>
for any help or question about this module.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
view_company_form |
cutoff.company.form | res.company | group | Inherits base.view_company_form |
No new fields.
Public methods (4)back2draft(self, cr, uid, ids, context=None)
copy(self, cr, uid, id, default=None, context=None)
create_move(self, cr, uid, ids, context=None)
cutoff_date_onchange(self, cr, uid, ids, type, cutoff_date, move_label, context=None)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/account-closing |
| GIT | |
| GIT | https://github.com/OCA/account-closing.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/account-closing/tree/7.0/account_cutoff_base |
| VERSION | |
| VERSION | 0.1 |
| CATEGORY | |
| CATEGORY | Accounting & Finance |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Akretion |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Akretion |
| COMMITTERS | |
| COMMITTERS | Alexis de Lattre, Alexandre Fayolle, Pedro M. Baeza, Rudolf Schnapka |
| WEBSITE | |
| WEBSITE | http://www.akretion.com |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:07:16 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - account_accountant - account_voucher - account - base_setup - base - web_kanban - web - product - process - decimal_precision - analytic - board - edi - email_template |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
This module contains objets, fields and menu entries that are used by other
cut-off modules. So you need to install other cut-off modules to get the
additionnal functionalities :
* the module *account_cutoff_prepaid* will manage prepaid cut-offs based on
start date and end date,
* the module *account_cutoff_accrual_picking* will manage the accruals based
on the status of the pickings.
Please contact Alexis de Lattre from Akretion <alexis.delattre@akretion.com>
for any help or question about this module.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_cutoff_filter |
account.cutoff.filter | account.cutoff | search | New |
account_cutoff_form |
account.cutoff.form | account.cutoff | form | New |
account_cutoff_line_form |
account.cutoff.line.form | account.cutoff.line | form | New |
account_cutoff_line_tree |
account.cutoff.line.tree | account.cutoff.line | tree | New |
account_cutoff_mapping_form |
account.cutoff.mapping.form | account.cutoff.mapping | form | New |
account_cutoff_mapping_tree |
account.cutoff.mapping.tree | account.cutoff.mapping | tree | New |
account_cutoff_tax_line_form |
account.cutoff.tax.line.form | account.cutoff.tax.line | form | New |
account_cutoff_tax_line_tree |
account.cutoff.tax.line.tree | account.cutoff.tax.line | tree | New |
account_cutoff_tree |
account.cutoff.tree | account.cutoff | tree | New |
view_company_form |
cutoff.company.form | res.company | group | Inherits base.view_company_form |
No new fields.
Public methods (4)back2draft(self, cr, uid, ids, context=None)
copy(self, cr, uid, id, default=None, context=None)
create_move(self, cr, uid, ids, context=None)
cutoff_date_onchange(self, cr, uid, ids, type, cutoff_date, move_label)
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.