TIP: You can type at any time to perform a new search.
Thai Localization - VAT and Withholding Tax Reports
l10n_th_account_tax_report · OCA/l10n-thailand
- Repository
- OCA/l10n-thailand · module folder · Try on Runboat
- Module version
- 1.0.2
- Category
- Accounting
- Folder size
- 1.81 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/l10n-thailand
- Last tracking update
- 2026-08-07 08:43:05
- Authors
- Odoo Community Association (OCA), Ecosoft
- Maintainers
- Odoo Community Association (OCA), Ecosoft
- Committers
- Saran440, OCA-git-bot, oca-ci, Pani-k-folk
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- None
- Description
TAX Report is a report that displays transactions based on the selected tax type within a specific date range (period). It helps businesses track VAT and Withholding Tax more accurately, and supports both standard and Revenue Department (RD) formats for compliance purposes. The module also allows customization of report formats and text files for official tax submissions.
Code Analysis ⓘ
Views touched (32)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
header_line_report_withholding_tax |
header_line_report_withholding_tax | ir.ui.view | qweb | New |
header_report_withholding_tax |
header_report_withholding_tax | ir.ui.view | qweb | New |
internal_layout |
internal_layout | ir.ui.view | qweb | New |
line_report_withholding_tax |
line_report_withholding_tax | ir.ui.view | qweb | New |
report_rd_base_company_withholding_tax |
report_rd_base_company_withholding_tax | ir.ui.view | qweb | New |
report_rd_base_partner_vat_withholding_tax |
report_rd_base_partner_vat_withholding_tax | ir.ui.view | qweb | New |
report_rd_base_total_withholding_tax |
report_rd_base_total_withholding_tax | ir.ui.view | qweb | New |
report_rd_company_tax_branch |
report_rd_company_tax_branch | ir.ui.view | qweb | New |
report_rd_tax_report |
report_rd_tax_report | ir.ui.view | qweb | New |
report_rd_tax_report_article |
report_rd_tax_report_article | ir.ui.view | qweb | New |
report_rd_tax_report_header |
report_rd_tax_report_header | ir.ui.view | qweb | New |
report_rd_thai_tax |
report_rd_thai_tax | ir.ui.view | qweb | New |
report_rd_withholding_tax |
report_rd_withholding_tax | ir.ui.view | qweb | New |
report_rd_withholding_tax_pnd1 |
report_rd_withholding_tax_pnd1 | ir.ui.view | qweb | New |
report_rd_withholding_tax_pnd1a |
report_rd_withholding_tax_pnd1a | ir.ui.view | qweb | New |
report_rd_withholding_tax_pnd2 |
report_rd_withholding_tax_pnd2 | ir.ui.view | qweb | New |
report_rd_withholding_tax_pnd3 |
report_rd_withholding_tax_pnd3 | ir.ui.view | qweb | New |
report_rd_withholding_tax_pnd53 |
report_rd_withholding_tax_pnd53 | ir.ui.view | qweb | New |
report_tax_report_base |
report_tax_report_base | ir.ui.view | qweb | New |
report_tax_report_filters |
report_tax_report_filters | ir.ui.view | qweb | New |
report_tax_report_lines |
report_tax_report_lines | ir.ui.view | qweb | New |
report_tax_report_lines_header |
report_tax_report_lines_header | ir.ui.view | qweb | New |
report_tax_report_total_lines |
report_tax_report_total_lines | ir.ui.view | qweb | New |
report_thai_tax |
report_thai_tax | ir.ui.view | qweb | New |
report_wht |
report_wht | ir.ui.view | qweb | New |
report_withholding_tax |
report_withholding_tax | ir.ui.view | qweb | New |
report_withholding_tax_text |
report_withholding_tax_text | ir.ui.view | qweb | New |
res_company_view_form |
res.company | form | Inherits base.view_company_form | |
res_config_settings_view_form |
res.config.settings.view.form.thai.account | res.config.settings | form | Inherits l10n_th_account_tax.res_config_settings_view_form |
tax_report_wizard_form |
tax.report.wizard.form | tax.report.wizard | form | New |
total_line_report_withholding_tax |
total_line_report_withholding_tax | ir.ui.view | qweb | New |
view_withholding_tax_report_wizard |
withholding.tax.report.wizard.view | withholding.tax.report.wizard | form | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (12)
New fields (5)
-
company_idMany2one → res.companycomodel_name='res.company'default=<expr>required=Falsestring='Company' -
date_fromDaterequired=True -
date_range_idMany2one → date.rangecomodel_name='date.range' -
date_toDaterequired=True -
show_cancelBooleandefault=Truestring='Show Cancelled'
-
button_export_html(self) -
button_export_pdf(self) -
button_export_xlsx(self) -
check_date_from_to(self)@api.constrains('date_from', 'date_to') -
onchange_date_range_id(self)@api.onchange('date_range_id')Handle date range change.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (5)
-
tax_report_formatSelectiondefault='std'required=Trueselection=[('std', 'Standard'), ('rd', 'Revenue Department')] -
wht_report_formatSelectiondefault='std'required=Trueselection=[('std', 'Standard'), ('rd', 'Revenue Department')] -
wht_text_file_pnd1_formatTextdefault='%(income_code)s|%(row_number)s|%(partner_vat)s|%(partner_title)s|%(partner_firstname)s|%(partner_lastname)s|%(cert_date)s|%(base)s|%(amount)s|%(cert_tax_payer)s\n'help="Display format to use for text file PND1.\n\nYou can use python-style string pattern with all the fields of the withholding tax (for example, use '%(partner_vat)s' to display the field 'partner_vat') plus\n%(row_number)s: Index\n%(cert_cancel)s: Cancelled\n%(cert_date)s: Date\n%(cert_date_str)s: Date (string)\n%(cert_name)s: Name\n%(cert_tax_payer)s: Tax Payer\n%(cert_tax_payer_display)s: Tax Payer Display\n%(cert_tax_payer_code)s: Tax Payer Code\n%(partner_id)s: Partner ID\n%(partner_name)s: Partner Name\n%(partner_title)s: Partner Title\n%(partner_firstname)s: Partner Firstname\n%(partner_lastname)s: Partner Lastname\n%(partner_address)s: Partner Address\n%(partner_street)s: Partner Street\n%(partner_street2)s: Partner Street2\n%(partner_city)s: Partner City\n%(partner_state)s: Partner State\n%(partner_zip)s: Partner Zip\n%(partner_country)s: Partner Country\n%(partner_vat)s: Partner VAT\n%(partner_branch)s: Partner Branch\n%(partner_bank_account)s: Partner Bank Account\n%(income_code)s: Income Code\n%(base)s: Base\n%(amount)s: Amount"string='Layout in Text File PND1' -
wht_text_file_pnd3_formatTextdefault='%(row_number)s|%(partner_vat)s|%(partner_branch)s|%(partner_title)s|%(partner_firstname)s|%(partner_lastname)s|%(partner_street)s|%(partner_street2)s|%(partner_city)s|%(partner_state)s|%(partner_zip)s|%(loop_cert_date)s|%(loop_wht_cert_income_desc)s|%(loop_wht_percent)s|%(loop_base)s|%(loop_amount)s|%(loop_cert_tax_payer)s\n'help="Display format to use for text file PND3.\n\nYou can use python-style string pattern with all the fields of the withholding tax (for example, use '%(partner_vat)s' to display the field 'partner_vat') plus\n%(row_number)s: Index\n%(cert_cancel)s: Cancelled\n%(cert_date)s: Date\n%(cert_date_str)s: Date (string)\n%(cert_name)s: Name\n%(cert_tax_payer)s: Tax Payer\n%(cert_tax_payer_display)s: Tax Payer Display\n%(cert_tax_payer_code)s: Tax Payer Code\n%(partner_id)s: Partner ID\n%(partner_name)s: Partner Name\n%(partner_title)s: Partner Title\n%(partner_firstname)s: Partner Firstname\n%(partner_lastname)s: Partner Lastname\n%(partner_address)s: Partner Address\n%(partner_street)s: Partner Street\n%(partner_street2)s: Partner Street2\n%(partner_city)s: Partner City\n%(partner_state)s: Partner State\n%(partner_zip)s: Partner Zip\n%(partner_country)s: Partner Country\n%(partner_vat)s: Partner VAT\n%(partner_branch)s: Partner Branch\n%(partner_bank_account)s: Partner Bank Account\n%(income_code)s: Income Code\n%(base)s: Base\n%(amount)s: Amount"string='Layout in Text File PND3' -
wht_text_file_pnd53_formatTextdefault='%(row_number)s|%(partner_vat)s|%(partner_branch)s|%(partner_title)s|%(partner_name)s|%(partner_street)s|%(partner_street2)s|%(partner_city)s|%(partner_state)s|%(partner_zip)s|%(loop_cert_date)s|%(loop_wht_cert_income_desc)s|%(loop_wht_percent)s|%(loop_base)s|%(loop_amount)s|%(loop_cert_tax_payer)s\n'help="Display format to use for text file PND53.\n\nYou can use python-style string pattern with all the fields of the withholding tax (for example, use '%(partner_vat)s' to display the field 'partner_vat') plus\n%(row_number)s: Index\n%(cert_cancel)s: Cancelled\n%(cert_date)s: Date\n%(cert_date_str)s: Date (string)\n%(cert_name)s: Name\n%(cert_tax_payer)s: Tax Payer\n%(cert_tax_payer_display)s: Tax Payer Display\n%(cert_tax_payer_code)s: Tax Payer Code\n%(partner_id)s: Partner ID\n%(partner_name)s: Partner Name\n%(partner_title)s: Partner Title\n%(partner_firstname)s: Partner Firstname\n%(partner_lastname)s: Partner Lastname\n%(partner_address)s: Partner Address\n%(partner_street)s: Partner Street\n%(partner_street2)s: Partner Street2\n%(partner_city)s: Partner City\n%(partner_state)s: Partner State\n%(partner_zip)s: Partner Zip\n%(partner_country)s: Partner Country\n%(partner_vat)s: Partner VAT\n%(partner_branch)s: Partner Branch\n%(partner_bank_account)s: Partner Bank Account\n%(income_code)s: Income Code\n%(base)s: Base\n%(amount)s: Amount"string='Layout in Text File PND53'
No public methods.
New fields (2)
-
tax_report_formatSelectionreadonly=Falserelated='company_id.tax_report_format'required=True -
wht_report_formatSelectionreadonly=Falserelated='company_id.wht_report_format'required=True
No public methods.
New fields (1)
-
tax_idMany2one → account.taxcomodel_name='account.tax'domain=[('tax_exigibility', '=', 'on_invoice'), ('type_tax_use', 'in', ['sale', 'purchase']), ('include_base_amount', '=', False)]required=Truestring='Tax'
No public methods.
New fields (1)
-
income_tax_formSelectionrequired=Trueselection=[('pnd1', 'PND1'), ('pnd1a', 'PND1A'), ('pnd2', 'PND2'), ('pnd3', 'PND3'), ('pnd53', 'PND53')]
-
button_export_txt(self)
Loading…
Loading…
- Status
- Open migration PR — not merged yet for this version
- CI status
- checks failing
- Open since
- 158 days ago
- Last activity
- 1 day ago
- Repository
- OCA/l10n-thailand
- Pull request
- [19.0][MIG] l10n_th_account_tax_report: Migration to 19.0 (#583)