Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ADD] l10n_rw: basic package #153501

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions addons/l10n_rw/__init__.py
@@ -0,0 +1 @@
from . import models
26 changes: 26 additions & 0 deletions addons/l10n_rw/__manifest__.py
@@ -0,0 +1,26 @@
# Part of Odoo. See LICENSE file for full copyright and licensing details.
{
'name': 'Rwanda - Accounting',
'icon': '/account/static/description/l10n.png',
'countries': ['rw'],
'category': 'Accounting/Localizations/Account Charts',
'version': '1.0',
'depends': [
'account',
],
'description': """
Rwandan localisation containing:
- COA
- Taxes
- Tax report
- Fiscal position
""",
'data': [
'data/l10n_rw_chart_data.xml',
'data/account_tax_report_data.xml',
],
'demo': [
'demo/demo_company.xml',
],
'license': 'LGPL-3',
}
245 changes: 245 additions & 0 deletions addons/l10n_rw/data/account_tax_report_data.xml
@@ -0,0 +1,245 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo auto_sequence="1">
<record id="tax_report" model="account.report">
<field name="name">Tax Report</field>
<field name="root_report_id" ref="account.generic_tax_report"/>
<field name="country_id" ref="base.rw"/>
<field name="filter_fiscal_position" eval="True"/>
<field name="availability_condition">country</field>
<field name="column_ids">
<record id="tax_report_base" model="account.report.column">
<field name="name">base</field>
<field name="expression_label">base</field>
</record>
<record id="tax_report_tax" model="account.report.column">
<field name="name">tax</field>
<field name="expression_label">tax</field>
</record>
</field>
<field name="line_ids">
<record id="tax_report_value_supplies_during_month" model="account.report.line">
<field name="name">5- Value of Supplies During the month (VAT Exclusive)</field>
<field name="code">rw_value_supplies</field>
<field name="expression_ids">
<record id="tax_report_value_supplies_during_month_expr" model="account.report.expression">
<field name="label">base</field>
<field name="engine">tax_tags</field>
<field name="formula">5.base</field>
</record>
</field>
</record>
<record id="tax_report_exempted_sales" model="account.report.line">
<field name="name">10- Exempted Sales</field>
<field name="code">rw_exempted_sales</field>
<field name="expression_ids">
<record id="tax_report_exempted_sales_expr" model="account.report.expression">
<field name="label">base</field>
<field name="engine">tax_tags</field>
<field name="formula">10.base</field>
</record>
</field>
</record>
<record id="tax_report_zero_rated_sales" model="account.report.line">
<field name="name">15- Zero Rated Sales</field>
<field name="code">rw_zero_rated_sales</field>
<field name="expression_ids">
<record id="tax_report_zero_rated_sales_expr" model="account.report.expression">
<field name="label">base</field>
<field name="engine">tax_tags</field>
<field name="formula">15.base</field>
</record>
</field>
</record>
<record id="tax_report_export" model="account.report.line">
<field name="name">20- Exports</field>
<field name="code">rw_export</field>
<field name="expression_ids">
<record id="tax_report_export_expr" model="account.report.expression">
<field name="label">base</field>
<field name="engine">tax_tags</field>
<field name="formula">20.base</field>
</record>
</field>
</record>
<record id="tax_report_total_not_taxable" model="account.report.line">
<field name="name">25- Total Not Taxable (Line 10 + 15 + 20)</field>
<field name="code">rw_not_taxable</field>
<field name="expression_ids">
<record id="tax_report_total_not_taxable_expr" model="account.report.expression">
<field name="label">base</field>
<field name="engine">aggregation</field>
<field name="formula">rw_exempted_sales.base + rw_zero_rated_sales.base + rw_export.base </field>
</record>
</field>
</record>
<record id="tax_report_taxable_sales_subject_vat" model="account.report.line">
<field name="name">30- Taxable Sales Subject to VAT ( Line 5 - Line 25)</field>
<field name="code">rw_taxable_sales_subject_vat</field>
<field name="expression_ids">
<record id="tax_report_taxable_sales_subject_vat_expr" model="account.report.expression">
<field name="label">base</field>
<field name="engine">aggregation</field>
<field name="formula">rw_value_supplies.base - rw_not_taxable.base</field>
</record>
</field>
</record>
<record id="tax_report_vat_taxable_sales" model="account.report.line">
<field name="name">35- VAT on Taxable Sales (18% of Line 30)</field>
<field name="code">rw_vat_taxable_sales</field>
<field name="expression_ids">
<record id="tax_report_vat_taxable_sales_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">tax_tags</field>
<field name="formula">35.tax</field>
</record>
</field>
</record>
<record id="tax_report_reverse_charge" model="account.report.line">
<field name="name">40- VAT Reverse Charge</field>
<field name="code">rw_reverse_charge</field>
<field name="expression_ids">
<record id="tax_report_reverse_charge_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">tax_tags</field>
<field name="formula">40.base</field>
</record>
</field>
</record>
<record id="tax_report_vat_payable" model="account.report.line">
<field name="name">45- VAT Payable (Line 35 + Line 40)</field>
<field name="code">rw_vat_payable</field>
<field name="expression_ids">
<record id="tax_report_vat_payable_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">aggregation</field>
<field name="formula">rw_vat_taxable_sales.tax + rw_reverse_charge.tax</field>
</record>
</field>
</record>
<record id="tax_report_vat_paid_on_imports" model="account.report.line">
<field name="name">50- VAT paid on imports</field>
<field name="code">rw_vat_paid_import</field>
<field name="expression_ids">
<record id="tax_report_vat_paid_on_imports_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">tax_tags</field>
<field name="formula">50.tax</field>
</record>
</field>
</record>
<record id="tax_report_vat_paid_on_local_purchase" model="account.report.line">
<field name="name">55- VAT paid on Local Purchase</field>
<field name="code">rw_vat_paid_purchase</field>
<field name="expression_ids">
<record id="tax_report_vat_paid_on_local_purchase_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">tax_tags</field>
<field name="formula">55.tax</field>
</record>
</field>
</record>
<record id="tax_report_vat_paid_on_input" model="account.report.line">
<field name="name">60- VAT paid on Input (Line 50 + Line 55)</field>
<field name="code">rw_vat_paid_on_input</field>
<field name="expression_ids">
<record id="tax_report_vat_paid_on_input_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">aggregation</field>
<field name="formula">rw_vat_paid_import.tax + rw_vat_paid_purchase.tax</field>
</record>
</field>
</record>
<record id="tax_report_vat_reverse_charge_deductible" model="account.report.line">
<field name="name">65- VAT Reverse Charge deductible</field>
<field name="code">rw_vat_reverse_charge_deductible</field>
<field name="expression_ids">
<record id="tax_report_vat_reverse_charge_deductible_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">tax_tags</field>
<field name="formula">65.tax</field>
</record>
</field>
</record>
<record id="tax_report_vat_refund" model="account.report.line">
<field name="name">70- VAT Payable/Credit Refundable [(Line 45 - (Line 60 + Line 65)]</field>
<field name="code">rw_vat_refund</field>
<field name="expression_ids">
<record id="tax_report_vat_refund_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">aggregation</field>
<field name="formula">rw_vat_payable.tax - (rw_vat_paid_on_input.tax + rw_vat_reverse_charge_deductible.tax)</field>
</record>
</field>
</record>
<record id="tax_report_carry_over" model="account.report.line">
<field name="name">75- Credit carried over from previous month(s) (Not already claimed)</field>
<field name="code">rw_carry_over</field>
<field name="expression_ids">
<record id="tax_report_carry_over_tag_expr" model="account.report.expression">
<field name="label">tag</field>
<field name="engine">tax_tags</field>
<field name="formula">75.tax</field>
</record>
<record id="tax_report_carry_over_applied_carryover" model="account.report.expression">
<field name="label">_applied_carryover_balance</field>
<field name="engine">external</field>
<field name="formula">most_recent</field>
<field name="date_scope">previous_tax_period</field>
</record>
<record id="tax_report_22_balance" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">aggregation</field>
<field name="formula">rw_carry_over.tag + rw_carry_over._applied_carryover_balance</field>
</record>
</field>
</record>
<record id="tax_report_withholding_retained" model="account.report.line">
<field name="name">80- VAT Withholding retained by MINECOFIN (not refunded)</field>
<field name="code">rw_withholding_retained</field>
<field name="expression_ids">
<record id="tax_report_withholding_retained_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">external</field>
<field name="formula">sum</field>
<field name="subformula">editable</field>
</record>
</field>
</record>
<record id="tax_report_vat_due_credit" model="account.report.line">
<field name="name">85- VAT Due / Credit Refundable (Line 70 - Line 75)</field>
<field name="code">rw_vat_due_credit</field>
<field name="expression_ids">
<record id="tax_report_vat_due_credit_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">aggregation</field>
<field name="formula">rw_vat_refund.tax - rw_carry_over.tax</field>
</record>
</field>
</record>
<record id="tax_report_vat_refund_claim" model="account.report.line">
<field name="name">90- VAT Refund Claim</field>
<field name="hierarchy_level">0</field>
<field name="expression_ids">
<record id="tax_report_vat_refund_claim_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">aggregation</field>
<field name="formula">rw_vat_refund.tax - rw_carry_over.tax</field>
<field name="subformula">if_below(RWF(0))</field>
</record>
</field>
</record>
<record id="tax_report_vat_due" model="account.report.line">
<field name="name">95- VAT Due</field>
<field name="hierarchy_level">0</field>
<field name="expression_ids">
<record id="tax_report_vat_due_expr" model="account.report.expression">
<field name="label">tax</field>
<field name="engine">aggregation</field>
<field name="formula">rw_vat_refund.tax - rw_carry_over.tax</field>
<field name="subformula">if_above(RWF(0))</field>
</record>
</field>
</record>
</field>
</record>
</odoo>
4 changes: 4 additions & 0 deletions addons/l10n_rw/data/l10n_rw_chart_data.xml
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<menuitem id="account_reports_rw_statements_menu" name="Rwanda" parent="account.menu_finance_reports" sequence="0" groups="account.group_account_readonly"/>
</odoo>