Thai Localization - Base Bank Payment Export

l10n_th_bank_payment_export
REPOSITORY
REPOSITORYOCA/l10n-thailand
GIT
GIThttps://github.com/OCA/l10n-thailand.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-thailand/tree/16.0/l10n_th_bank_payment_export
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYLocalization / Accounting
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSWeblate
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-thailand
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:49
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/partner-contact:
    - partner_bank_code
OCA/reporting-engine:
    - report_xlsx_helper
    - report_xlsx
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - 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

Code Analysis

Views touched (16)
XML IDNameModelTypeStatus
bank_payment_export_line_view_form bank.payment.export.line.view.form bank.payment.export.line form New
bank_payment_export_line_view_tree bank.payment.export.line.view.tree bank.payment.export.line tree New
bank_payment_export_text_file bank_payment_export_text_file ir.ui.view qweb New
bank_payment_export_view_form bank.payment.export.view.form bank.payment.export form New
bank_payment_export_view_search bank.payment.export.view.search bank.payment.export search New
bank_payment_export_view_tree bank.payment.export.view.tree bank.payment.export tree New
bank_payment_template_view_form bank.payment.template.view.form bank.payment.template form New
bank_payment_template_view_search bank.payment.template.view.search bank.payment.template search New
bank_payment_template_view_tree bank.payment.template.view.tree bank.payment.template tree New
view_account_payment_form account.view.account.payment.form account.payment xpath Inherits account.view_account_payment_form
view_account_payment_register_form account.payment.register.form account.payment.register xpath Inherits account.view_account_payment_register_form
view_account_payment_search account.payment.search account.payment xpath Inherits account.view_account_payment_search
view_account_payment_tree account.view.account.payment.tree account.payment xpath Inherits account.view_account_payment_tree
view_partner_bank_form res.partner.bank.form res.partner.bank xpath Inherits base.view_partner_bank_form
view_partner_bank_tree res.partner.bank.tree res.partner.bank xpath Inherits base.view_partner_bank_tree
view_partner_property_form res.partner.property.form.inherit res.partner xpath Inherits account.view_partner_property_form
Models touched (9)

New fields (3)
  • bank_payment_template_id Many2one → bank.payment.template
    comodel_name='bank.payment.template' help='it help default value from bank payment template' tracking=True
  • export_status Selection
    copy=False default='draft' help='it means status the money has already been sent to the bank.' readonly=True selection=[('draft', 'Draft'), ('to_export', 'To Export'), ('exported', 'Exported')] tracking=True
  • payment_export_id Many2one → bank.payment.export
    comodel_name='bank.payment.export' copy=False help='Link to Bank Payment Export' index=True readonly=True string='Payment Export' tracking=True
Public methods (0)

No public methods.

New fields (2)
  • bank_payment_template_id Many2one → bank.payment.template
    check_company=True comodel_name='bank.payment.template' compute='_compute_bank_payment_template' readonly=False store=True
  • is_export Boolean
    help='if checked, it means the money has already been sent to the bank.' string='Bank Payment Exported'
Public methods (0)

No public methods.

New fields (3)
  • field_id Many2one → ir.model.fields
    comodel_name='ir.model.fields' domain=[('model', '=', 'bank.payment.export')] index=True ondelete='cascade' required=True
  • template_id Many2one → bank.payment.template
    comodel_name='bank.payment.template' index=True
  • value Char
    required=True
Public methods (0)

No public methods.

New fields (10)
  • bank Selection
    readonly=True selection=[] states={'draft': [('readonly', False)]} tracking=True
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> required=True
  • currency_id Many2one → res.currency
    comodel_name='res.currency' default=<expr> required=True
  • effective_date Date
    copy=False readonly=True states={'draft': [('readonly', False)]}
  • export_line_ids One2many → bank.payment.export.line
    comodel_name='bank.payment.export.line' inverse_name='payment_export_id' readonly=True states={'draft': [('readonly', False)]}
  • is_required_effective_date Boolean
    compute='_compute_required_effective_date' copy=False default=False
  • name Char
    copy=False default='/' index=True readonly=True required=True
  • state Selection
    copy=False default='draft' index=True readonly=True string='Status' tracking=True args: [('draft', 'Draft'), ('confirm', 'Confirmed'), ('done', 'Exported'), ('cancel', 'Cancelled'), ('reject', 'Rejected')]
  • template_id Many2one → bank.payment.template
    check_company=True comodel_name='bank.payment.template' readonly=True states={'draft': [('readonly', False)]} string='Template' tracking=True
  • total_amount Monetary
    compute='_compute_total_amount' readonly=True store=True
Public methods (14)
  • action_cancel(self)
    Reset export_status on payment to 'Draft' and cancel this document
  • action_confirm(self)
  • action_create_bank_payment_export(self)
    @api.model
    Create bank payment export from vendor payments
  • action_done(self)
  • action_draft(self)
  • action_export_excel_file(self)
  • action_export_text_file(self)
  • action_get_all_payments(self)
  • action_reject(self)
    Reset export_status on payment to 'Draft' and reject this document
  • check_bank_payment(self)
    @api.constrains('bank')
  • check_effective_date(self)
    @api.constrains('effective_date')
  • create(self, vals_list)
    @api.model_create_multi
  • print_report(self, report_type)
  • unlink(self)
    Check state draft can delete only.

New fields (11)
  • company_id Many2one → res.company
    comodel_name='res.company' related='payment_export_id.company_id' store=True
  • currency_id Many2one → res.currency
    comodel_name='res.currency' related='payment_export_id.currency_id' store=True
  • payment_amount Monetary
    related='payment_id.amount'
  • payment_bank_id Many2one → res.bank
    comodel_name='res.bank' index=True related='payment_partner_bank_id.bank_id' store=True string='Bank'
  • payment_date Date
    related='payment_id.date'
  • payment_export_id Many2one → bank.payment.export
    comodel_name='bank.payment.export' index=True
  • payment_id Many2one → account.payment
    comodel_name='account.payment' domain=<expr> index=True ondelete='restrict' required=True
  • payment_journal_id Many2one → account.journal
    comodel_name='account.journal' related='payment_id.journal_id' string='Journal'
  • payment_partner_bank_id Many2one → res.partner.bank
    comodel_name='res.partner.bank' compute='_compute_payment_default' index=True states={'draft': [('readonly', False)]} store=True string='Recipient Bank'
  • payment_partner_id Many2one → res.partner
    comodel_name='res.partner' related='payment_id.partner_id' string='Vendor'
  • state Selection
    related='payment_export_id.state' store=True string='Status'
Public methods (4)
  • action_reject(self)
  • clear_payment_exported(self)
  • create(self, vals_list)
    @api.model_create_multi
    link payment and bank payment export
  • unlink(self)
    Check state draft can delete only.

New fields (4)
  • bank Selection
    required=True selection=[]
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> required=True
  • name Char
    required=True
  • template_config_line One2many → bank.payment.config
    comodel_name='bank.payment.config' inverse_name='template_id'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • property_bank_payment_template_id Many2one → bank.payment.template
    comodel_name='bank.payment.template' help='Default bank payment template on each partner.' string='Bank Payment Template'
Public methods (0)

No public methods.

New fields (1)
  • acc_holder_name_en Char
    help='Account holder name, in case it is bank bahtnet' string='Account Holder Name (EN)'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/l10n-thailand
GIT
GIThttps://github.com/OCA/l10n-thailand.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-thailand/tree/15.0/l10n_th_bank_payment_export
VERSION
VERSION 4.1.1
CATEGORY
CATEGORYLocalization / Accounting
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSOCA-git-bot, oca-ci, Saran440, Pani-k-folk
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-thailand
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:35
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/partner-contact:
    - partner_bank_code
OCA/reporting-engine:
    - report_xlsx_helper
    - report_xlsx
odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES xlrd
xlsxwriter
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (18)
XML IDNameModelTypeStatus
bank_payment_export_line_view_form bank.payment.export.line.view.form bank.payment.export.line form New
bank_payment_export_line_view_tree bank.payment.export.line.view.tree bank.payment.export.line tree New
bank_payment_export_text_file bank_payment_export_text_file ir.ui.view qweb New
bank_payment_export_view_form bank.payment.export.view.form bank.payment.export form New
bank_payment_export_view_search bank.payment.export.view.search bank.payment.export search New
bank_payment_export_view_tree bank.payment.export.view.tree bank.payment.export tree New
bank_payment_template_view_form bank.payment.template.view.form bank.payment.template form New
bank_payment_template_view_search bank.payment.template.view.search bank.payment.template search New
bank_payment_template_view_tree bank.payment.template.view.tree bank.payment.template tree New
view_account_payment_form account.view.account.payment.form account.payment xpath Inherits account.view_account_payment_form
view_account_payment_register_form account.payment.register.form account.payment.register xpath Inherits account.view_account_payment_register_form
view_account_payment_search account.payment.search account.payment xpath Inherits account.view_account_payment_search
view_account_payment_tree account.view.account.payment.tree account.payment xpath Inherits account.view_account_payment_tree
view_bank_export_format_form bank.export.format.form bank.export.format form New
view_bank_export_format_tree bank.export.format.tree bank.export.format tree New
view_partner_bank_form res.partner.bank.form res.partner.bank xpath Inherits base.view_partner_bank_form
view_partner_bank_tree res.partner.bank.tree res.partner.bank xpath Inherits base.view_partner_bank_tree
view_partner_property_form res.partner.property.form.inherit res.partner xpath Inherits account.view_partner_property_form
Models touched (11)

New fields (3)
  • bank_payment_template_id Many2one → bank.payment.template
    comodel_name='bank.payment.template' help='it help default value from bank payment template' tracking=True
  • export_status Selection
    copy=False default='draft' help='it means status the money has already been sent to the bank.' readonly=True selection=[('draft', 'Draft'), ('to_export', 'To Export'), ('exported', 'Exported')] tracking=True
  • payment_export_id Many2one → bank.payment.export
    comodel_name='bank.payment.export' copy=False help='Link to Bank Payment Export' index=True readonly=True string='Payment Export' tracking=True
Public methods (0)

No public methods.

New fields (2)
  • bank_payment_template_id Many2one → bank.payment.template
    check_company=True comodel_name='bank.payment.template' compute='_compute_bank_payment_template' readonly=False store=True
  • is_export Boolean
    help='if checked, it means the money has already been sent to the bank.' string='Bank Payment Exported'
Public methods (0)

No public methods.

New fields (3)
  • bank Selection
    selection=[]
  • export_format_ids One2many → bank.export.format.line
    comodel_name='bank.export.format.line' inverse_name='bank_id'
  • name Char
    required=True
Public methods (0)

No public methods.

New fields (17)
  • bank_id Many2one → bank.export.format
    comodel_name='bank.export.format' index=True ondelete='cascade' required=True
  • condition_line Text
  • display_type Selection
    default=False help='Technical field for UX purpose.' args: [('line_section', 'Section'), ('line_note', 'Note')]
  • end_line Boolean
  • lenght Integer
    required=True
  • lenght_from Integer
    compute='_compute_lenght' store=True string='From'
  • lenght_to Integer
    compute='_compute_lenght' store=True string='To'
  • match_group Char
  • name Char
    string='Description'
  • need_loop Boolean
  • sequence Integer
    default=10 required=True
  • sub_loop Boolean
  • sub_value_loop Text
  • value Text
  • value_alignment Selection
    default='ljust' required=True selection=[('ljust', 'Left Justify'), ('rjust', 'Right Justify')] string='Alignment'
  • value_blank_space Char
    help='Blank space for fill in value' string='Blank Space'
  • value_type Selection
    default='fixed' required=True selection=[('fixed', 'Fixed'), ('dynamic', 'Dynamic')]
Public methods (0)

No public methods.

New fields (4)
  • field_id Many2one → ir.model.fields
    comodel_name='ir.model.fields' domain=[('model', '=', 'bank.payment.export')] index=True ondelete='cascade' required=True
  • field_type Selection
    related='field_id.ttype'
  • template_id Many2one → bank.payment.template
    comodel_name='bank.payment.template' index=True
  • value Char
    required=True
Public methods (0)

No public methods.

New fields (11)
  • bank Selection
    readonly=True selection=[] states={'draft': [('readonly', False)]} tracking=True
  • bank_export_format_id Many2one → bank.export.format
    comodel_name='bank.export.format' domain="[('bank', '=', bank)]" readonly=True states={'draft': [('readonly', False)]} string='Bank Export Format' tracking=True
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> required=True
  • currency_id Many2one → res.currency
    comodel_name='res.currency' default=<expr> required=True
  • effective_date Date
    copy=False readonly=True states={'draft': [('readonly', False)]}
  • export_line_ids One2many → bank.payment.export.line
    comodel_name='bank.payment.export.line' inverse_name='payment_export_id' readonly=True states={'draft': [('readonly', False)]}
  • is_required_effective_date Boolean
    compute='_compute_required_effective_date' copy=False default=False
  • name Char
    copy=False default='/' index=True readonly=True required=True
  • state Selection
    copy=False default='draft' index=True readonly=True string='Status' tracking=True args: [('draft', 'Draft'), ('confirm', 'Confirmed'), ('done', 'Exported'), ('cancel', 'Cancelled'), ('reject', 'Rejected')]
  • template_id Many2one → bank.payment.template
    check_company=True comodel_name='bank.payment.template' readonly=True states={'draft': [('readonly', False)]} string='Template' tracking=True
  • total_amount Monetary
    compute='_compute_total_amount' readonly=True store=True
Public methods (14)
  • action_cancel(self)
    Reset export_status on payment to 'Draft' and cancel this document
  • action_confirm(self)
  • action_create_bank_payment_export(self)
    @api.model
    Create bank payment export from vendor payments
  • action_done(self)
  • action_draft(self)
  • action_export_excel_file(self)
  • action_export_text_file(self)
  • action_get_all_payments(self)
  • action_reject(self)
    Reset export_status on payment to 'Draft' and reject this document
  • check_bank_payment(self)
    @api.constrains('bank')
  • check_effective_date(self)
    @api.constrains('effective_date')
  • create(self, vals)
    @api.model
  • print_report(self, report_type)
  • unlink(self)
    Check state draft can delete only.

New fields (11)
  • company_id Many2one → res.company
    comodel_name='res.company' related='payment_export_id.company_id' store=True
  • currency_id Many2one → res.currency
    comodel_name='res.currency' related='payment_export_id.currency_id' store=True
  • payment_amount Monetary
    related='payment_id.amount'
  • payment_bank_id Many2one → res.bank
    comodel_name='res.bank' index=True related='payment_partner_bank_id.bank_id' store=True string='Bank'
  • payment_date Date
    related='payment_id.date'
  • payment_export_id Many2one → bank.payment.export
    comodel_name='bank.payment.export' index=True
  • payment_id Many2one → account.payment
    comodel_name='account.payment' domain=<expr> index=True ondelete='restrict' required=True
  • payment_journal_id Many2one → account.journal
    comodel_name='account.journal' related='payment_id.journal_id' string='Journal'
  • payment_partner_bank_id Many2one → res.partner.bank
    comodel_name='res.partner.bank' compute='_compute_payment_default' index=True states={'draft': [('readonly', False)]} store=True string='Recipient Bank'
  • payment_partner_id Many2one → res.partner
    comodel_name='res.partner' related='payment_id.partner_id' string='Vendor'
  • state Selection
    related='payment_export_id.state' store=True string='Status'
Public methods (5)
  • action_reject(self)
  • clear_payment_exported(self)
  • create(self, vals)
    @api.model
    link payment and bank payment export
  • sanitize_account_number(self, acc_number)
  • unlink(self)
    Check state draft can delete only.

New fields (5)
  • bank Selection
    required=True selection=[]
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> required=True
  • journal_ids Many2many → account.journal
    comodel_name='account.journal'
  • name Char
    required=True
  • template_config_line One2many → bank.payment.config
    comodel_name='bank.payment.config' inverse_name='template_id'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • property_bank_payment_template_id Many2one → bank.payment.template
    check_company=True comodel_name='bank.payment.template' company_dependent=True help='Default bank payment template on each partner.' string='Bank Payment Template'
Public methods (0)

No public methods.

New fields (1)
  • acc_holder_name_en Char
    help='Account holder name, in case it is bank bahtnet' string='Account Holder Name (EN)'
Public methods (0)

No public methods.