[IMP] l10n_sg: improved localisation

Added Unique Entity Number (UEN) to company and partner to use them in the IRAS Audit File (l10n_sg_reports)
    Changed vat_label on Singapore
    Added new taxes (2019)
    Fixed the Chart of Account (account codes and types)
    Added 'Permit Number' and 'Permit Number Date' on invoices
This commit is contained in:
Pierre Rousseau
2018-01-04 18:58:38 +01:00
committed by qdp-odoo
parent 1bb05b0682
commit ff4ee2c17e
12 changed files with 405 additions and 240 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
# Part of Odoo. See LICENSE file for full copyright and licensing details.
# Copyright (C) 2014 Tech Receptives (<http://techreceptives.com>).
from . import models
def _preserve_tag_on_taxes(cr, registry):
from odoo.addons.account.models.chart_template import preserve_existing_tags_on_taxes
+11 -15
View File
@@ -13,25 +13,21 @@
Singapore accounting chart and localization.
=======================================================
After installing this module, the Configuration wizard for accounting is launched.
* The Chart of Accounts consists of the list of all the general ledger accounts
required to maintain the transactions of Singapore.
* On that particular wizard, you will be asked to pass the name of the company,
the chart template to follow, the no. of digits to generate, the code for your
account and bank account, currency to create journals.
* The Chart of Taxes would display the different types/groups of taxes such as
Standard Rates, Zeroed, Exempted, MES and Out of Scope.
* The tax codes are specified considering the Tax Group and for easy accessibility of
submission of GST Tax Report.
This module add, for accounting:
- The Chart of Accounts of Singapore
- Field UEN (Unique Entity Number) on company and partner
- Field PermitNo and PermitNoDate on invoice
""",
'depends': ['base', 'account'],
'data': [
'data/l10n_sg_chart_data.xml',
'data/account_data.xml',
'data/account_tax_data.xml',
'data/account_chart_template_data.xml',
'data/l10n_sg_chart_data.xml',
'data/account_data.xml',
'data/account_tax_data.xml',
'data/account_chart_template_data.xml',
'views/account_invoice_view.xml',
'views/res_company_view.xml',
'views/res_partner_view.xml',
],
'post_init_hook': '_preserve_tag_on_taxes',
}
+72 -6
View File
@@ -56,7 +56,7 @@
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_14" model="account.account.tag">
<field name="name">Tax Paid @ 0% ME</field>
<field name="name">Tax Paid @ 7% IGDS</field>
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_15" model="account.account.tag">
@@ -164,7 +164,7 @@
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_41" model="account.account.tag">
<field name="name">Purchase 0% Standard ME</field>
<field name="name">Purchase 7% Standard IGDS</field>
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_42" model="account.account.tag">
@@ -191,6 +191,30 @@
<field name="name">Sales Out Of Scope</field>
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_48" model="account.account.tag">
<field name="name">Tax Received SRCA-S</field>
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_49" model="account.account.tag">
<field name="name">Tax Received @ 7% SRCA-C</field>
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_50" model="account.account.tag">
<field name="name">Tax Paid @ 7% TXCA</field>
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_51" model="account.account.tag">
<field name="name">Sales Standard SRCA-S</field>
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_52" model="account.account.tag">
<field name="name">Sales 7% Standard SRCA-C</field>
<field name="applicability">taxes</field>
</record>
<record id="tag_sg_53" model="account.account.tag">
<field name="name">Purchase 7% Standard TXCA</field>
<field name="applicability">taxes</field>
</record>
<!-- Sales Tax -->
@@ -278,6 +302,34 @@
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="sg_sale_tax_srca_s_na" model="account.tax.template">
<field name="name">Sales Tax SRCA-S</field>
<field name="description">SRCA-S</field>
<field name="price_include" eval="0"/>
<field name="amount">0</field>
<field name="amount_type">percent</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="account_account_797"/>
<field name="refund_account_id" ref="account_account_797"/>
<field name="chart_template_id" ref="sg_chart_template"/>
<field name="tag_ids" eval="[(6,0,[ref('tag_sg_48'),ref('tag_sg_51')])]"/>
<field name="tax_group_id" ref="tax_group_0"/>
</record>
<record id="sg_sale_tax_srca_c_7" model="account.tax.template">
<field name="name">Sales Tax 7% SRCA-C</field>
<field name="description">7% SRCA-C</field>
<field name="price_include" eval="0"/>
<field name="amount">7</field>
<field name="amount_type">percent</field>
<field name="type_tax_use">sale</field>
<field name="account_id" ref="account_account_798"/>
<field name="refund_account_id" ref="account_account_798"/>
<field name="chart_template_id" ref="sg_chart_template"/>
<field name="tag_ids" eval="[(6,0,[ref('tag_sg_49'),ref('tag_sg_52')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<!-- Purchases Tax -->
<record id="sg_purchase_tax_txn33_7" model="account.tax.template">
@@ -351,17 +403,17 @@
</record>
<record id="sg_purchase_tax_me_0" model="account.tax.template">
<field name="name">Purchase Tax 0% ME</field>
<field name="description">0% ME</field>
<field name="name">Purchase Tax 7% IGDS</field>
<field name="description">7% IGDS</field>
<field name="account_id" ref="account_account_743"/>
<field name="refund_account_id" ref="account_account_743"/>
<field name="price_include" eval="0"/>
<field name="amount">0</field>
<field name="amount">7</field>
<field name="amount_type">percent</field>
<field name="type_tax_use">purchase</field>
<field name="chart_template_id" ref="sg_chart_template"/>
<field name="tag_ids" eval="[(6,0,[ref('tag_sg_14'),ref('tag_sg_41')])]"/>
<field name="tax_group_id" ref="tax_group_0"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="sg_purchase_tax_nr_0" model="account.tax.template">
@@ -448,5 +500,19 @@
<field name="tax_group_id" ref="tax_group_7"/>
</record>
<record id="sg_purchase_tax_txca_7" model="account.tax.template">
<field name="name">Purchase Tax 7% TXCA</field>
<field name="description">7% TXCA</field>
<field name="account_id" ref="account_account_750"/>
<field name="refund_account_id" ref="account_account_750"/>
<field name="price_include" eval="0"/>
<field name="amount">7</field>
<field name="amount_type">percent</field>
<field name="type_tax_use">purchase</field>
<field name="chart_template_id" ref="sg_chart_template"/>
<field name="tag_ids" eval="[(6,0,[ref('tag_sg_50'),ref('tag_sg_53')])]"/>
<field name="tax_group_id" ref="tax_group_7"/>
</record>
</data>
</odoo>
File diff suppressed because it is too large Load Diff
+8
View File
@@ -0,0 +1,8 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
# Copyright (C) 2014 Tech Receptives (<http://techreceptives.com>).
from . import account_invoice
from . import res_company
from . import res_partner
+11
View File
@@ -0,0 +1,11 @@
# -*- coding: utf-8 -*-
from odoo import fields, models
class AccountInvoice(models.Model):
_name = 'account.invoice'
_inherit = 'account.invoice'
l10n_sg_permit_number = fields.Char(string="Permit No.")
l10n_sg_permit_number_date = fields.Date(string="Date of permit number")
+9
View File
@@ -0,0 +1,9 @@
# -*- coding: utf-8 -*-
from odoo import fields, models
class ResCompany(models.Model):
_name = 'res.company'
_inherit = 'res.company'
l10n_sg_unique_entity_number = fields.Char(string='UEN', related="partner_id.l10n_sg_unique_entity_number")
+9
View File
@@ -0,0 +1,9 @@
# -*- coding: utf-8 -*-
from odoo import fields, models
class ResPartner(models.Model):
_name = 'res.partner'
_inherit = 'res.partner'
l10n_sg_unique_entity_number = fields.Char(string='UEN')
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data>
<record id="view_invoice_form_l10n_sg" model="ir.ui.view">
<field name="name">l10n_sg.invoice.form</field>
<field name="model">account.invoice</field>
<field name="inherit_id" ref="account.invoice_supplier_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='fiscal_position_id']" position="after">
<field name="l10n_sg_permit_number"/>
<field name="l10n_sg_permit_number_date"/>
</xpath>
</field>
</record>
</data>
</odoo>
+18
View File
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data>
<record id="view_company_form_l10n_sg" model="ir.ui.view">
<field name="name">l10n_sg.company.form</field>
<field name="model">res.company</field>
<field name="inherit_id" ref="base.view_company_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='email']" position="after">
<field name="l10n_sg_unique_entity_number"/>
</xpath>
<xpath expr="//field[@name='vat']" position="attributes">
<attribute name="string" >GST No.</attribute>
</xpath>
</field>
</record>
</data>
</odoo>
+15
View File
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<data>
<record id="view_partner_form_l10n_sg" model="ir.ui.view">
<field name="name">l10n_sg.partner.form</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='vat']" position="before">
<field name="l10n_sg_unique_entity_number"/>
</xpath>
</field>
</record>
</data>
</odoo>
@@ -1415,6 +1415,7 @@
<field file="base/static/img/country_flags/sg.png" name="image" type="base64" />
<field name="currency_id" ref="SGD" />
<field eval="65" name="phone_code" />
<field name="vat_label">GST No.</field>
</record>
<record id="sh" model="res.country">
<field name="name">Saint Helena, Ascension and Tristan da Cunha</field>