TIP: You can type at any time to perform a new search.

Security findings

Repository
odoo/odoo · module folder
Module version
0.1.0
Category
Accounting/Localizations
Folder size
0.35 MB
License
LGPL-3
Application
No
Auto-installable
No
Website
None
Last tracking update
2026-09-28 18:31:19
Authors
Odoo S.A.
Maintainers
Odoo S.A.
Committers
Raphael Collet, Odoo Translation Bot, Christophe Matthieu, Victor Feyens, william-andre, Mylyna Hy, Victor Piryns (pivi), Dylan Kiss (dyki), Jay Savaliya, hatr-odoo, Khumam Alzagim, Claire (clbr), Hesham Saleh, ppat-odoo, Krzysztof Magusiak (krma), bhna-odoo, Laurent Smet (LAS), Manav Shah, jand-odoo
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
l10n_account_withholding_tax_pos, l10n_ar_withholding, l10n_bd, l10n_eg, l10n_in, l10n_kh, l10n_lk, l10n_mm, l10n_ph, l10n_pk, l10n_sa, l10n_th
Description
Allows users to manage withholding taxes on invoices, bills, and payments.

Code Analysis info_outline

Views touched (9)
XML IDNameModelTypeStatus
account_move_view_form_inherit_l10n_account_withholding_tax account.move.view.form.inherit.l10n_account_withholding_tax account.move form Inherits account.view_move_form
report_invoice_document report_invoice_document ir.ui.view qweb Inherits account.report_invoice_document
report_payment_receipt_document report_payment_receipt_document ir.ui.view qweb Inherits account.report_payment_receipt_document
res_config_settings_form res.config.settings.form res.config.settings form Inherits account.res_config_settings_view_form
view_account_payment_form account.payment.form account.payment form Inherits account.view_account_payment_form
view_account_payment_register_form account.payment.register.form account.payment.register form Inherits account.view_account_payment_register_form
view_account_payment_tree account.payment.tree account.payment tree Inherits account.view_account_payment_tree
view_account_tax_search_inherit_l10n_account_withholding_tax account.tax.search.inherit.l10n_account_withholding_tax account.tax search Inherits account.view_account_tax_search
view_tax_form account.tax.form account.tax form Inherits account.view_tax_form
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (11)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (5)
  • amount_residual Monetary
    help='The total amount due, including the amount to be paid and the withholding due.'
  • withholding_deducted_amount_currency Monetary
    compute='_compute_deducted_withholding_amount' currency_field='currency_id' help='The total withholding amount already deducted.' store=True
  • withholding_net_residual_amount_currency Monetary
    compute='_compute_withholding_net_residual_amount' currency_field='currency_id' help='The net amount due after deducting the remaining withholding amount.' string='Net Due Amount'
  • withholding_residual_amount_currency Monetary
    compute='_compute_residual_withholding_amount' compute_sql='_compute_sql_residual_withholding_amount' compute_sudo=False currency_field='currency_id' help='The remaining withholding amount to be deducted.'
  • withholding_total_amount_currency Monetary
    compute='_compute_withholding_total_amount' currency_field='currency_id' help='The total withholding amount to be deducted.' store=True
Public methods (1)
  • is_withhold_entry(self)

New fields (9)
  • display_withholding Boolean
    compute='_compute_display_withholding'
  • outstanding_account_id Many2one
    readonly=False
  • withhold Selection
    copy=False default='payment' selection=[('withhold_pay', 'Withhold and Pay'), ('withhold', 'Withhold Only'), ('payment', 'Payment Only')]
  • withholding_amount Monetary
    compute='_compute_withholding_amount' currency_field='currency_id' string='Withholding Amount'
  • withholding_hide_name Boolean
    compute='_compute_withholding_hide_name'
  • withholding_hide_tax_base_account Boolean
    compute='_compute_withholding_hide_tax_base_account'
  • withholding_line_ids One2many → account.payment.withholding.line
    comodel_name='account.payment.withholding.line' inverse_name='payment_id' string='Withholding Lines'
  • withholding_net_amount Monetary
    compute='_compute_withholding_net_amount' currency_field='currency_id' help='The amount that will actually be paid after deducting withholding taxes.' string='Net Amount'
  • withholding_payment_account_id Many2one
    related='payment_method_line_id.payment_account_id'
Public methods (0)

No public methods.

New fields (9)
  • display_withholding Boolean
    compute='_compute_display_withholding'
  • withhold Selection
    copy=False selection=[('withhold_pay', 'Withhold and Pay'), ('withhold', 'Withhold Only'), ('payment', 'Payment Only')]
  • withholding_default_account_id Many2one
    related='journal_id.default_account_id'
  • withholding_hide_name Boolean
    compute='_compute_withholding_hide_name'
  • withholding_hide_tax_base_account Boolean
    compute='_compute_withholding_hide_tax_base_account'
  • withholding_line_ids One2many → account.payment.register.withholding.line
    comodel_name='account.payment.register.withholding.line' compute='_compute_withholding_line_ids' inverse_name='payment_register_id' readonly=False store=True string='Withholding Lines'
  • withholding_net_amount Monetary
    compute='_compute_withholding_net_amount' help='Net amount after deducting the withholding lines' store=True string='Net Amount'
  • withholding_outstanding_account_id Many2one → account.account
    check_company=True comodel_name='account.account' compute='_compute_withholding_outstanding_account_id' copy=False domain="['|', ('account_type', 'in', ('asset_current', 'liability_current')), ('id', '=', withholding_default_account_id)]" readonly=False store=True string='Outstanding Account'
  • withholding_payment_account_id Many2one
    related='payment_method_line_id.payment_account_id'
Public methods (1)
  • default_get(self, fields_list)
    @api.model

New fields (1)
  • payment_register_id Many2one → account.payment.register
    comodel_name='account.payment.register' ondelete='cascade' required=True
Public methods (0)

No public methods.

New fields (1)
  • payment_id Many2one → account.payment
    comodel_name='account.payment' index=True ondelete='cascade' required=True
Public methods (0)

No public methods.

New fields (2)
  • is_withholding_tax Boolean
    help='If enabled, this tax will not affect the amount due until applied via the Pay button.' string='Withhold'
  • withholding_sequence_id Many2one → ir.sequence
    check_company=True comodel_name='ir.sequence' copy=False help='This sequence will be used to generate default numbers on payment withholding lines.' string='Withholding Sequence'
Public methods (0)

No public methods.

New fields (25)
  • account_id Many2one → account.account
    comodel_name='account.account' compute='_compute_account_id' precompute=True readonly=False required=True store=True
  • amount Monetary
    compute='_compute_amount' currency_field='comodel_currency_id' readonly=False store=True string='Withholding amount'
  • base_amount Monetary
    compute='_compute_base_amount' currency_field='comodel_currency_id' readonly=False store=True string='Withholding base'
  • comodel_company_currency_id Many2one
    related='company_id.currency_id'
  • comodel_currency_id Many2one → res.currency
    comodel_name='res.currency' compute='_compute_comodel_currency_id' required=True
  • comodel_date Date
    compute='_compute_comodel_date'
  • comodel_payment_type Selection
    compute='_compute_comodel_payment_type' selection=[('outbound', 'Send Money'), ('inbound', 'Receive Money')]
  • comodel_percentage_paid_factor Float
    compute='_compute_comodel_percentage_paid_factor'
  • company_id Many2one → res.company
    comodel_name='res.company' compute='_compute_company_id' index=True precompute=True required=True store=True
  • country_code Char
    related='company_id.account_fiscal_country_id.code'
  • name Char
    copy=True string='Sequence Number'
  • original_base_amount Monetary
    compute='_compute_original_amounts' currency_field='comodel_currency_id'
  • original_tax_amount Monetary
    compute='_compute_original_amounts' currency_field='comodel_currency_id'
  • placeholder_type Selection
    compute='_compute_placeholder_type' precompute=True readonly=False required=True selection=[('given_by_sequence', 'Given By the Sequence'), ('given_by_name', 'Given By the Name'), ('not_defined', 'Not defined')] store=True
  • placeholder_value Char
    help='Populated by the comodel during edition of the line.'
  • previous_placeholder_type Selection
    compute='_compute_placeholder_type' precompute=True readonly=False selection=[('given_by_sequence', 'Given By the Sequence'), ('given_by_name', 'Given By the Name'), ('not_defined', 'Not defined')] store=True
  • source_base_amount Monetary
    currency_field='comodel_company_currency_id'
  • source_base_amount_currency Monetary
    currency_field='source_currency_id'
  • source_currency_id Many2one → res.currency
    comodel_name='res.currency'
  • source_tax_amount Monetary
    currency_field='comodel_company_currency_id'
  • source_tax_amount_currency Monetary
    currency_field='source_currency_id'
  • source_tax_id Many2one → account.tax
    comodel_name='account.tax'
  • tax_id Many2one → account.tax
    check_company=True comodel_name='account.tax' domain="[('type_tax_use', '=', type_tax_use), ('is_withholding_tax', '=', True)]" index=True required=True
  • type_tax_use Char
    compute='_compute_type_tax_use'
  • withholding_sequence_id Many2one
    related='tax_id.withholding_sequence_id'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • withholding_tax_base_account_id Many2one → account.account
    comodel_name='account.account' help='This account will be set on withholding tax base lines.' string='Withholding Tax Base'
Public methods (0)

No public methods.

New fields (1)
  • withholding_tax_base_account_id Many2one
    readonly=False related='company_id.withholding_tax_base_account_id'
Public methods (0)

No public methods.

Loading…

Loading…