{"en_US": "<form string=\"Account Entry\" js_class=\"account_move_form\">\n                    <header>\n                        <!-- Post -->\n                        <button name=\"action_post\" string=\"Post\" class=\"oe_highlight\" type=\"object\" groups=\"account.group_account_invoice\" data-hotkey=\"v\" context=\"{'validate_analytic': True}\" attrs=\"{'invisible': ['|', ('hide_post_button', '=', True), ('move_type', '!=', 'entry')]}\"/>\n                        <button name=\"action_post\" string=\"Confirm\" class=\"oe_highlight\" type=\"object\" groups=\"account.group_account_invoice\" data-hotkey=\"v\" context=\"{'validate_analytic': True}\" attrs=\"{'invisible': ['|', '|', ('hide_post_button', '=', True), ('move_type', '=', 'entry'), ('display_inactive_currency_warning','=',True)]}\"/>\n                        <!-- Send (only invoices) -->\n                        <button name=\"action_invoice_sent\" type=\"object\" string=\"Send &amp; Print\" attrs=\"{'invisible':['|', '|', ('state', '!=', 'posted'), ('is_move_sent', '=', True), ('move_type', 'not in', ('out_invoice', 'out_refund'))]}\" class=\"oe_highlight\" data-hotkey=\"y\"/>\n                        <button name=\"action_invoice_sent\" type=\"object\" string=\"Send &amp; Print\" attrs=\"{'invisible':['|', '|', ('state', '!=', 'posted'), ('is_move_sent', '=', False), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund'))]}\" data-hotkey=\"y\"/>\n                        <!-- Register Payment (only invoices / receipts) -->\n                        <button name=\"action_register_payment\" id=\"account_invoice_payment_btn\" type=\"object\" class=\"oe_highlight\" attrs=\"{'invisible': ['|', '|', ('state', '!=', 'posted'), ('payment_state', 'not in', ('not_paid', 'partial')), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\" context=\"{'dont_redirect_to_payments': True}\" string=\"Register Payment\" data-hotkey=\"g\" groups=\"account.group_account_invoice\"/>\n                        <!-- Preview (only customer invoices) -->\n                        <button name=\"preview_invoice\" type=\"object\" string=\"Preview\" data-hotkey=\"o\" title=\"Preview invoice\" attrs=\"{'invisible': ['|', ('move_type', 'not in', ('out_invoice', 'out_refund')), ('state', '==', 'cancel')]}\"/>\n                        <!-- Reverse -->\n                        <button name=\"228\" string=\"Reverse Entry\" type=\"action\" groups=\"account.group_account_invoice\" data-hotkey=\"z\" attrs=\"{'invisible': ['|', ('move_type', '!=', 'entry'), '|', ('state', '!=', 'posted'), ('payment_state', '=', 'reversed')]}\"/>\n                        <button name=\"action_reverse\" string=\"Add Credit Note\" type=\"object\" groups=\"account.group_account_invoice\" attrs=\"{'invisible': ['|', ('move_type', 'not in', ('out_invoice', 'in_invoice')), ('state', '!=', 'posted')]}\"/>\n                        <!-- Cancel -->\n                        <button name=\"button_cancel\" string=\"Cancel Entry\" type=\"object\" groups=\"account.group_account_invoice\" data-hotkey=\"w\" attrs=\"{'invisible' : ['|', '|', ('id', '=', False), ('state', '!=', 'draft'),('move_type', '!=', 'entry')]}\"/>\n                        <button name=\"button_cancel\" string=\"Cancel\" type=\"object\" groups=\"account.group_account_invoice\" data-hotkey=\"w\" attrs=\"{'invisible' : ['|', '|', ('id', '=', False), ('state', '!=', 'draft'),('move_type', '==', 'entry')]}\"/>\n                        <button name=\"button_draft\" string=\"Reset to Draft\" type=\"object\" groups=\"account.group_account_invoice\" attrs=\"{'invisible' : [('show_reset_to_draft_button', '=', False)]}\" data-hotkey=\"q\"/>\n                        <!-- Set as Checked -->\n                        <button name=\"button_set_checked\" string=\"Set as Checked\" type=\"object\" groups=\"account.group_account_invoice\" attrs=\"{'invisible' : [('to_check', '=', False)]}\" data-hotkey=\"k\"/>\n                        <field name=\"state\" widget=\"statusbar\" statusbar_visible=\"draft,posted\"/>\n                    </header>\n                    <div class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('duplicated_ref_ids', '=', [])]}\">\n                        Warning: this bill might be a duplicate of\n                        <button name=\"open_duplicated_ref_bill_view\" type=\"object\" string=\"one of those bills\" class=\"btn btn-link p-0\"/>\n                    </div>\n                    <!-- Invoice outstanding credits -->\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('tax_lock_date_message', '=', False)]}\">\n                        <field name=\"tax_lock_date_message\" nolabel=\"1\"/>\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('move_type', 'not in', ('out_invoice', 'out_receipt')), ('invoice_has_outstanding', '=', False), ('payment_state', 'not in', ('not_paid', 'partial'))]}\">\n                        You have <bold><a class=\"alert-link\" href=\"#outstanding\" role=\"button\">outstanding credits</a></bold> for this customer. You can allocate them to mark this invoice as paid.\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('move_type', 'not in', ('in_invoice', 'in_receipt')), ('invoice_has_outstanding', '=', False), ('payment_state', 'not in', ('not_paid', 'partial'))]}\">\n                        You have <bold><a class=\"alert-link\" href=\"#outstanding\" role=\"button\">outstanding debits</a></bold> for this vendor. You can allocate them to mark this bill as paid.\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('move_type', '!=', 'out_refund'), ('invoice_has_outstanding', '=', False), ('payment_state', 'not in', ('not_paid', 'partial'))]}\">\n                        You have <bold><a class=\"alert-link\" href=\"#outstanding\" role=\"button\">outstanding debits</a></bold> for this customer. You can allocate them to mark this credit note as paid.\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('move_type', '!=', 'in_refund'), ('invoice_has_outstanding', '=', False), ('payment_state', 'not in', ('not_paid', 'partial'))]}\">\n                        You have <bold><a class=\"alert-link\" href=\"#outstanding\" role=\"button\">outstanding credits</a></bold> for this vendor. You can allocate them to mark this credit note as paid.\n                    </div>\n                    <div class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('auto_post', '!=', 'at_date')]}\">\n                        This move is configured to be posted automatically at the accounting date: <field name=\"date\" readonly=\"1\"/>.\n                    </div>\n                    <div class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('state', '!=', 'draft'), ('auto_post', '=', 'no'), ('auto_post', '=', 'at_date')]}\">\n                         <field name=\"auto_post\" readonly=\"1\"/> auto-posting enabled. Next accounting date: <field name=\"date\" readonly=\"1\"/>.<span attrs=\"{'invisible': [('auto_post_until', '=', False)]}\"> The recurrence will end on <field name=\"auto_post_until\" readonly=\"1\"/> (included).</span>\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': [('partner_credit_warning', '=', '')]}\">\n                        <field name=\"partner_credit_warning\"/>\n                    </div>\n                    <!-- Currency consistency -->\n                    <div class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('display_inactive_currency_warning', '=', False), ('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt'))]}\">\n                        In order to validate this bill, you must <button class=\"oe_link\" type=\"object\" name=\"action_activate_currency\" style=\"padding: 0; vertical-align: baseline;\">activate the currency of the bill</button>. The journal entries need to be computed by Odoo before being posted in your company's currency.\n                    </div>\n                    <div class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('display_inactive_currency_warning', '=', False), ('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}\">\n                        In order to validate this invoice, you must <button class=\"oe_link\" type=\"object\" name=\"action_activate_currency\" style=\"padding: 0; vertical-align: baseline;\">activate the currency of the invoice</button>. The journal entries need to be computed by Odoo before being posted in your company's currency.\n                    </div>\n                    <sheet>\n                        <div name=\"button_box\" class=\"oe_button_box\">\n                            <button name=\"action_open_business_doc\" class=\"oe_stat_button\" icon=\"fa-bars\" type=\"object\" attrs=\"{'invisible': ['|', '|', ('move_type', '!=', 'entry'), ('id', '=', False), ('payment_id', '=', False)]}\" string=\"1 Payment\">\n                            </button>\n                            <button name=\"open_reconcile_view\" class=\"oe_stat_button\" icon=\"fa-bars\" type=\"object\" attrs=\"{'invisible': ['|', '|', ('move_type', '!=', 'entry'), ('id', '=', False), ('has_reconciled_entries', '=', False)]}\" string=\"Reconciled Items\">\n                            </button>\n                            <button name=\"open_created_caba_entries\" class=\"oe_stat_button\" icon=\"fa-usd\" type=\"object\" attrs=\"{'invisible': [('tax_cash_basis_created_move_ids', '=', [])]}\" string=\"Cash Basis Entries\">\n                            </button>\n                        </div>\n\n                        <!-- Payment status for invoices / receipts -->\n                        <widget name=\"web_ribbon\" title=\"Paid\" attrs=\"{'invisible': ['|', ('payment_state', '!=', 'paid'), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n                        <widget name=\"web_ribbon\" title=\"In Payment\" attrs=\"{'invisible': ['|', ('payment_state', '!=', 'in_payment'), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n                        <widget name=\"web_ribbon\" title=\"Partial\" attrs=\"{'invisible': ['|', ('payment_state', '!=', 'partial'), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n                        <widget name=\"web_ribbon\" title=\"Reversed\" bg_color=\"bg-danger\" attrs=\"{'invisible': [('payment_state', '!=', 'reversed')]}\"/>\n                         <widget name=\"web_ribbon\" text=\"Invoicing App Legacy\" bg_color=\"bg-info\" attrs=\"{'invisible': [('payment_state', '!=', 'invoicing_legacy')]}\" tooltip=\"This entry has been generated through the Invoicing app, before installing Accounting. It has been disabled by the 'Invoicing Switch Threshold Date' setting so that it does not impact your accounting.\"/>\n\n                        <!-- Invisible fields -->\n                        <field name=\"id\" invisible=\"1\"/>\n                        <field name=\"company_id\" invisible=\"1\"/>\n                        <field name=\"journal_id\" invisible=\"1\"/>\n                        <field name=\"show_name_warning\" invisible=\"1\"/>\n                        <field name=\"posted_before\" invisible=\"1\"/>\n                        <field name=\"move_type\" invisible=\"1\"/>\n                        <field name=\"payment_state\" invisible=\"1\" force_save=\"1\"/>\n                        <field name=\"invoice_filter_type_domain\" invisible=\"1\"/>\n                        <field name=\"suitable_journal_ids\" invisible=\"1\"/>\n                        <field name=\"currency_id\" invisible=\"1\"/>\n                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                        <field name=\"commercial_partner_id\" invisible=\"1\"/>\n                        <field name=\"bank_partner_id\" invisible=\"1\"/>\n                        <field name=\"display_qr_code\" invisible=\"1\"/>\n                        <field name=\"show_reset_to_draft_button\" invisible=\"1\"/>\n\n                        <field name=\"invoice_has_outstanding\" invisible=\"1\"/>\n                        <field name=\"is_move_sent\" invisible=\"1\"/>\n                        <field name=\"has_reconciled_entries\" invisible=\"1\"/>\n                        <field name=\"restrict_mode_hash_table\" invisible=\"1\"/>\n                        <field name=\"country_code\" invisible=\"1\"/>\n                        <field name=\"display_inactive_currency_warning\" invisible=\"1\"/>\n                        <field name=\"statement_line_id\" invisible=\"1\"/>\n                        <field name=\"payment_id\" invisible=\"1\"/>\n                        <field name=\"tax_country_id\" invisible=\"1\"/>\n                        <field name=\"tax_cash_basis_created_move_ids\" invisible=\"1\"/>\n                        <field name=\"quick_edit_mode\" invisible=\"1\"/>\n                        <field name=\"hide_post_button\" invisible=\"1\"/>\n                        <field name=\"duplicated_ref_ids\" invisible=\"1\"/>\n                        <field name=\"quick_encoding_vals\" invisible=\"1\"/>\n\n                        <div class=\"oe_title\">\n                            <span class=\"o_form_label\"><field name=\"move_type\" attrs=\"{'invisible': [('move_type', '=', 'entry')]}\" readonly=\"1\" nolabel=\"1\"/></span>\n\n                            <div class=\"text-warning\" attrs=\"{'invisible': [('show_name_warning', '=', False)]}\">The current highest number is <field class=\"oe_inline\" name=\"highest_name\"/>. You might want to put a higher number here.</div>\n\n                            <h1>\n                                <field name=\"name\" attrs=\"{'invisible':[('name', '=', '/'), ('posted_before', '=', False), ('quick_edit_mode', '=', False)],                                 'readonly': [('state', '!=', 'draft')]}\" placeholder=\"Draft\"/>\n\n                                <span attrs=\"{'invisible': ['|', '|', '|', ('state', '!=', 'draft'), ('name', '!=', '/'), ('posted_before', '=', True), ('quick_edit_mode', '=', True)]}\">Draft</span>\n                            </h1>\n                        </div>\n                        <group>\n                            <group id=\"header_left_group\">\n\n                                <label for=\"partner_id\" string=\"Customer\" style=\"font-weight:bold;\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}\"/>\n                                <label for=\"partner_id\" string=\"Vendor\" style=\"font-weight:bold;\" attrs=\"{'invisible': [('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt'))]}\"/>\n                                <field name=\"partner_id\" widget=\"res_partner_many2one\" nolabel=\"1\" context=\"{                                             'res_partner_search_mode': (context.get('default_move_type', 'entry') in ('out_invoice', 'out_refund', 'out_receipt') and 'customer') or (context.get('default_move_type', 'entry') in ('in_invoice', 'in_refund', 'in_receipt') and 'supplier') or False,                                             'show_address': 1, 'default_is_company': True, 'show_vat': True}\" domain=\"[('type', '!=', 'private'), ('company_id', 'in', (False, company_id))]\" options=\"{&quot;always_reload&quot;: True, &quot;no_quick_create&quot;: True}\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n\n                                <field name=\"partner_shipping_id\" groups=\"account.group_delivery_invoice_address\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))], 'readonly': [('state', '!=', 'draft')]}\"/>\n                                <field name=\"quick_edit_total_amount\" class=\"w-50\" attrs=\"{'invisible': ['|', ('move_type', '=', 'entry'), ('quick_edit_mode', '=', False)], 'readonly': [('state', '!=', 'draft')]}\"/>\n                                <label for=\"ref\" string=\"Bill Reference\" attrs=\"{'invisible':[('move_type', 'not in', ('in_invoice', 'in_receipt', 'in_refund'))]}\"/>\n                                <field name=\"ref\" nolabel=\"1\" attrs=\"{'invisible':[('move_type', 'not in', ('in_invoice', 'in_receipt', 'in_refund'))]}\"/>\n                                <field name=\"ref\" attrs=\"{'invisible':[('move_type', 'in', ('in_invoice', 'in_receipt', 'in_refund', 'out_invoice', 'out_refund'))]}\"/>\n                                <field name=\"tax_cash_basis_origin_move_id\" attrs=\"{'invisible': [('tax_cash_basis_origin_move_id', '=', False)]}\"/>\n                                <label name=\"invoice_vendor_bill_id_label\" for=\"invoice_vendor_bill_id\" string=\"Auto-Complete\" class=\"oe_edit_only\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('move_type', '!=', 'in_invoice')]}\"/>\n                                <field name=\"invoice_vendor_bill_id\" nolabel=\"1\" class=\"oe_edit_only\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('move_type', '!=', 'in_invoice')]}\" domain=\"[('company_id', '=', company_id), ('partner_id','child_of', [partner_id]), ('move_type','=','in_invoice')]\" placeholder=\"Select an old vendor bill\" options=\"{'no_create': True}\" context=\"{'show_total_amount': True}\"/>\n                            </group>\n                            <group id=\"header_right_group\">\n\n                                <!-- Invoice date (only invoices / receipts) -->\n                                <label for=\"invoice_date\" string=\"Invoice Date\" style=\"font-weight:bold;\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}\"/>\n                                <label for=\"invoice_date\" string=\"Bill Date\" style=\"font-weight:bold;\" attrs=\"{'invisible': [('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt'))]}\"/>\n                                <field name=\"invoice_date\" nolabel=\"1\" options=\"{'datepicker': {'warn_future': true}}\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n\n                                <field name=\"date\" string=\"Accounting Date\" attrs=\"{                                             'invisible': [('move_type', 'in', ('out_invoice', 'out_refund', 'out_receipt')), ('quick_edit_mode', '=', False)],                                             'readonly': [('state', '!=', 'draft')],                                        }\"/>\n                                <field name=\"payment_reference\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n                                <field name=\"partner_bank_id\" context=\"{'default_partner_id': bank_partner_id}\" domain=\"[('partner_id', '=', bank_partner_id)]\" attrs=\"{'invisible': [('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt'))],                                             'readonly': [('state', '!=', 'draft')]}\"/>\n\n                                <!-- Invoice payment terms (only invoices) + due date (only invoices / receipts) -->\n                                <div class=\"o_td_label\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\">\n                                    <label for=\"invoice_date_due\" string=\"Due Date\" attrs=\"{'invisible': [('invoice_payment_term_id', '!=', False)]}\"/>\n                                    <label for=\"invoice_payment_term_id\" string=\"Payment terms\" attrs=\"{'invisible': [('invoice_payment_term_id', '=', False)]}\"/>\n                                </div>\n                                <div class=\"d-flex\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\">\n                                    <field name=\"invoice_date_due\" force_save=\"1\" placeholder=\"Date\" attrs=\"{'invisible': [('invoice_payment_term_id', '!=', False)]}\"/>\n                                    <span class=\"o_form_label mx-3 oe_edit_only\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('invoice_payment_term_id', '!=', False)]}\"> or </span>\n                                    <field name=\"invoice_payment_term_id\" context=\"{'example_date': invoice_date, 'example_amount': tax_totals['amount_total']}\" placeholder=\"Terms\"/>\n                                </div>\n\n                                <label for=\"journal_id\" groups=\"account.group_account_readonly\" invisible=\"context.get('default_journal_id') and context.get('move_type', 'entry') != 'entry'\"/>\n                                <div name=\"journal_div\" class=\"d-flex\" groups=\"account.group_account_readonly\" invisible=\"context.get('default_journal_id') and context.get('move_type', 'entry') != 'entry'\">\n                                    <field name=\"journal_id\" options=\"{'no_create': True, 'no_open': True}\" attrs=\"{'readonly': [('posted_before', '=', True), ('name', 'not in', (False, '', '/'))]}\"/>\n                                    <span class=\"oe_inline o_form_label mx-3\" groups=\"base.group_multi_currency\" attrs=\"{'invisible': [('move_type', '=', 'entry')]}\"> in </span>\n                                    <field name=\"currency_id\" groups=\"base.group_multi_currency\" attrs=\"{'readonly': [('state', '!=', 'draft')], 'invisible': [('move_type', '=', 'entry')]}\"/>\n                                </div>\n\n                                <field name=\"currency_id\" attrs=\"{'readonly': [('state', '!=', 'draft')]}\" groups=\"!account.group_account_readonly,base.group_multi_currency\"/>\n\n                            </group>\n                        </group>\n                        <notebook>\n                            <page id=\"invoice_tab\" name=\"invoice_tab\" string=\"Invoice Lines\" attrs=\"{'invisible': [('move_type', '=', 'entry')]}\">\n                                <field name=\"invoice_line_ids\" widget=\"section_and_note_one2many\" mode=\"tree,kanban\" context=\"{                                            'default_move_type': context.get('default_move_type'),                                            'journal_id': journal_id,                                            'default_partner_id': commercial_partner_id,                                            'default_currency_id': currency_id or company_currency_id,                                            'default_display_type': 'product',                                            'quick_encoding_vals': quick_encoding_vals,                                        }\">\n                                    <tree editable=\"bottom\" string=\"Journal Items\" default_order=\"sequence, id\">\n                                        <control>\n                                            <create name=\"add_line_control\" string=\"Add a line\"/>\n                                            <create name=\"add_section_control\" string=\"Add a section\" context=\"{'default_display_type': 'line_section'}\"/>\n                                            <create name=\"add_note_control\" string=\"Add a note\" context=\"{'default_display_type': 'line_note'}\"/>\n                                        </control>\n\n                                        <!-- Displayed fields -->\n                                        <field name=\"sequence\" widget=\"handle\"/>\n                                        <field name=\"product_id\" optional=\"show\" widget=\"many2one_barcode\" domain=\"                                                     context.get('default_move_type') in ('out_invoice', 'out_refund', 'out_receipt')                                                     and [('sale_ok', '=', True), '|', ('company_id', '=', False), ('company_id', '=', parent.company_id)]                                                     or [('purchase_ok', '=', True), '|', ('company_id', '=', False), ('company_id', '=', parent.company_id)]                                                \"/>\n                                        <field name=\"name\" widget=\"section_and_note_text\" optional=\"show\"/>\n                                        <field name=\"account_id\" context=\"{'partner_id': partner_id, 'move_type': parent.move_type}\" groups=\"account.group_account_readonly\" options=\"{'no_create': True}\" domain=\"[('deprecated', '=', False), ('account_type', 'not in', ('asset_receivable', 'liability_payable')), ('company_id', '=', parent.company_id), ('is_off_balance', '=', False)]\" attrs=\"{'required': [('display_type', 'not in', ('line_note', 'line_section'))]}\"/>\n                                        <field name=\"analytic_distribution\" widget=\"analytic_distribution\" groups=\"analytic.group_analytic_accounting\" optional=\"show\" options=\"{'product_field': 'product_id', 'account_field': 'account_id'}\" business_domain_compute=\"parent.move_type in ['out_invoice', 'out_refund', 'out_receipt'] and 'invoice' or parent.move_type in ['in_invoice', 'in_refund', 'in_receipt'] and 'bill' or 'general'\"/>\n                                        <field name=\"quantity\" optional=\"show\"/>\n                                        <field name=\"product_uom_category_id\" invisible=\"1\"/>\n                                        <field name=\"product_uom_id\" string=\"UoM\" groups=\"uom.group_uom\" optional=\"show\"/>\n                                        <field name=\"price_unit\" string=\"Price\"/>\n                                        <field name=\"discount\" string=\"Disc.%\" optional=\"hide\"/>\n                                        <field name=\"tax_ids\" widget=\"many2many_tags\" domain=\"[('type_tax_use', '=?', parent.invoice_filter_type_domain), ('company_id', '=', parent.company_id), ('country_id', '=', parent.tax_country_id)]\" context=\"{'append_type_to_tax_name': not parent.invoice_filter_type_domain}\" options=\"{'no_create': True}\" optional=\"show\"/>\n                                        <field name=\"price_subtotal\" string=\"Subtotal\" groups=\"account.group_show_line_subtotals_tax_excluded\"/>\n                                        <field name=\"price_total\" string=\"Total\" groups=\"account.group_show_line_subtotals_tax_included\"/>\n\n                                        <!-- Others fields -->\n                                        <field name=\"partner_id\" invisible=\"1\"/>\n                                        <field name=\"currency_id\" invisible=\"1\"/>\n                                        <field name=\"company_id\" invisible=\"1\"/>\n                                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                                        <field name=\"display_type\" force_save=\"1\" invisible=\"1\"/>\n                                        <!-- /l10n_in_edi.test_edi_json -->\n                                        <!-- required for @api.onchange('product_id') -->\n                                        <field name=\"product_uom_id\" invisible=\"1\"/>\n                                    </tree>\n                                    <kanban class=\"o_kanban_mobile\">\n                                        <!-- Displayed fields -->\n                                        <field name=\"name\"/>\n                                        <field name=\"product_id\"/>\n                                        <field name=\"price_subtotal\" groups=\"account.group_show_line_subtotals_tax_excluded\"/>\n                                        <field name=\"price_total\" groups=\"account.group_show_line_subtotals_tax_included\"/>\n                                        <field name=\"quantity\"/>\n                                        <field name=\"product_uom_category_id\" invisible=\"1\"/>\n                                        <field name=\"product_uom_id\" groups=\"uom.group_uom\"/>\n                                        <field name=\"price_unit\"/>\n                                        <templates>\n                                            <t t-name=\"kanban-box\">\n                                                <div t-attf-class=\"oe_kanban_card oe_kanban_global_click ps-0 pe-0 {{ record.display_type.raw_value ? 'o_is_' + record.display_type.raw_value : '' }}\">\n                                                    <t t-if=\"!['line_note', 'line_section'].includes(record.display_type.raw_value)\">\n                                                        <div class=\"row g-0\">\n                                                            <div class=\"col-2 pe-3\">\n                                                                <img t-att-src=\"kanban_image('product.product', 'image_128', record.product_id.raw_value)\" t-att-title=\"record.product_id.value\" t-att-alt=\"record.product_id.value\" style=\"max-width: 100%;\"/>\n                                                            </div>\n                                                            <div class=\"col-10\">\n                                                                <div class=\"row\">\n                                                                    <div class=\"col\">\n                                                                        <strong t-esc=\"record.product_id.value\"/>\n                                                                    </div>\n                                                                    <div class=\"col-auto\">\n                                                                        <strong class=\"float-end text-end\">\n                                                                            <t t-esc=\"record.price_subtotal.value\" groups=\"account.group_show_line_subtotals_tax_excluded\"/>\n                                                                            <t t-esc=\"record.price_total.value\" groups=\"account.group_show_line_subtotals_tax_included\"/>\n                                                                        </strong>\n                                                                    </div>\n                                                                </div>\n                                                                <div class=\"text-muted\">\n                                                                    Quantity:\n                                                                    <t t-esc=\"record.quantity.value\"/>\n                                                                    <t t-esc=\"record.product_uom_id.value\" groups=\"uom.group_uom\"/>\n                                                                </div>\n                                                                <div class=\"text-muted\">\n                                                                    Unit Price:\n                                                                    <t t-esc=\"record.price_unit.value\"/>\n                                                                </div>\n                                                            </div>\n                                                        </div>\n                                                    </t>\n                                                    <t t-if=\"record.display_type.raw_value === 'line_section' || record.display_type.raw_value === 'line_note'\">\n                                                        <div class=\"row\">\n                                                            <div class=\"col-12\">\n                                                                <t t-esc=\"record.name.value\"/>\n                                                            </div>\n                                                        </div>\n                                                    </t>\n                                                </div>\n                                            </t>\n                                        </templates>\n\n                                        <!-- Others fields -->\n                                        <field name=\"currency_id\" invisible=\"1\"/>\n                                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                                        <field name=\"display_type\" force_save=\"1\" invisible=\"1\"/>\n                                    </kanban>\n\n                                    <!-- Form view to cover mobile use -->\n                                    <form>\n                                        <sheet>\n                                            <field name=\"display_type\" invisible=\"1\"/>\n                                            <field name=\"company_id\" invisible=\"1\"/>\n                                            <field name=\"partner_id\" invisible=\"1\"/>\n                                            <group>\n                                                <field name=\"product_id\" widget=\"many2one_barcode\"/>\n                                                <field name=\"quantity\"/>\n                                                <field name=\"product_uom_category_id\" invisible=\"1\"/>\n                                                <field name=\"product_uom_id\" groups=\"uom.group_uom\"/>\n                                                <field name=\"price_unit\"/>\n                                                <field name=\"discount\" string=\"Disc.%\"/>\n                                            </group>\n                                            <group>\n                                                <field name=\"account_id\" options=\"{'no_create': True}\" domain=\"[('company_id', '=', company_id)]\" context=\"{'partner_id': partner_id, 'move_type': parent.move_type}\"/>\n                                                <field name=\"tax_ids\" widget=\"many2many_tags\"/>\n                                                <field name=\"analytic_distribution\" widget=\"analytic_distribution\" groups=\"analytic.group_analytic_accounting\"/>\n                                            </group>\n                                            <label for=\"name\" string=\"Description\" attrs=\"{'invisible': [('display_type', 'in', ('line_note', 'line_section'))]}\"/>\n                                            <label for=\"name\" string=\"Section\" attrs=\"{'invisible': [('display_type', '!=', 'line_section')]}\"/>\n                                            <label for=\"name\" string=\"Note\" attrs=\"{'invisible': [('display_type', '!=', 'line_note')]}\"/>\n                                            <field name=\"name\" widget=\"text\"/>\n                                            <group>\n                                                <field name=\"price_subtotal\" string=\"Subtotal\" groups=\"account.group_show_line_subtotals_tax_excluded\"/>\n                                                <field name=\"price_total\" string=\"Total\" groups=\"account.group_show_line_subtotals_tax_included\"/>\n                                            </group>\n                                        </sheet>\n                                    </form>\n                                </field>\n                                <group col=\"12\" class=\"oe_invoice_lines_tab\">\n                                    <group colspan=\"8\">\n                                        <field name=\"narration\" placeholder=\"Terms and Conditions\" colspan=\"2\" nolabel=\"1\"/>\n                                    </group>\n                                    <!-- Totals (only invoices / receipts) -->\n                                    <group colspan=\"4\">\n                                        <group class=\"oe_subtotal_footer oe_right\" attrs=\"{'invisible': ['|', ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt')),                                                                        ('payment_state' ,'=', 'invoicing_legacy')]}\">\n\n                                            <field name=\"tax_totals\" widget=\"account-tax-totals-field\" nolabel=\"1\" colspan=\"2\" attrs=\"{'readonly': ['|', ('state', '!=', 'draft'), '&amp;', ('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt')), ('quick_edit_mode', '=', False)]}\"/>\n\n                                            <field name=\"invoice_payments_widget\" colspan=\"2\" nolabel=\"1\" widget=\"payment\"/>\n                                            <field name=\"amount_residual\" class=\"oe_subtotal_footer_separator\" attrs=\"{'invisible': [('state', '=', 'draft')]}\"/>\n                                        </group>\n                                        <field name=\"invoice_outstanding_credits_debits_widget\" class=\"oe_invoice_outstanding_credits_debits\" colspan=\"2\" nolabel=\"1\" widget=\"payment\" attrs=\"{'invisible': [('state', '!=', 'posted')]}\"/>\n                                    </group>\n                                </group>\n                            </page>\n                            <page id=\"aml_tab\" string=\"Journal Items\" groups=\"account.group_account_readonly\" name=\"aml_tab\">\n                                <field name=\"line_ids\" mode=\"tree,kanban\" context=\"{                                            'default_move_type': context.get('default_move_type'),                                            'line_ids': line_ids,                                            'journal_id': journal_id,                                            'default_partner_id': commercial_partner_id,                                            'default_currency_id': currency_id or company_currency_id,                                            'kanban_view_ref': 'account.account_move_line_view_kanban_mobile',                                        }\" attrs=\"{'invisible': [('payment_state', '=', 'invoicing_legacy'), ('move_type', '!=', 'entry')]}\">\n                                    <tree editable=\"bottom\" string=\"Journal Items\" decoration-muted=\"display_type in ('line_section', 'line_note')\" default_order=\"sequence, id\">\n                                        <!-- Displayed fields -->\n                                        <field name=\"account_id\" attrs=\"{                                                     'required': [('display_type', 'not in', ('line_section', 'line_note'))],                                                     'invisible': [('display_type', 'in', ('line_section', 'line_note'))],                                                }\" domain=\"[('deprecated', '=', False), ('company_id', '=', parent.company_id)]\"/>\n                                        <field name=\"partner_id\" optional=\"show\" domain=\"['|', ('parent_id', '=', False), ('is_company', '=', True)]\" attrs=\"{'column_invisible': [('parent.move_type', '!=', 'entry')]}\"/>\n                                        <field name=\"name\" widget=\"section_and_note_text\" optional=\"show\"/>\n                                        <field name=\"analytic_distribution\" widget=\"analytic_distribution\" groups=\"analytic.group_analytic_accounting\" optional=\"show\" options=\"{'account_field': 'account_id'}\" business_domain_compute=\"parent.move_type in ['out_invoice', 'out_refund', 'out_receipt'] and 'invoice' or parent.move_type in ['in_invoice', 'in_refund', 'in_receipt'] and 'bill' or 'general'\"/>\n                                        <field name=\"date_maturity\" optional=\"hide\" invisible=\"context.get('view_no_maturity')\" attrs=\"{'invisible': [('display_type', 'in', ('line_section', 'line_note'))]}\"/>\n                                        <field name=\"amount_currency\" groups=\"base.group_multi_currency\" optional=\"hide\"/>\n                                        <field name=\"currency_id\" options=\"{'no_create': True}\" optional=\"hide\" groups=\"base.group_multi_currency\" attrs=\"{'column_invisible': [('parent.move_type', '!=', 'entry')]}\"/>\n                                        <field name=\"tax_ids\" widget=\"autosave_many2many_tags\" optional=\"hide\" domain=\"[('type_tax_use', '=?', parent.invoice_filter_type_domain)]\" context=\"{'append_type_to_tax_name': not parent.invoice_filter_type_domain}\" options=\"{'no_create': True}\" force_save=\"1\" attrs=\"{'readonly': [                                                     '|', '|',                                                     ('display_type', 'in', ('line_section', 'line_note')),                                                     ('tax_line_id', '!=', False),                                                     '&amp;',                                                     ('parent.move_type', 'in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt')),                                                     ('account_type', 'in', ('asset_receivable', 'liability_payable')),                                                 ]}\"/>\n                                        <field name=\"debit\" sum=\"Total Debit\" attrs=\"{'invisible': [('display_type', 'in', ('line_section', 'line_note'))], 'readonly': [('parent.move_type', 'in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt')), ('display_type', 'in', ('line_section', 'line_note', 'product'))]}\"/>\n                                        <field name=\"credit\" sum=\"Total Credit\" attrs=\"{'invisible': [('display_type', 'in', ('line_section', 'line_note'))], 'readonly': [('parent.move_type', 'in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt')), ('display_type', 'in', ('line_section', 'line_note', 'product'))]}\"/>\n                                        <field name=\"balance\" invisible=\"1\"/>\n                                        <field name=\"discount_date\" string=\"Discount Date\" optional=\"hide\"/>\n                                        <field name=\"discount_amount_currency\" string=\"Discount Amount\" optional=\"hide\"/>\n\n                                        <field name=\"tax_tag_ids\" widget=\"many2many_tags\" string=\"Tax Grids\" optional=\"show\" options=\"{'no_create': True}\" domain=\"[                                                     ('applicability', '=', 'taxes'),                                                     '|', ('country_id', '=', parent.tax_country_id),                                                     ('country_id', '=', False),                                                 ]\"/>\n\n                                        <field name=\"tax_tag_invert\" readonly=\"1\" optional=\"hide\" groups=\"base.group_no_one\"/>\n\n                                        <!-- Buttons -->\n                                        <button name=\"action_automatic_entry\" type=\"object\" icon=\"fa-calendar\" string=\"Cut-Off\" aria-label=\"Change Period\" class=\"float-end\" attrs=\"{'invisible': [('account_internal_group', 'not in', ('income', 'expense'))], 'column_invisible': ['|', ('parent.move_type', '=', 'entry'), ('parent.state', '!=', 'posted')]}\" context=\"{'hide_automatic_options': 1, 'default_action': 'change_period'}\"/>\n\n                                        <!-- Others fields -->\n                                        <field name=\"tax_line_id\" invisible=\"1\"/>\n                                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                                        <field name=\"display_type\" force_save=\"1\" invisible=\"1\"/>\n                                        <field name=\"company_id\" invisible=\"1\"/>\n                                        <field name=\"sequence\" invisible=\"1\"/>\n                                        <field name=\"id\" invisible=\"1\"/>\n                                        <field name=\"account_internal_group\" invisible=\"1\"/>\n                                        <field name=\"account_type\" invisible=\"1\"/>\n                                    </tree>\n                                    <!-- Form view to cover mobile use -->\n                                    <form>\n                                      <group>\n                                        <field name=\"account_id\" domain=\"[('company_id', '=', parent.company_id), ('deprecated', '=', False)]\"/>\n                                        <field name=\"partner_id\" domain=\"['|', ('parent_id', '=', False), ('is_company', '=', True)]\"/>\n                                        <field name=\"name\"/>\n                                        <field name=\"analytic_distribution\" widget=\"analytic_distribution\" groups=\"analytic.group_analytic_accounting\"/>\n                                        <field name=\"amount_currency\" groups=\"base.group_multi_currency\"/>\n                                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                                        <field name=\"company_id\" invisible=\"1\"/>\n                                        <field name=\"currency_id\" options=\"{'no_create': True}\" groups=\"base.group_multi_currency\"/>\n                                        <field name=\"debit\" sum=\"Total Debit\"/>\n                                        <field name=\"credit\" sum=\"Total Credit\"/>\n                                        <field name=\"balance\" invisible=\"1\"/>\n                                        <field name=\"tax_ids\" string=\"Taxes Applied\" widget=\"autosave_many2many_tags\" options=\"{'no_create': True}\"/>\n                                        <field name=\"date_maturity\" required=\"0\" invisible=\"context.get('view_no_maturity', False)\"/>\n                                      </group>\n                                    </form>\n                                </field>\n                                <div class=\"alert alert-info text-center mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('payment_state', '!=', 'invoicing_legacy'), ('move_type', '=', 'entry')]}\">\n                                    <span>This entry has been generated through the Invoicing app, before installing Accounting. Its balance has been imported separately.</span>\n                                </div>\n                            </page>\n                            <page id=\"other_tab\" string=\"Other Info\" name=\"other_info\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund'))]}\">\n                                <group id=\"other_tab_group\">\n                                    <group string=\"Invoice\" name=\"sale_info_group\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund'))]}\">\n                                        <label for=\"ref\" string=\"Customer Reference\"/>\n                                        <field name=\"ref\" nolabel=\"1\"/>\n                                        <field name=\"user_id\" invisible=\"1\" force_save=\"1\"/>\n                                        <field name=\"invoice_user_id\" domain=\"[('share', '=', False)]\" widget=\"many2one_avatar_user\"/>\n                                        <field name=\"invoice_origin\" string=\"Source Document\" force_save=\"1\" invisible=\"1\"/>\n                                        <field name=\"partner_bank_id\" context=\"{'default_partner_id': bank_partner_id}\" domain=\"[('partner_id', '=', bank_partner_id)]\" attrs=\"{'readonly': [('state', '!=', 'draft')]}\"/>\n                                        <field name=\"qr_code_method\" attrs=\"{'invisible': [('display_qr_code', '=', False)]}\"/>\n                                    </group>\n                                    <group string=\"Accounting\" name=\"accounting_info_group\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund'))]}\">\n                                        <field name=\"company_id\" groups=\"base.group_multi_company\" attrs=\"{'readonly': [('state', '!=', 'draft')]}\"/>\n                                        <field name=\"invoice_incoterm_id\"/>\n                                        <field name=\"fiscal_position_id\"/>\n                                        <field name=\"invoice_cash_rounding_id\" groups=\"account.group_cash_rounding\"/>\n                                        <field name=\"invoice_source_email\" widget=\"email\" attrs=\"{'invisible': ['|', ('move_type', 'not in', ('in_invoice', 'in_refund')), ('invoice_source_email', '=', False)]}\"/>\n                                        <field name=\"auto_post\" attrs=\"{'readonly': [('state','!=','draft')]}\"/>\n                                        <field name=\"auto_post_until\" attrs=\"{'invisible': [('auto_post', 'in', ('no', 'at_date'))],                                                        'readonly': [('state', '!=', 'draft')]}\"/>\n                                        <field name=\"to_check\"/>\n                                    </group>\n                                </group>\n                            </page>\n                            <page id=\"other_tab_entry\" string=\"Other Info\" name=\"other_info\" attrs=\"{'invisible': [('move_type', '!=', 'entry')]}\">\n                                <group id=\"other_tab_entry_group\">\n                                    <group name=\"misc_group\">\n                                        <field name=\"auto_post\" attrs=\"{'invisible': [('move_type', '!=', 'entry')], 'readonly': [('state','!=','draft')]}\"/>\n                                        <field name=\"reversed_entry_id\" attrs=\"{'invisible': [('move_type', '!=', 'entry')]}\"/>\n                                        <field name=\"auto_post_until\" attrs=\"{'invisible': [('auto_post', 'in', ('no', 'at_date'))],                                                        'readonly': [('state', '!=', 'draft')]}\"/>\n                                        <field name=\"to_check\" attrs=\"{'invisible': [('move_type', '!=', 'entry')]}\"/>\n                                    </group>\n                                    <group>\n                                        <field name=\"fiscal_position_id\"/>\n                                        <field name=\"company_id\" groups=\"base.group_multi_company\" required=\"1\"/>\n                                    </group>\n                                </group>\n                                <!-- Internal note -->\n                                <field name=\"narration\" placeholder=\"Add an internal note...\" nolabel=\"1\" height=\"50\"/>\n                            </page>\n                        </notebook>\n                    </sheet>\n                    <!-- Attachment preview -->\n                    <div class=\"o_attachment_preview\" attrs=\"{'invisible': ['|',                                 ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund')),                                 ('state', '!=', 'draft')]}\"/>\n                    <!-- Chatter -->\n                    <div class=\"oe_chatter\">\n                        <field name=\"message_follower_ids\" groups=\"base.group_user\"/>\n                        <field name=\"activity_ids\"/>\n                        <field name=\"message_ids\"/>\n                    </div>\n                </form>", "vi_VN": "<form string=\"Bút toán kế toán\" js_class=\"account_move_form\">\n                    <header>\n                        <!-- Post -->\n                        <button name=\"action_post\" string=\"Vào sổ\" class=\"oe_highlight\" type=\"object\" groups=\"account.group_account_invoice\" data-hotkey=\"v\" context=\"{'validate_analytic': True}\" attrs=\"{'invisible': ['|', ('hide_post_button', '=', True), ('move_type', '!=', 'entry')]}\"/>\n                        <button name=\"action_post\" string=\"Xác nhận\" class=\"oe_highlight\" type=\"object\" groups=\"account.group_account_invoice\" data-hotkey=\"v\" context=\"{'validate_analytic': True}\" attrs=\"{'invisible': ['|', '|', ('hide_post_button', '=', True), ('move_type', '=', 'entry'), ('display_inactive_currency_warning','=',True)]}\"/>\n                        <!-- Send (only invoices) -->\n                        <button name=\"action_invoice_sent\" type=\"object\" string=\"Gửi &amp; In\" attrs=\"{'invisible':['|', '|', ('state', '!=', 'posted'), ('is_move_sent', '=', True), ('move_type', 'not in', ('out_invoice', 'out_refund'))]}\" class=\"oe_highlight\" data-hotkey=\"y\"/>\n                        <button name=\"action_invoice_sent\" type=\"object\" string=\"Gửi &amp; In\" attrs=\"{'invisible':['|', '|', ('state', '!=', 'posted'), ('is_move_sent', '=', False), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund'))]}\" data-hotkey=\"y\"/>\n                        <!-- Register Payment (only invoices / receipts) -->\n                        <button name=\"action_register_payment\" id=\"account_invoice_payment_btn\" type=\"object\" class=\"oe_highlight\" attrs=\"{'invisible': ['|', '|', ('state', '!=', 'posted'), ('payment_state', 'not in', ('not_paid', 'partial')), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\" context=\"{'dont_redirect_to_payments': True}\" string=\"Ghi nhận thanh toán\" data-hotkey=\"g\" groups=\"account.group_account_invoice\"/>\n                        <!-- Preview (only customer invoices) -->\n                        <button name=\"preview_invoice\" type=\"object\" string=\"Xem trước\" data-hotkey=\"o\" title=\"Xem trước hóa đơn\" attrs=\"{'invisible': ['|', ('move_type', 'not in', ('out_invoice', 'out_refund')), ('state', '==', 'cancel')]}\"/>\n                        <!-- Reverse -->\n                        <button name=\"228\" string=\"Bút toán đảo\" type=\"action\" groups=\"account.group_account_invoice\" data-hotkey=\"z\" attrs=\"{'invisible': ['|', ('move_type', '!=', 'entry'), '|', ('state', '!=', 'posted'), ('payment_state', '=', 'reversed')]}\"/>\n                        <button name=\"action_reverse\" string=\"Thêm Giấy báo Có\" type=\"object\" groups=\"account.group_account_invoice\" attrs=\"{'invisible': ['|', ('move_type', 'not in', ('out_invoice', 'in_invoice')), ('state', '!=', 'posted')]}\"/>\n                        <!-- Cancel -->\n                        <button name=\"button_cancel\" string=\"Hủy bút toán\" type=\"object\" groups=\"account.group_account_invoice\" data-hotkey=\"w\" attrs=\"{'invisible' : ['|', '|', ('id', '=', False), ('state', '!=', 'draft'),('move_type', '!=', 'entry')]}\"/>\n                        <button name=\"button_cancel\" string=\"Hủy\" type=\"object\" groups=\"account.group_account_invoice\" data-hotkey=\"w\" attrs=\"{'invisible' : ['|', '|', ('id', '=', False), ('state', '!=', 'draft'),('move_type', '==', 'entry')]}\"/>\n                        <button name=\"button_draft\" string=\"Đưa về dự thảo\" type=\"object\" groups=\"account.group_account_invoice\" attrs=\"{'invisible' : [('show_reset_to_draft_button', '=', False)]}\" data-hotkey=\"q\"/>\n                        <!-- Set as Checked -->\n                        <button name=\"button_set_checked\" string=\"Thiết lập đã kiểm tra\" type=\"object\" groups=\"account.group_account_invoice\" attrs=\"{'invisible' : [('to_check', '=', False)]}\" data-hotkey=\"k\"/>\n                        <field name=\"state\" widget=\"statusbar\" statusbar_visible=\"draft,posted\"/>\n                    </header>\n                    <div class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('duplicated_ref_ids', '=', [])]}\">\n                        Cảnh báo: hóa đơn này có thể trùng lặp với\n                        <button name=\"open_duplicated_ref_bill_view\" type=\"object\" string=\"một trong những hóa đơn đó\" class=\"btn btn-link p-0\"/>\n                    </div>\n                    <!-- Invoice outstanding credits -->\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('tax_lock_date_message', '=', False)]}\">\n                        <field name=\"tax_lock_date_message\" nolabel=\"1\"/>\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('move_type', 'not in', ('out_invoice', 'out_receipt')), ('invoice_has_outstanding', '=', False), ('payment_state', 'not in', ('not_paid', 'partial'))]}\">\n                        Bạn có <bold><a class=\"alert-link\" href=\"#outstanding\" role=\"button\">các khoản tín dụng chưa thanh toán</a></bold> với khách hàng này. Bạn có thể phân bổ chúng để ghi nhận là hóa đơn này đã thanh toán.\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('move_type', 'not in', ('in_invoice', 'in_receipt')), ('invoice_has_outstanding', '=', False), ('payment_state', 'not in', ('not_paid', 'partial'))]}\">\n                        Bạn có <bold><a class=\"alert-link\" href=\"#outstanding\" role=\"button\">khoản nợ chưa trả</a></bold> với nhà cung cấp này. Bạn có thể phân bổ chúng để ghi nhận là hóa đơn này đã thanh toán.\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('move_type', '!=', 'out_refund'), ('invoice_has_outstanding', '=', False), ('payment_state', 'not in', ('not_paid', 'partial'))]}\">\n                        Bạn có <bold><a class=\"alert-link\" href=\"#outstanding\" role=\"button\">khoản nợ chưa trả</a></bold> cho khách hàng này. Bạn có thể phân bổ chúng để đánh dấu giấy báo có này là đã thanh toán.\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('move_type', '!=', 'in_refund'), ('invoice_has_outstanding', '=', False), ('payment_state', 'not in', ('not_paid', 'partial'))]}\">\n                        Bạn có <bold><a class=\"alert-link\" href=\"#outstanding\" role=\"button\">các khoản tín dụng chưa thanh toán</a></bold> cho nhà cung cấp này. Bạn có thể phân bổ chúng để đánh dấu giấy báo có này là đã thanh toán.\n                    </div>\n                    <div class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('auto_post', '!=', 'at_date')]}\">\n                        Bút toán được cấu hình để vào sổ tự động vào ngày kế toán: <field name=\"date\" readonly=\"1\"/>.\n                    </div>\n                    <div class=\"alert alert-info mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', '|', ('state', '!=', 'draft'), ('auto_post', '=', 'no'), ('auto_post', '=', 'at_date')]}\">\n                         <field name=\"auto_post\" readonly=\"1\"/> tự động vào sổ được bật. Ngày hạch toán tiếp theo: <field name=\"date\" readonly=\"1\"/>.<span attrs=\"{'invisible': [('auto_post_until', '=', False)]}\"> Chu kỳ lặp sẽ kết thúc vào <field name=\"auto_post_until\" readonly=\"1\"/> (đã gồm).</span>\n                    </div>\n                    <div groups=\"account.group_account_invoice,account.group_account_readonly\" class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': [('partner_credit_warning', '=', '')]}\">\n                        <field name=\"partner_credit_warning\"/>\n                    </div>\n                    <!-- Currency consistency -->\n                    <div class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('display_inactive_currency_warning', '=', False), ('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt'))]}\">\n                        Để xác nhận hoá đơn này, bạn phải <button class=\"oe_link\" type=\"object\" name=\"action_activate_currency\" style=\"padding: 0; vertical-align: baseline;\">kích hoạt đơn vị tiền tệ của hóa đơn</button>. Bút toán cần được tính bởi hệ thống trước khi thực hiện việc vào sổ theo tiền tệ của công ty.\n                    </div>\n                    <div class=\"alert alert-warning mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('display_inactive_currency_warning', '=', False), ('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}\">\n                        Để xác nhận hoá đơn này, bạn phải <button class=\"oe_link\" type=\"object\" name=\"action_activate_currency\" style=\"padding: 0; vertical-align: baseline;\">kích hoạt đơn vị tiền tệ của hóa đơn</button>. Bút toán cần được tính bởi hệ thống trước khi thực hiện việc vào sổ theo tiền tệ của công ty.\n                    </div>\n                    <sheet>\n                        <div name=\"button_box\" class=\"oe_button_box\">\n                            <button name=\"action_open_business_doc\" class=\"oe_stat_button\" icon=\"fa-bars\" type=\"object\" attrs=\"{'invisible': ['|', '|', ('move_type', '!=', 'entry'), ('id', '=', False), ('payment_id', '=', False)]}\" string=\"1 Thanh toán\">\n                            </button>\n                            <button name=\"open_reconcile_view\" class=\"oe_stat_button\" icon=\"fa-bars\" type=\"object\" attrs=\"{'invisible': ['|', '|', ('move_type', '!=', 'entry'), ('id', '=', False), ('has_reconciled_entries', '=', False)]}\" string=\"Nội dung đã đối soát\">\n                            </button>\n                            <button name=\"open_created_caba_entries\" class=\"oe_stat_button\" icon=\"fa-usd\" type=\"object\" attrs=\"{'invisible': [('tax_cash_basis_created_move_ids', '=', [])]}\" string=\"Bút toán kế toán dòng tiền\">\n                            </button>\n                        </div>\n\n                        <!-- Payment status for invoices / receipts -->\n                        <widget name=\"web_ribbon\" title=\"Đã thanh toán\" attrs=\"{'invisible': ['|', ('payment_state', '!=', 'paid'), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n                        <widget name=\"web_ribbon\" title=\"Thanh toán\" attrs=\"{'invisible': ['|', ('payment_state', '!=', 'in_payment'), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n                        <widget name=\"web_ribbon\" title=\"Một phần\" attrs=\"{'invisible': ['|', ('payment_state', '!=', 'partial'), ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n                        <widget name=\"web_ribbon\" title=\"Đảo ngược\" bg_color=\"bg-danger\" attrs=\"{'invisible': [('payment_state', '!=', 'reversed')]}\"/>\n                         <widget name=\"web_ribbon\" text=\"Invoicing App Legacy\" bg_color=\"bg-info\" attrs=\"{'invisible': [('payment_state', '!=', 'invoicing_legacy')]}\" tooltip=\"This entry has been generated through the Invoicing app, before installing Accounting. It has been disabled by the 'Invoicing Switch Threshold Date' setting so that it does not impact your accounting.\"/>\n\n                        <!-- Invisible fields -->\n                        <field name=\"id\" invisible=\"1\"/>\n                        <field name=\"company_id\" invisible=\"1\"/>\n                        <field name=\"journal_id\" invisible=\"1\"/>\n                        <field name=\"show_name_warning\" invisible=\"1\"/>\n                        <field name=\"posted_before\" invisible=\"1\"/>\n                        <field name=\"move_type\" invisible=\"1\"/>\n                        <field name=\"payment_state\" invisible=\"1\" force_save=\"1\"/>\n                        <field name=\"invoice_filter_type_domain\" invisible=\"1\"/>\n                        <field name=\"suitable_journal_ids\" invisible=\"1\"/>\n                        <field name=\"currency_id\" invisible=\"1\"/>\n                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                        <field name=\"commercial_partner_id\" invisible=\"1\"/>\n                        <field name=\"bank_partner_id\" invisible=\"1\"/>\n                        <field name=\"display_qr_code\" invisible=\"1\"/>\n                        <field name=\"show_reset_to_draft_button\" invisible=\"1\"/>\n\n                        <field name=\"invoice_has_outstanding\" invisible=\"1\"/>\n                        <field name=\"is_move_sent\" invisible=\"1\"/>\n                        <field name=\"has_reconciled_entries\" invisible=\"1\"/>\n                        <field name=\"restrict_mode_hash_table\" invisible=\"1\"/>\n                        <field name=\"country_code\" invisible=\"1\"/>\n                        <field name=\"display_inactive_currency_warning\" invisible=\"1\"/>\n                        <field name=\"statement_line_id\" invisible=\"1\"/>\n                        <field name=\"payment_id\" invisible=\"1\"/>\n                        <field name=\"tax_country_id\" invisible=\"1\"/>\n                        <field name=\"tax_cash_basis_created_move_ids\" invisible=\"1\"/>\n                        <field name=\"quick_edit_mode\" invisible=\"1\"/>\n                        <field name=\"hide_post_button\" invisible=\"1\"/>\n                        <field name=\"duplicated_ref_ids\" invisible=\"1\"/>\n                        <field name=\"quick_encoding_vals\" invisible=\"1\"/>\n\n                        <div class=\"oe_title\">\n                            <span class=\"o_form_label\"><field name=\"move_type\" attrs=\"{'invisible': [('move_type', '=', 'entry')]}\" readonly=\"1\" nolabel=\"1\"/></span>\n\n                            <div class=\"text-warning\" attrs=\"{'invisible': [('show_name_warning', '=', False)]}\">Số lớn nhất hiện tại là <field class=\"oe_inline\" name=\"highest_name\"/>. Bạn có thể muốn đặt một số cao hơn ở đây.</div>\n\n                            <h1>\n                                <field name=\"name\" attrs=\"{'invisible':[('name', '=', '/'), ('posted_before', '=', False), ('quick_edit_mode', '=', False)],                                 'readonly': [('state', '!=', 'draft')]}\" placeholder=\"Dự thảo\"/>\n\n                                <span attrs=\"{'invisible': ['|', '|', '|', ('state', '!=', 'draft'), ('name', '!=', '/'), ('posted_before', '=', True), ('quick_edit_mode', '=', True)]}\">Draft</span>\n                            </h1>\n                        </div>\n                        <group>\n                            <group id=\"header_left_group\">\n\n                                <label for=\"partner_id\" string=\"Khách hàng\" style=\"font-weight:bold;\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}\"/>\n                                <label for=\"partner_id\" string=\"Nhà cung cấp\" style=\"font-weight:bold;\" attrs=\"{'invisible': [('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt'))]}\"/>\n                                <field name=\"partner_id\" widget=\"res_partner_many2one\" nolabel=\"1\" context=\"{                                             'res_partner_search_mode': (context.get('default_move_type', 'entry') in ('out_invoice', 'out_refund', 'out_receipt') and 'customer') or (context.get('default_move_type', 'entry') in ('in_invoice', 'in_refund', 'in_receipt') and 'supplier') or False,                                             'show_address': 1, 'default_is_company': True, 'show_vat': True}\" domain=\"[('type', '!=', 'private'), ('company_id', 'in', (False, company_id))]\" options=\"{&quot;always_reload&quot;: True, &quot;no_quick_create&quot;: True}\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n\n                                <field name=\"partner_shipping_id\" groups=\"account.group_delivery_invoice_address\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))], 'readonly': [('state', '!=', 'draft')]}\"/>\n                                <field name=\"quick_edit_total_amount\" class=\"w-50\" attrs=\"{'invisible': ['|', ('move_type', '=', 'entry'), ('quick_edit_mode', '=', False)], 'readonly': [('state', '!=', 'draft')]}\"/>\n                                <label for=\"ref\" string=\"Mã/Số hoá đơn\" attrs=\"{'invisible':[('move_type', 'not in', ('in_invoice', 'in_receipt', 'in_refund'))]}\"/>\n                                <field name=\"ref\" nolabel=\"1\" attrs=\"{'invisible':[('move_type', 'not in', ('in_invoice', 'in_receipt', 'in_refund'))]}\"/>\n                                <field name=\"ref\" attrs=\"{'invisible':[('move_type', 'in', ('in_invoice', 'in_receipt', 'in_refund', 'out_invoice', 'out_refund'))]}\"/>\n                                <field name=\"tax_cash_basis_origin_move_id\" attrs=\"{'invisible': [('tax_cash_basis_origin_move_id', '=', False)]}\"/>\n                                <label name=\"invoice_vendor_bill_id_label\" for=\"invoice_vendor_bill_id\" string=\"Tự động hoàn thành\" class=\"oe_edit_only\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('move_type', '!=', 'in_invoice')]}\"/>\n                                <field name=\"invoice_vendor_bill_id\" nolabel=\"1\" class=\"oe_edit_only\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('move_type', '!=', 'in_invoice')]}\" domain=\"[('company_id', '=', company_id), ('partner_id','child_of', [partner_id]), ('move_type','=','in_invoice')]\" placeholder=\"Chọn hóa đơn mua hàng cũ\" options=\"{'no_create': True}\" context=\"{'show_total_amount': True}\"/>\n                            </group>\n                            <group id=\"header_right_group\">\n\n                                <!-- Invoice date (only invoices / receipts) -->\n                                <label for=\"invoice_date\" string=\"Ngày hóa đơn\" style=\"font-weight:bold;\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'out_receipt'))]}\"/>\n                                <label for=\"invoice_date\" string=\"Ngày hóa đơn\" style=\"font-weight:bold;\" attrs=\"{'invisible': [('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt'))]}\"/>\n                                <field name=\"invoice_date\" nolabel=\"1\" options=\"{'datepicker': {'warn_future': true}}\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n\n                                <field name=\"date\" string=\"Ngày kế toán\" attrs=\"{                                             'invisible': [('move_type', 'in', ('out_invoice', 'out_refund', 'out_receipt')), ('quick_edit_mode', '=', False)],                                             'readonly': [('state', '!=', 'draft')],                                        }\"/>\n                                <field name=\"payment_reference\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\"/>\n                                <field name=\"partner_bank_id\" context=\"{'default_partner_id': bank_partner_id}\" domain=\"[('partner_id', '=', bank_partner_id)]\" attrs=\"{'invisible': [('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt'))],                                             'readonly': [('state', '!=', 'draft')]}\"/>\n\n                                <!-- Invoice payment terms (only invoices) + due date (only invoices / receipts) -->\n                                <div class=\"o_td_label\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\">\n                                    <label for=\"invoice_date_due\" string=\"Ngày phải trả\" attrs=\"{'invisible': [('invoice_payment_term_id', '!=', False)]}\"/>\n                                    <label for=\"invoice_payment_term_id\" string=\"Các điều khoản thanh toán\" attrs=\"{'invisible': [('invoice_payment_term_id', '=', False)]}\"/>\n                                </div>\n                                <div class=\"d-flex\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt'))]}\">\n                                    <field name=\"invoice_date_due\" force_save=\"1\" placeholder=\"Ngày\" attrs=\"{'invisible': [('invoice_payment_term_id', '!=', False)]}\"/>\n                                    <span class=\"o_form_label mx-3 oe_edit_only\" attrs=\"{'invisible': ['|', ('state', '!=', 'draft'), ('invoice_payment_term_id', '!=', False)]}\"> hoặc </span>\n                                    <field name=\"invoice_payment_term_id\" context=\"{'example_date': invoice_date, 'example_amount': tax_totals['amount_total']}\" placeholder=\"Các điều khoản\"/>\n                                </div>\n\n                                <label for=\"journal_id\" groups=\"account.group_account_readonly\" invisible=\"context.get('default_journal_id') and context.get('move_type', 'entry') != 'entry'\"/>\n                                <div name=\"journal_div\" class=\"d-flex\" groups=\"account.group_account_readonly\" invisible=\"context.get('default_journal_id') and context.get('move_type', 'entry') != 'entry'\">\n                                    <field name=\"journal_id\" options=\"{'no_create': True, 'no_open': True}\" attrs=\"{'readonly': [('posted_before', '=', True), ('name', 'not in', (False, '', '/'))]}\"/>\n                                    <span class=\"oe_inline o_form_label mx-3\" groups=\"base.group_multi_currency\" attrs=\"{'invisible': [('move_type', '=', 'entry')]}\"> ở </span>\n                                    <field name=\"currency_id\" groups=\"base.group_multi_currency\" attrs=\"{'readonly': [('state', '!=', 'draft')], 'invisible': [('move_type', '=', 'entry')]}\"/>\n                                </div>\n\n                                <field name=\"currency_id\" attrs=\"{'readonly': [('state', '!=', 'draft')]}\" groups=\"!account.group_account_readonly,base.group_multi_currency\"/>\n\n                            </group>\n                        </group>\n                        <notebook>\n                            <page id=\"invoice_tab\" name=\"invoice_tab\" string=\"Chi tiết hóa đơn\" attrs=\"{'invisible': [('move_type', '=', 'entry')]}\">\n                                <field name=\"invoice_line_ids\" widget=\"section_and_note_one2many\" mode=\"tree,kanban\" context=\"{                                            'default_move_type': context.get('default_move_type'),                                            'journal_id': journal_id,                                            'default_partner_id': commercial_partner_id,                                            'default_currency_id': currency_id or company_currency_id,                                            'default_display_type': 'product',                                            'quick_encoding_vals': quick_encoding_vals,                                        }\">\n                                    <tree editable=\"bottom\" string=\"Chi tiết bút toán\" default_order=\"sequence, id\">\n                                        <control>\n                                            <create name=\"add_line_control\" string=\"Thêm một dòng\"/>\n                                            <create name=\"add_section_control\" string=\"Thêm khu vực\" context=\"{'default_display_type': 'line_section'}\"/>\n                                            <create name=\"add_note_control\" string=\"Thêm ghi chú\" context=\"{'default_display_type': 'line_note'}\"/>\n                                        </control>\n\n                                        <!-- Displayed fields -->\n                                        <field name=\"sequence\" widget=\"handle\"/>\n                                        <field name=\"product_id\" optional=\"show\" widget=\"many2one_barcode\" domain=\"                                                     context.get('default_move_type') in ('out_invoice', 'out_refund', 'out_receipt')                                                     and [('sale_ok', '=', True), '|', ('company_id', '=', False), ('company_id', '=', parent.company_id)]                                                     or [('purchase_ok', '=', True), '|', ('company_id', '=', False), ('company_id', '=', parent.company_id)]                                                \"/>\n                                        <field name=\"name\" widget=\"section_and_note_text\" optional=\"show\"/>\n                                        <field name=\"account_id\" context=\"{'partner_id': partner_id, 'move_type': parent.move_type}\" groups=\"account.group_account_readonly\" options=\"{'no_create': True}\" domain=\"[('deprecated', '=', False), ('account_type', 'not in', ('asset_receivable', 'liability_payable')), ('company_id', '=', parent.company_id), ('is_off_balance', '=', False)]\" attrs=\"{'required': [('display_type', 'not in', ('line_note', 'line_section'))]}\"/>\n                                        <field name=\"analytic_distribution\" widget=\"analytic_distribution\" groups=\"analytic.group_analytic_accounting\" optional=\"show\" options=\"{'product_field': 'product_id', 'account_field': 'account_id'}\" business_domain_compute=\"parent.move_type in ['out_invoice', 'out_refund', 'out_receipt'] and 'invoice' or parent.move_type in ['in_invoice', 'in_refund', 'in_receipt'] and 'bill' or 'general'\"/>\n                                        <field name=\"quantity\" optional=\"show\"/>\n                                        <field name=\"product_uom_category_id\" invisible=\"1\"/>\n                                        <field name=\"product_uom_id\" string=\"Đơn vị\" groups=\"uom.group_uom\" optional=\"show\"/>\n                                        <field name=\"price_unit\" string=\"Giá\"/>\n                                        <field name=\"discount\" string=\"CK. %\" optional=\"hide\"/>\n                                        <field name=\"tax_ids\" widget=\"many2many_tags\" domain=\"[('type_tax_use', '=?', parent.invoice_filter_type_domain), ('company_id', '=', parent.company_id), ('country_id', '=', parent.tax_country_id)]\" context=\"{'append_type_to_tax_name': not parent.invoice_filter_type_domain}\" options=\"{'no_create': True}\" optional=\"show\"/>\n                                        <field name=\"price_subtotal\" string=\"Thành tiền\" groups=\"account.group_show_line_subtotals_tax_excluded\"/>\n                                        <field name=\"price_total\" string=\"Tổng\" groups=\"account.group_show_line_subtotals_tax_included\"/>\n\n                                        <!-- Others fields -->\n                                        <field name=\"partner_id\" invisible=\"1\"/>\n                                        <field name=\"currency_id\" invisible=\"1\"/>\n                                        <field name=\"company_id\" invisible=\"1\"/>\n                                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                                        <field name=\"display_type\" force_save=\"1\" invisible=\"1\"/>\n                                        <!-- /l10n_in_edi.test_edi_json -->\n                                        <!-- required for @api.onchange('product_id') -->\n                                        <field name=\"product_uom_id\" invisible=\"1\"/>\n                                    </tree>\n                                    <kanban class=\"o_kanban_mobile\">\n                                        <!-- Displayed fields -->\n                                        <field name=\"name\"/>\n                                        <field name=\"product_id\"/>\n                                        <field name=\"price_subtotal\" groups=\"account.group_show_line_subtotals_tax_excluded\"/>\n                                        <field name=\"price_total\" groups=\"account.group_show_line_subtotals_tax_included\"/>\n                                        <field name=\"quantity\"/>\n                                        <field name=\"product_uom_category_id\" invisible=\"1\"/>\n                                        <field name=\"product_uom_id\" groups=\"uom.group_uom\"/>\n                                        <field name=\"price_unit\"/>\n                                        <templates>\n                                            <t t-name=\"kanban-box\">\n                                                <div t-attf-class=\"oe_kanban_card oe_kanban_global_click ps-0 pe-0 {{ record.display_type.raw_value ? 'o_is_' + record.display_type.raw_value : '' }}\">\n                                                    <t t-if=\"!['line_note', 'line_section'].includes(record.display_type.raw_value)\">\n                                                        <div class=\"row g-0\">\n                                                            <div class=\"col-2 pe-3\">\n                                                                <img t-att-src=\"kanban_image('product.product', 'image_128', record.product_id.raw_value)\" t-att-title=\"record.product_id.value\" t-att-alt=\"record.product_id.value\" style=\"max-width: 100%;\"/>\n                                                            </div>\n                                                            <div class=\"col-10\">\n                                                                <div class=\"row\">\n                                                                    <div class=\"col\">\n                                                                        <strong t-esc=\"record.product_id.value\"/>\n                                                                    </div>\n                                                                    <div class=\"col-auto\">\n                                                                        <strong class=\"float-end text-end\">\n                                                                            <t t-esc=\"record.price_subtotal.value\" groups=\"account.group_show_line_subtotals_tax_excluded\"/>\n                                                                            <t t-esc=\"record.price_total.value\" groups=\"account.group_show_line_subtotals_tax_included\"/>\n                                                                        </strong>\n                                                                    </div>\n                                                                </div>\n                                                                <div class=\"text-muted\">\n                                                                    Số lượng:\n                                                                    <t t-esc=\"record.quantity.value\"/>\n                                                                    <t t-esc=\"record.product_uom_id.value\" groups=\"uom.group_uom\"/>\n                                                                </div>\n                                                                <div class=\"text-muted\">\n                                                                    Đơn Giá:\n                                                                    <t t-esc=\"record.price_unit.value\"/>\n                                                                </div>\n                                                            </div>\n                                                        </div>\n                                                    </t>\n                                                    <t t-if=\"record.display_type.raw_value === 'line_section' || record.display_type.raw_value === 'line_note'\">\n                                                        <div class=\"row\">\n                                                            <div class=\"col-12\">\n                                                                <t t-esc=\"record.name.value\"/>\n                                                            </div>\n                                                        </div>\n                                                    </t>\n                                                </div>\n                                            </t>\n                                        </templates>\n\n                                        <!-- Others fields -->\n                                        <field name=\"currency_id\" invisible=\"1\"/>\n                                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                                        <field name=\"display_type\" force_save=\"1\" invisible=\"1\"/>\n                                    </kanban>\n\n                                    <!-- Form view to cover mobile use -->\n                                    <form>\n                                        <sheet>\n                                            <field name=\"display_type\" invisible=\"1\"/>\n                                            <field name=\"company_id\" invisible=\"1\"/>\n                                            <field name=\"partner_id\" invisible=\"1\"/>\n                                            <group>\n                                                <field name=\"product_id\" widget=\"many2one_barcode\"/>\n                                                <field name=\"quantity\"/>\n                                                <field name=\"product_uom_category_id\" invisible=\"1\"/>\n                                                <field name=\"product_uom_id\" groups=\"uom.group_uom\"/>\n                                                <field name=\"price_unit\"/>\n                                                <field name=\"discount\" string=\"CK. %\"/>\n                                            </group>\n                                            <group>\n                                                <field name=\"account_id\" options=\"{'no_create': True}\" domain=\"[('company_id', '=', company_id)]\" context=\"{'partner_id': partner_id, 'move_type': parent.move_type}\"/>\n                                                <field name=\"tax_ids\" widget=\"many2many_tags\"/>\n                                                <field name=\"analytic_distribution\" widget=\"analytic_distribution\" groups=\"analytic.group_analytic_accounting\"/>\n                                            </group>\n                                            <label for=\"name\" string=\"Mô tả\" attrs=\"{'invisible': [('display_type', 'in', ('line_note', 'line_section'))]}\"/>\n                                            <label for=\"name\" string=\"Mục\" attrs=\"{'invisible': [('display_type', '!=', 'line_section')]}\"/>\n                                            <label for=\"name\" string=\"Ghi chú\" attrs=\"{'invisible': [('display_type', '!=', 'line_note')]}\"/>\n                                            <field name=\"name\" widget=\"text\"/>\n                                            <group>\n                                                <field name=\"price_subtotal\" string=\"Thành tiền\" groups=\"account.group_show_line_subtotals_tax_excluded\"/>\n                                                <field name=\"price_total\" string=\"Tổng\" groups=\"account.group_show_line_subtotals_tax_included\"/>\n                                            </group>\n                                        </sheet>\n                                    </form>\n                                </field>\n                                <group col=\"12\" class=\"oe_invoice_lines_tab\">\n                                    <group colspan=\"8\">\n                                        <field name=\"narration\" placeholder=\"Điều khoản và Điều kiện\" colspan=\"2\" nolabel=\"1\"/>\n                                    </group>\n                                    <!-- Totals (only invoices / receipts) -->\n                                    <group colspan=\"4\">\n                                        <group class=\"oe_subtotal_footer oe_right\" attrs=\"{'invisible': ['|', ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt')),                                                                        ('payment_state' ,'=', 'invoicing_legacy')]}\">\n\n                                            <field name=\"tax_totals\" widget=\"account-tax-totals-field\" nolabel=\"1\" colspan=\"2\" attrs=\"{'readonly': ['|', ('state', '!=', 'draft'), '&amp;', ('move_type', 'not in', ('in_invoice', 'in_refund', 'in_receipt')), ('quick_edit_mode', '=', False)]}\"/>\n\n                                            <field name=\"invoice_payments_widget\" colspan=\"2\" nolabel=\"1\" widget=\"payment\"/>\n                                            <field name=\"amount_residual\" class=\"oe_subtotal_footer_separator\" attrs=\"{'invisible': [('state', '=', 'draft')]}\"/>\n                                        </group>\n                                        <field name=\"invoice_outstanding_credits_debits_widget\" class=\"oe_invoice_outstanding_credits_debits\" colspan=\"2\" nolabel=\"1\" widget=\"payment\" attrs=\"{'invisible': [('state', '!=', 'posted')]}\"/>\n                                    </group>\n                                </group>\n                            </page>\n                            <page id=\"aml_tab\" string=\"Chi tiết bút toán\" groups=\"account.group_account_readonly\" name=\"aml_tab\">\n                                <field name=\"line_ids\" mode=\"tree,kanban\" context=\"{                                            'default_move_type': context.get('default_move_type'),                                            'line_ids': line_ids,                                            'journal_id': journal_id,                                            'default_partner_id': commercial_partner_id,                                            'default_currency_id': currency_id or company_currency_id,                                            'kanban_view_ref': 'account.account_move_line_view_kanban_mobile',                                        }\" attrs=\"{'invisible': [('payment_state', '=', 'invoicing_legacy'), ('move_type', '!=', 'entry')]}\">\n                                    <tree editable=\"bottom\" string=\"Chi tiết bút toán\" decoration-muted=\"display_type in ('line_section', 'line_note')\" default_order=\"sequence, id\">\n                                        <!-- Displayed fields -->\n                                        <field name=\"account_id\" attrs=\"{                                                     'required': [('display_type', 'not in', ('line_section', 'line_note'))],                                                     'invisible': [('display_type', 'in', ('line_section', 'line_note'))],                                                }\" domain=\"[('deprecated', '=', False), ('company_id', '=', parent.company_id)]\"/>\n                                        <field name=\"partner_id\" optional=\"show\" domain=\"['|', ('parent_id', '=', False), ('is_company', '=', True)]\" attrs=\"{'column_invisible': [('parent.move_type', '!=', 'entry')]}\"/>\n                                        <field name=\"name\" widget=\"section_and_note_text\" optional=\"show\"/>\n                                        <field name=\"analytic_distribution\" widget=\"analytic_distribution\" groups=\"analytic.group_analytic_accounting\" optional=\"show\" options=\"{'account_field': 'account_id'}\" business_domain_compute=\"parent.move_type in ['out_invoice', 'out_refund', 'out_receipt'] and 'invoice' or parent.move_type in ['in_invoice', 'in_refund', 'in_receipt'] and 'bill' or 'general'\"/>\n                                        <field name=\"date_maturity\" optional=\"hide\" invisible=\"context.get('view_no_maturity')\" attrs=\"{'invisible': [('display_type', 'in', ('line_section', 'line_note'))]}\"/>\n                                        <field name=\"amount_currency\" groups=\"base.group_multi_currency\" optional=\"hide\"/>\n                                        <field name=\"currency_id\" options=\"{'no_create': True}\" optional=\"hide\" groups=\"base.group_multi_currency\" attrs=\"{'column_invisible': [('parent.move_type', '!=', 'entry')]}\"/>\n                                        <field name=\"tax_ids\" widget=\"autosave_many2many_tags\" optional=\"hide\" domain=\"[('type_tax_use', '=?', parent.invoice_filter_type_domain)]\" context=\"{'append_type_to_tax_name': not parent.invoice_filter_type_domain}\" options=\"{'no_create': True}\" force_save=\"1\" attrs=\"{'readonly': [                                                     '|', '|',                                                     ('display_type', 'in', ('line_section', 'line_note')),                                                     ('tax_line_id', '!=', False),                                                     '&amp;',                                                     ('parent.move_type', 'in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt')),                                                     ('account_type', 'in', ('asset_receivable', 'liability_payable')),                                                 ]}\"/>\n                                        <field name=\"debit\" sum=\"Tổng Nợ\" attrs=\"{'invisible': [('display_type', 'in', ('line_section', 'line_note'))], 'readonly': [('parent.move_type', 'in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt')), ('display_type', 'in', ('line_section', 'line_note', 'product'))]}\"/>\n                                        <field name=\"credit\" sum=\"Tổng số báo có\" attrs=\"{'invisible': [('display_type', 'in', ('line_section', 'line_note'))], 'readonly': [('parent.move_type', 'in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund', 'out_receipt', 'in_receipt')), ('display_type', 'in', ('line_section', 'line_note', 'product'))]}\"/>\n                                        <field name=\"balance\" invisible=\"1\"/>\n                                        <field name=\"discount_date\" string=\"Ngày giảm giá\" optional=\"hide\"/>\n                                        <field name=\"discount_amount_currency\" string=\"Số tiền giảm giá\" optional=\"hide\"/>\n\n                                        <field name=\"tax_tag_ids\" widget=\"many2many_tags\" string=\"Lưới thuế\" optional=\"show\" options=\"{'no_create': True}\" domain=\"[                                                     ('applicability', '=', 'taxes'),                                                     '|', ('country_id', '=', parent.tax_country_id),                                                     ('country_id', '=', False),                                                 ]\"/>\n\n                                        <field name=\"tax_tag_invert\" readonly=\"1\" optional=\"hide\" groups=\"base.group_no_one\"/>\n\n                                        <!-- Buttons -->\n                                        <button name=\"action_automatic_entry\" type=\"object\" icon=\"fa-calendar\" string=\"Phân chia (Cut-Off)\" aria-label=\"Đổi kỳ\" class=\"float-end\" attrs=\"{'invisible': [('account_internal_group', 'not in', ('income', 'expense'))], 'column_invisible': ['|', ('parent.move_type', '=', 'entry'), ('parent.state', '!=', 'posted')]}\" context=\"{'hide_automatic_options': 1, 'default_action': 'change_period'}\"/>\n\n                                        <!-- Others fields -->\n                                        <field name=\"tax_line_id\" invisible=\"1\"/>\n                                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                                        <field name=\"display_type\" force_save=\"1\" invisible=\"1\"/>\n                                        <field name=\"company_id\" invisible=\"1\"/>\n                                        <field name=\"sequence\" invisible=\"1\"/>\n                                        <field name=\"id\" invisible=\"1\"/>\n                                        <field name=\"account_internal_group\" invisible=\"1\"/>\n                                        <field name=\"account_type\" invisible=\"1\"/>\n                                    </tree>\n                                    <!-- Form view to cover mobile use -->\n                                    <form>\n                                      <group>\n                                        <field name=\"account_id\" domain=\"[('company_id', '=', parent.company_id), ('deprecated', '=', False)]\"/>\n                                        <field name=\"partner_id\" domain=\"['|', ('parent_id', '=', False), ('is_company', '=', True)]\"/>\n                                        <field name=\"name\"/>\n                                        <field name=\"analytic_distribution\" widget=\"analytic_distribution\" groups=\"analytic.group_analytic_accounting\"/>\n                                        <field name=\"amount_currency\" groups=\"base.group_multi_currency\"/>\n                                        <field name=\"company_currency_id\" invisible=\"1\"/>\n                                        <field name=\"company_id\" invisible=\"1\"/>\n                                        <field name=\"currency_id\" options=\"{'no_create': True}\" groups=\"base.group_multi_currency\"/>\n                                        <field name=\"debit\" sum=\"Tổng Nợ\"/>\n                                        <field name=\"credit\" sum=\"Tổng số báo có\"/>\n                                        <field name=\"balance\" invisible=\"1\"/>\n                                        <field name=\"tax_ids\" string=\"Thuế được áp dụng\" widget=\"autosave_many2many_tags\" options=\"{'no_create': True}\"/>\n                                        <field name=\"date_maturity\" required=\"0\" invisible=\"context.get('view_no_maturity', False)\"/>\n                                      </group>\n                                    </form>\n                                </field>\n                                <div class=\"alert alert-info text-center mb-0\" role=\"alert\" attrs=\"{'invisible': ['|', ('payment_state', '!=', 'invoicing_legacy'), ('move_type', '=', 'entry')]}\">\n                                    <span>Bút toán này đã được tạo thong qua phân hệ lên hóa đơn, trước khi cài đặt Kế toán. Số dư đã được đưa lên riêng.</span>\n                                </div>\n                            </page>\n                            <page id=\"other_tab\" string=\"Thông tin khác\" name=\"other_info\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund'))]}\">\n                                <group id=\"other_tab_group\">\n                                    <group string=\"Hoá đơn\" name=\"sale_info_group\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund'))]}\">\n                                        <label for=\"ref\" string=\"Mã riêng của Khách\"/>\n                                        <field name=\"ref\" nolabel=\"1\"/>\n                                        <field name=\"user_id\" invisible=\"1\" force_save=\"1\"/>\n                                        <field name=\"invoice_user_id\" domain=\"[('share', '=', False)]\" widget=\"many2one_avatar_user\"/>\n                                        <field name=\"invoice_origin\" string=\"Tài liệu gốc\" force_save=\"1\" invisible=\"1\"/>\n                                        <field name=\"partner_bank_id\" context=\"{'default_partner_id': bank_partner_id}\" domain=\"[('partner_id', '=', bank_partner_id)]\" attrs=\"{'readonly': [('state', '!=', 'draft')]}\"/>\n                                        <field name=\"qr_code_method\" attrs=\"{'invisible': [('display_qr_code', '=', False)]}\"/>\n                                    </group>\n                                    <group string=\"Kế toán\" name=\"accounting_info_group\" attrs=\"{'invisible': [('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund'))]}\">\n                                        <field name=\"company_id\" groups=\"base.group_multi_company\" attrs=\"{'readonly': [('state', '!=', 'draft')]}\"/>\n                                        <field name=\"invoice_incoterm_id\"/>\n                                        <field name=\"fiscal_position_id\"/>\n                                        <field name=\"invoice_cash_rounding_id\" groups=\"account.group_cash_rounding\"/>\n                                        <field name=\"invoice_source_email\" widget=\"email\" attrs=\"{'invisible': ['|', ('move_type', 'not in', ('in_invoice', 'in_refund')), ('invoice_source_email', '=', False)]}\"/>\n                                        <field name=\"auto_post\" attrs=\"{'readonly': [('state','!=','draft')]}\"/>\n                                        <field name=\"auto_post_until\" attrs=\"{'invisible': [('auto_post', 'in', ('no', 'at_date'))],                                                        'readonly': [('state', '!=', 'draft')]}\"/>\n                                        <field name=\"to_check\"/>\n                                    </group>\n                                </group>\n                            </page>\n                            <page id=\"other_tab_entry\" string=\"Thông tin khác\" name=\"other_info\" attrs=\"{'invisible': [('move_type', '!=', 'entry')]}\">\n                                <group id=\"other_tab_entry_group\">\n                                    <group name=\"misc_group\">\n                                        <field name=\"auto_post\" attrs=\"{'invisible': [('move_type', '!=', 'entry')], 'readonly': [('state','!=','draft')]}\"/>\n                                        <field name=\"reversed_entry_id\" attrs=\"{'invisible': [('move_type', '!=', 'entry')]}\"/>\n                                        <field name=\"auto_post_until\" attrs=\"{'invisible': [('auto_post', 'in', ('no', 'at_date'))],                                                        'readonly': [('state', '!=', 'draft')]}\"/>\n                                        <field name=\"to_check\" attrs=\"{'invisible': [('move_type', '!=', 'entry')]}\"/>\n                                    </group>\n                                    <group>\n                                        <field name=\"fiscal_position_id\"/>\n                                        <field name=\"company_id\" groups=\"base.group_multi_company\" required=\"1\"/>\n                                    </group>\n                                </group>\n                                <!-- Internal note -->\n                                <field name=\"narration\" placeholder=\"Thêm ghi chú nội bộ...\" nolabel=\"1\" height=\"50\"/>\n                            </page>\n                        </notebook>\n                    </sheet>\n                    <!-- Attachment preview -->\n                    <div class=\"o_attachment_preview\" attrs=\"{'invisible': ['|',                                 ('move_type', 'not in', ('out_invoice', 'out_refund', 'in_invoice', 'in_refund')),                                 ('state', '!=', 'draft')]}\"/>\n                    <!-- Chatter -->\n                    <div class=\"oe_chatter\">\n                        <field name=\"message_follower_ids\" groups=\"base.group_user\"/>\n                        <field name=\"activity_ids\"/>\n                        <field name=\"message_ids\"/>\n                    </div>\n                </form>"}