Prepare Dominican accounting localization for core review

This commit is contained in:
José Arturo García
2026-08-10 00:08:55 -04:00
parent 85dc8ec2b3
commit a740366693
40 changed files with 9016 additions and 10473 deletions
+100 -11
View File
@@ -1,21 +1,110 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
project = 'Account DO'
release = version = '8.0'
author = 'Solutema'
copyright = '2026, Solutema'
import os
base_url = os.environ.get('DOC_BASE_URL')
if base_url:
modules_url = base_url + '/modules-{module}/'
trytond_url = base_url + '/server/'
else:
modules_url = 'https://docs.tryton.org/{series}/modules-{module}/'
trytond_url = 'https://docs.tryton.org/{series}/server/'
def get_info():
import configparser
import json
import subprocess
module_dir = os.path.dirname(os.path.dirname(__file__))
config = configparser.ConfigParser()
config.read_file(open(os.path.join(module_dir, 'tryton.cfg')))
info = dict(config.items('tryton'))
metadata_cmd = 'python3 -m build -qq --metadata'
if os.environ.get('DOC_NO_ISOLATION'):
metadata_cmd += ' --no-isolation'
metadata = subprocess.check_output(
metadata_cmd, shell=True, encoding='utf-8', cwd=module_dir).strip()
metadata = json.loads(metadata)
info['name'] = metadata['name']
info['description'] = metadata['summary']
major_version, minor_version, _ = metadata['version'].split('.', 2)
major_version = int(major_version)
minor_version = int(minor_version)
if minor_version % 2:
info['series'] = 'latest'
info['branch'] = 'branch/default'
else:
info['series'] = '.'.join(metadata['version'].split('.', 2)[:2])
info['branch'] = 'branch/' + info['series']
for key in {'depends', 'extras_depend'}:
info[key] = info.get(key, '').strip().splitlines()
info['modules'] = set(info['depends'] + info['extras_depend'])
info['modules'] -= {'ir', 'res'}
return info
info = get_info()
html_theme = 'sphinx_book_theme'
html_theme_options = {
'logo': {
'alt_text': "Tryton Documentation",
'image_light': 'https://docs.tryton.org/logo-light.svg',
'image_dark': 'https://docs.tryton.org/logo-dark.svg',
'link': base_url,
},
'home_page_in_toc': True,
'repository_provider': 'gitlab',
'repository_url': 'https://code.tryton.org/tryton',
'repository_branch': info['branch'],
'use_source_button': True,
'use_edit_page_button': True,
'use_repository_button': True,
'use_download_button': False,
'path_to_docs': 'modules/account_do/doc',
}
html_title = info['description']
master_doc = 'index'
project = info['name']
release = version = info['series']
default_role = 'ref'
highlight_language = 'none'
exclude_patterns = ['**/*.inc.rst']
extensions = [
'sphinx_copybutton',
'sphinx.ext.intersphinx',
]
intersphinx_mapping = {
'trytond': ('https://docs.tryton.org/projects/server/en/8.0/', None),
'account': (
'https://docs.tryton.org/projects/modules-account/en/8.0/', None),
'company': (
'https://docs.tryton.org/projects/modules-company/en/8.0/', None),
'currency': (
'https://docs.tryton.org/projects/modules-currency/en/8.0/', None),
'trytond': (trytond_url.format(series=version), None),
}
intersphinx_mapping.update({
module: (modules_url.format(
module=module.replace('_', '-'), series=version), None)
for module in info['modules']
})
linkcheck_ignore = [r'/.*', r'https://demo.tryton.org/*']
linkcheck_request_headers = {
'User-Agent': (
'TrytonBot/0.0 (https://www.tryton.org/foundation) '
'sphinx-linkcheck/0.0'),
'Accept-Encoding': 'gzip',
}
linkcheck_workers = 1
try:
with open(os.path.join(
os.path.dirname(__file__),
'linkcheck_ignore.json'), 'r') as file:
import json
linkcheck_ignore.extend(json.load(file))
del json
except FileNotFoundError:
pass
del get_info, info, base_url, modules_url, trytond_url
+71
View File
@@ -0,0 +1,71 @@
Core Inclusion Readiness
========================
Tax Review
----------
All tax-template identifiers are inventoried in :doc:`tax_validation`; the
test suite enforces an exact match with ``tax_do_en.xml``. Known unsupported,
historical or unsafe calculations are excluded. Sources and functional limits
are documented in :doc:`sources` and :doc:`tax_blueprint`.
A software change cannot replace professional responsibility for a legal
opinion. Therefore professional Dominican review is a governance prerequisite,
not an unresolved implementation defect. If upstream maintainers do not
require formal sign-off, the documented primary-source review is the evidence
available to code review. If they do require it, the merge request must name
the reviewer and review date rather than claiming certification in module data.
Chart Size and Provenance
-------------------------
The chart has 281 templates: 70 grouping nodes and 211 posting leaves. Of the
posting leaves, 61 are tax control accounts (45 payable and 16 recoverable).
Those controls deliberately provide stable identifiers for accounting and
reporting modules. The remaining leaves cover cash, receivables, payables,
inventory, cost of sales, assets, depreciation, deposits, leases, financial
instruments, provisions, equity, revenue, expenses, OCI and closing accounts.
The chart is not justified as a statutory catalogue. It is justified as a
designed Tryton baseline using these objective inclusion rules:
* a Tryton property or optional accounting module needs the account;
* a materially different account type, party requirement or reconciliation
behaviour is needed;
* separate debit or credit control is needed for a supported Dominican tax; or
* separate presentation is needed for a documented IFRS accounting policy.
Grouping nodes are closed and cannot receive postings. The test suite checks
281 unique templates, required optional-module accounts, account types and the
IFRS policy coverage map. This is a transparent functional justification,
which is the appropriate evidence where no official general chart exists.
There is still a maintainership choice: upstream may prefer fewer tax control
accounts. That is not decidable from Dominican law because no mandatory
general catalogue supplies a target count. If requested during review, the
safe reduction is to merge control accounts only after confirming that
``dgii_reports`` does not depend on their stable identifiers; claiming that
281 codes are official would be incorrect.
Upstream Repository
-------------------
The current Git repository is a review and staging repository. Tryton's
upstream repository is Mercurial and contributions are based on its ``default``
branch. Repository placement is therefore a delivery step, not a defect in the
module implementation.
The reproducible upstream procedure is:
#. clone or update ``https://foss.heptapod.net/tryton/tryton`` with Mercurial;
#. update to ``default`` and create a feature bookmark;
#. copy this reviewed module into the module directory used by that checkout;
#. use the development-series version specified by upstream ``default``;
#. run the monorepository formatting, XML, module and scenario tests;
#. create one Tryton-style commit referencing the localization work item;
#. submit one focused merge request containing the blueprint and official
source links.
This checkout does not contain Mercurial or a Tryton monorepository, so claiming
that the transplant has already been performed would be false. The module is
ready to transplant once that repository is supplied or Mercurial is installed.
+9 -6
View File
@@ -6,13 +6,16 @@ shape as Tryton chart modules such as ``account_fr``, ``account_be``, and
``account_syscohada``:
* chart, tax, tax code, and tax rule data are declarative XML records;
* Python code extends existing account models only where Dominican metadata or
chart setup defaults are needed;
* Python code extends only the chart creation wizard to provide Dominican
defaults;
* the chart creation wizard proposes the Dominican receivable and payable
control accounts when the Dominican chart is selected;
* fiscal report box mapping remains outside this module and is owned by
reporting modules such as ``dgii_reports``.
control accounts when either Dominican chart is selected;
* English and Latin American Spanish (``es_419``) charts are separate static
datasets because Tryton does
not translate account and tax template names at runtime;
* fiscal report classifications and form box mapping remain outside this
module and are owned by reporting modules such as ``dgii_reports``.
The module deliberately avoids replacing posting, tax computation, or invoice
logic from Tryton's ``account`` module. Complementary Dominican modules should
consume the accounts, taxes, tax codes, and metadata defined here.
consume the accounts, taxes, and tax codes defined here.
+12 -7
View File
@@ -8,8 +8,12 @@ Tryton.
:maxdepth: 2
design
requirements
tax_blueprint
tax_validation
sources
core_readiness
reference
publishing
releases
It includes:
@@ -23,17 +27,18 @@ It includes:
* tax code templates for DGII-oriented fiscal balances;
* sale, purchase, reduced-rate, zero-rate, informal supplier, acquirer, and
withholding tax rules for common Dominican fiscal situations;
* a broad ``tax_kind`` classification field on tax templates and taxes;
* granular ``tax_fiscal_type`` and ``tax_application`` fields for fiscal
reporting, validation, and account mapping.
* legal notices and validity dates on tax templates;
* tax rules for common sale, purchase, and withholding situations.
The chart is intended as a base localization. It provides the account
The chart is intended as a proposed base localization. It provides the account
structure and Tryton account types required to operate under IFRS in the
Dominican Republic, but it does not replace accounting policies, measurement
models, estimates, closing procedures, financial statements, notes, or
disclosures. Companies should review account names, sector-specific taxes, and
DGII filing mappings before using it in production. The 16% and 8% ITBIS
templates are kept as special-rate templates for cases where those rates apply.
DGII filing mappings before using it in production. The reduced 16% ITBIS
templates apply only to the goods enumerated by article 345 of the Tax Code.
Unsubstantiated 9% templates and the historical 8% transitional rate are not
included in a newly created chart.
IFRS base coverage
------------------
-35
View File
@@ -1,35 +0,0 @@
Publishing
==========
Every pushed commit installs the package, compiles the Python sources, runs the
module tests, builds the distribution, and validates it with ``twine check``.
Only branches named with the Tryton series, such as ``8.0``, continue to the
publishing step after those checks pass.
The publishing workflow creates a CI-only package version by reading the
published versions in Gitea's PyPI-compatible package registry and assigning the
next patch version for the branch series. For example, branch ``8.0`` publishes
``8.0.0`` when no package exists yet, then ``8.0.1``, ``8.0.2``, and so on.
This is necessary because Gitea's PyPI-compatible registry is a custom package
repository for Twine and does not support ``twine upload --skip-existing``.
Required repository secrets:
* ``REGISTRY_USER``
* ``REGISTRY_PASSWORD``
Publish a release branch:
.. code-block:: console
git switch 8.0
git push origin 8.0
Install from Gitea:
.. code-block:: console
pip install \
--index-url https://gitea.joseagrc.com/api/packages/tryton-do/pypi/simple \
trytond_account_do
+24 -16
View File
@@ -4,24 +4,32 @@ Reference
Chart Setup
-----------
When the Dominican chart ``account_do.do_account_root`` is selected, the chart
creation wizard proposes:
The module provides two complete chart roots:
* ``account_do.do_account_110201`` as the default receivable account;
* ``account_do.do_account_210101`` as the default payable account.
* ``account_do.do_account_root_en`` for English accounting data;
* ``account_do.do_account_root_es_419`` for Dominican Spanish accounting data,
using Tryton's ``es_419`` language until ``es_DO`` is available.
Fiscal Metadata
---------------
When the English chart is selected, the chart creation wizard proposes:
The module extends ``account.tax.template`` and ``account.tax`` with:
* ``account_do.do_account_110201_en`` as the default receivable account;
* ``account_do.do_account_210101_en`` as the default payable account.
* ``tax_kind``;
* ``tax_fiscal_type``;
* ``tax_application``;
* ``dgii_legal_reference``;
* ``dgii_legal_article``;
* ``dgii_form_hint``;
* ``dgii_fiscal_status``.
For the Spanish chart, the corresponding defaults are
``account_do.do_account_110201_es_419`` and
``account_do.do_account_210101_es_419``.
These fields classify Dominican taxes without duplicating DGII report box
mapping. Reporting modules should use them together with account and tax codes.
The selected language is permanent accounting data. Changing a user's
interface language does not rename an existing chart.
Taxes
-----
The module defines Dominican tax groups, tax templates, tax codes, and tax
rules using the standard models from :mod:`account`. Each tax template keeps
its legal basis in ``legal_notice`` and uses ``start_date`` and ``end_date``
when a rate has a limited period of validity.
DGII form classifications and form-box mappings are intentionally outside the
accounting localization. Reporting modules can derive fiscal totals from the
stable tax and tax-code identifiers provided by this module.
+10 -4
View File
@@ -1,9 +1,15 @@
Releases
========
8.0.0
8.0.1
-----
Initial Tryton 8.0 series release with Dominican chart of accounts, fiscal
accounts, taxes, tax codes, tax rules, legal metadata, translations, and chart
creation defaults.
Initial release with the Dominican chart of accounts, fiscal accounts, taxes,
tax codes, tax rules, translations, and chart creation defaults. The tax
requirements and source provenance are documented, unsupported historical
rates are excluded, and identified legal references are corrected.
Complete English and Latin American Spanish (``es_419``) chart variants are
available because account and
tax template names are static accounting data in Tryton.
Existing 8.0.0 identifiers are migrated to ``es_419`` without replacing the
referenced templates or the accounts and taxes already created from them.
+66
View File
@@ -0,0 +1,66 @@
Accounting Requirements
=======================
The Dominican accounting localization provides the accounting templates needed
to configure a company without changing Tryton's posting or tax calculation
behaviour.
Chart of Accounts
-----------------
The chart supplies a general-purpose structure for Dominican companies. It
includes receivable and payable control accounts, inventory and cost accounts,
property and depreciation accounts, financial instruments, provisions,
deferred taxes, equity, income, expenses, and closing accounts.
There is no mandatory general-purpose Dominican account-code catalogue for
ordinary entities. IFRS prescribes presentation and recognition requirements,
not account numbers. The supplied codes are therefore localization data
designed to satisfy Tryton's operational account properties and common IFRS
presentation classes; they must not be described as an official Dominican
chart. Regulated entities, including financial institutions, must use their
sector regulator's chart instead.
Companies remain responsible for adapting the chart to their sector and
accounting policies. The localization does not implement measurement,
valuation, closing, or financial-statement procedures. The provenance and
review boundary are documented in :doc:`sources`.
Taxes
-----
The module represents Dominican taxes with standard ``account`` models:
* tax groups classify ITBIS, ISR withholdings, ISC, CDT, legal tips, and other
taxes;
* tax templates define rates, accounting accounts, legal notices, and periods
of validity;
* tax codes aggregate debit and credit amounts;
* tax rules select or replace taxes for supported sale and purchase patterns.
Only rates supported by an identified legal source belong in a newly created
chart. The unsupported 9% ITBIS templates were removed. The 8% reduced rate
was transitional for 2013 and was also removed because a new chart does not
need it. The current reduced 16% rate is limited to the goods enumerated by
article 345; it is not a generic alternative rate.
The subject, taxable event, base, accounting treatment and reporting limits of
the supported taxes are described in :doc:`tax_blueprint`. A standard tax
rule can select a tax but cannot determine taxpayer registration, industry,
thresholds or other external facts. Such rules are manual accounting aids,
not a legal eligibility engine.
Scope
-----
The localization does not manage fiscal receipt numbers, electronic fiscal
documents, taxpayer registry lookups, invoice document classes, payroll, or
DGII return files. Those features belong to separate modules and may consume
the stable account, tax, and tax-code identifiers defined here.
Optional Accounting Modules
---------------------------
The test suite installs the localization together with ``account_asset``,
``account_deposit``, and ``account_stock_continental`` to detect registration
and chart-creation incompatibilities with common accounting extensions.
+68
View File
@@ -0,0 +1,68 @@
Sources and Provenance
======================
Source Policy
-------------
The module uses public primary legislation and regulator publications to
justify tax data. A form label, community answer or private accounting manual
is not by itself sufficient authority for a rate. IFRS publications are used
only to explain the structure of account types; copyrighted IFRS text is not
redistributed.
Chart of Accounts
-----------------
Dominican ordinary companies apply full IFRS or IFRS for SMEs according to the
rules adopted by the Instituto de Contadores Públicos Autorizados. Neither
framework prescribes account numbers. Consequently ``account_chart_do_en.xml``
is a proposed interoperable baseline, not a transcription of an official
general-purpose catalogue. Its reviewable design criteria are:
* receivable and payable control accounts required by Tryton;
* separate current and non-current presentation classes;
* inventory, fixed-asset, depreciation, deposit and stock accounts needed by
optional Tryton accounting modules;
* separate tax control accounts so reporting modules can map movements without
parsing translated account names;
* no claim that an account code is required by an IFRS paragraph.
The Superintendencia de Bancos publishes a mandatory accounting manual for
supervised financial institutions. It is evidence that a sector chart exists,
not a source for this general chart. A future proposal should either obtain
maintainer agreement for this designed baseline or reduce it further; exact
correspondence with a nonexistent general statutory chart cannot be asserted.
Official References
-------------------
* `Dominican Republic IFRS jurisdiction profile
<https://www.ifrs.org/use-around-the-world/use-of-ifrs-standards-by-jurisdiction/view-jurisdiction/dominican-republic/>`_
* `ICPARD international financial reporting standards
<https://icpard.org/normativa/normas-internacionales-de-informacion-financiera/>`_
* `DGII Tax Code, Law 11-92
<https://dgii.gov.do/transparencia/marcoLegal/Documents/Leyes/11-92.pdf>`_
* `DGII ITBIS overview
<https://dgii.gov.do/cicloContribuyente/obligacionesTributarias/principalesImpuestos/Paginas/Itbis.aspx>`_
* `Law 253-12, article 23 (ITBIS rates and enumerated reduced-rate goods)
<https://dgii.gov.do/legislacion/leyesTributarias/Documents/Codigo%20Tributario%20y%20Leyes%20que%20lo%20modifican%20y%20complementan/253-12.pdf>`_
* `Tax Code Title V, articles 401-405 (asset tax)
<https://dgii.gov.do/legislacion/codigoTributario/Cdigo%20Tributario/Titulo5.pdf>`_
* `Law 173-07, article 7 (real-estate transfer tax)
<https://dgii.gov.do/legislacion/leyesTributarias/Documents/Codigo%20Tributario%20y%20Leyes%20que%20lo%20modifican%20y%20complementan/173-07.pdf>`_
* `Labour Code, Law 16-92, article 228 (legal tip)
<https://mt.gob.do/transparencia/images/docs/publicaciones/codigo-de-trabajo.pdf>`_
* `General Rule 06-12 (vehicle first registration and CO2 distinction)
<https://dgii.gov.do/legislacion/normasGenerales/Documents/NG%20sobre%20Veh%C3%ADculos%20de%20Motor/norma06-12.pdf>`_
* `General Rule 04-2025 (bovine subsector withholding)
<https://dgii.gov.do/legislacion/normasGenerales/Documents/Normas%20Sectoriales/Norma04-25.pdf>`_
* `Law 30-26 (bank checks and electronic transfers)
<https://dgii.gov.do/transparencia/baseLegal/Documents/Leyes/30-26.pdf>`_
Review Record
-------------
Every change to a rate, validity date or legal notice should cite a primary
source in the commit and update :doc:`tax_blueprint`. Before an upstream
proposal, a Dominican tax professional should sign off the remaining
sector-specific templates against the law effective on the review date.
+98
View File
@@ -0,0 +1,98 @@
Tax Requirements Blueprint
==========================
Accounting Model
----------------
Taxes use Tryton's standard tax templates, tax-code templates and tax rules.
Positive rates create a tax charge. Negative rates represent a withholding.
Sales taxes credit a liability account; recoverable purchase ITBIS debits a
tax-credit account; suffered withholdings debit a receivable; practiced
withholdings credit a payable. Reporting modules aggregate the resulting
movements into DGII forms.
The rules do not inspect RNC status, economic activity, informality, thresholds,
vehicle emissions or product tariff codes. A user must select a rule only
after establishing those facts. Conditional automation belongs in a dedicated
fiscal module with the required party and product metadata.
General ITBIS
-------------
The taxable events are transfers and imports of industrialized goods and the
provision or lease of services. The general rate is 18% of the taxable amount.
The 16% rate is restricted to the goods enumerated by article 345 of the Tax
Code; a generic product must not use it. Articles 343 and 344 define exempt
goods and services, while exports use zero-rate treatment. Purchase ITBIS is
recoverable only when the statutory credit requirements are met. The module
records invoice tax; ``dgii_reports`` owns IT-1 box mapping and filing output.
Historical 8% and Unsupported 9%
--------------------------------
Article 23 of Law 253-12 made 8% the reduced rate for enumerated goods only in
2013, followed by 11% in 2014, 13% in 2015 and 16% from 2016. A chart created
now does not need an isolated 8% template, so it is excluded. No primary
source was found for a current general 9% ITBIS rate; the former 9% templates,
rules and codes are excluded until a precise taxable event and legal source are
provided.
Withholdings
------------
ISR and ITBIS withholding templates record amounts retained by the payer or
suffered by the recipient. Their applicability depends on the parties and
operation. In particular:
* the 2% acquirer withholding under General Rule 06-23 is excluded. It is
payment based and depends on registration status, activity and thresholds;
an invoice tax on the untaxed base would calculate the wrong amount. It
belongs in a payment-aware Dominican fiscal module;
* the bovine 1% template applies when a legal entity buys live cattle for
slaughter or bovine meat from a non-registered natural person. It is 1% of
the invoiced amount, reported through IR-17, under articles 2, 4 and 5 of
General Rule 04-2025. The rule is dated 20 March 2025 and article 11 makes it
effective three months later, represented as 20 June 2025.
Selective and Sector Taxes
--------------------------
ISC templates are sector-specific and must be selected only for the products
or services covered by the cited provision. Alcohol and tobacco may also
carry specific amounts that change periodically; a percentage template does
not replace the current DGII specific-amount table. The CDT template applies
to telecommunications revenue under article 26 of Law 153-98.
The vehicle 17% template represents the first-registration charge on CIF value
under article 22 of Law 557-05. It is not ISC and is classified with other
taxes. The separate CO2 charge under Law 253-12 and General Rule 06-12 ranges
with emissions and is deliberately not automated.
Other Charges
-------------
The legal 10% tip applies only to hotels, restaurants, cafés, bars and similar
establishments that serve food or drink, under article 228 of the Labour Code.
It is not a general sales tax.
The annual asset tax is 1% of taxable assets under articles 401-405 of the Tax
Code, with the rate in article 404. The template supports accounting of a
manual assessment; it does not compute exemptions or its interaction with ISR.
The real-estate transfer tax is 3% under article 20 of Law 288-04 as amended by
article 7 of Law 173-07. Valuation and exemptions are outside invoice-tax
automation and must be checked when the transfer is assessed.
The check and electronic-transfer templates preserve 0.15% through 2 July
2026 and 0.20% from 3 July 2026 under Law 30-26. Their tax rule switches rates
by accounting date.
Validation Boundary
-------------------
This blueprint resolves the identified citation and scope defects. It is not
a professional opinion. Before upstream submission, all sector-specific ISR,
ITBIS and ISC templates must receive a line-by-line review recording subject,
event, base, rate, effective dates, exemptions, posting direction and DGII
return. Any template that fails that review should be removed from the core
proposal and maintained in a specialized Dominican module instead.
+109
View File
@@ -0,0 +1,109 @@
Tax Template Validation Register
================================
Purpose and Status
------------------
This register makes the review population explicit and prevents a tax template
from being added without appearing in the functional documentation. The module
test suite checks that the identifiers below exactly match the XML.
``Documented`` means that the template has an identified statutory or regulator
source, an accounting direction and a stated functional boundary. It does not
mean that a software author has issued a Dominican tax opinion. Professional
sign-off remains a release-governance control because legal authority and
professional responsibility cannot be created by code or automated tests.
General ITBIS
-------------
* ``do_tax_itbis_18_venta`` — general 18% output ITBIS.
* ``do_tax_itbis_16_venta`` — 16% output ITBIS, restricted to article 345 goods.
* ``do_tax_itbis_18_compra`` — potentially creditable 18% input ITBIS.
* ``do_tax_itbis_16_compra`` — potentially creditable 16% input ITBIS on article 345 goods.
* ``do_tax_itbis_exento`` — operations covered by articles 343 and 344.
* ``do_tax_itbis_tasa_cero`` — zero-rated exports and qualifying free-zone operations.
ITBIS Withholdings
------------------
These templates are manual selections. Party status and the legal nature of
the service must be established outside the tax rule.
* ``do_tax_ret_itbis_30`` — 30% of 18% ITBIS, represented as -5.4% of base.
* ``do_tax_ret_itbis_100_inf`` — 100% of 18% ITBIS on qualifying services.
* ``do_tax_ret_itbis_75_inf`` — 75% of 18% ITBIS, represented as -13.5%.
* ``do_tax_ret_itbis_75_inf_16`` — 75% of reduced 16% ITBIS, represented as -12%.
* ``do_tax_ret_itbis_100_goods_18`` — 100% of 18% on qualifying informal purchases.
* ``do_tax_ret_itbis_100_goods_16`` — 100% of reduced 16% on qualifying purchases.
* ``do_tax_ret_itbis_rst_18`` — 100% of 18% for a qualifying RST operation.
* ``do_tax_ret_itbis_rst_16`` — 100% of reduced 16% for a qualifying RST operation.
* ``do_tax_ret_itbis_insurance_100`` — insurance-sector withholding.
* ``do_tax_ret_itbis_airline_100`` — BSP/IATA airline withholding suffered.
* ``do_tax_ret_itbis_society_30_suf`` — 30% withholding suffered from a company.
* ``do_tax_ret_itbis_hotel_100`` — hotel commission withholding suffered.
* ``do_tax_ret_itbis_state_100`` — state-entity withholding suffered.
ISR Withholdings
----------------
* ``do_tax_ret_isr_hon_5`` — 5% legal-entity service case.
* ``do_tax_ret_isr_serv_10`` — 10% natural-person professional service case.
* ``do_tax_ret_isr_div_10`` — 10% dividends and distributed profits.
* ``do_tax_ret_isr_int_10`` — 10% interest paid to a natural person.
* ``do_tax_ret_isr_alq_10`` — 10% qualifying rent paid to a natural person.
* ``do_tax_ret_isr_est_15`` — historical or specific 1.5% public-sector case.
* ``do_tax_ret_isr_est_5`` — 5% public-sector payment case.
* ``do_tax_ret_isr_bovine_1`` — 1% qualifying bovine purchase from an unregistered natural person.
* ``do_tax_ret_isr_exporter_25`` — 2.5% qualifying local sale by an exporter.
* ``do_tax_ret_isr_int_pj_1`` — 1% interest paid to a legal entity.
* ``do_tax_ret_isr_premios_25`` — 25% qualifying lottery, raffle or draw prize.
* ``do_tax_ret_isr_premios_10`` — 10% qualifying prize band.
* ``do_tax_ret_isr_premios_15`` — 15% qualifying prize band.
* ``do_tax_ret_isr_tragamonedas_10`` — 10% slot-machine prize case.
* ``do_tax_ret_isr_other_income_10`` — 10% residual income case under article 309.
* ``do_tax_ret_isr_ext_27`` — 27% qualifying service or royalty paid abroad.
* ``do_tax_ret_isr_ext_10`` — 10% qualifying interest paid abroad.
Selective and Sector Charges
----------------------------
* ``do_tax_isc_bebidas_alc`` — 10% alcohol ad-valorem component; specific amount excluded.
* ``do_tax_isc_tabaco`` — 20% tobacco ad-valorem component; specific amount excluded.
* ``do_tax_isc_telecom`` — 10% telecommunications ISC.
* ``do_tax_isc_combustibles_16`` — 16% fossil-fuel charge.
* ``do_tax_isc_avtur_65`` — 6.5% qualifying Avtur charge.
* ``do_tax_isc_fuel_rd2_gallon`` — fixed RD$2 per qualifying gallon.
* ``do_tax_ret_isc_insurance_100`` — insurance-sector ISC withholding.
* ``do_tax_isc_vehiculos`` — 17% first-registration charge on CIF, not ISC despite the stable legacy identifier.
* ``do_tax_cdt_indotel`` — 2% telecommunications development contribution.
Other Charges
-------------
* ``do_tax_propina_10`` — 10% legal tip under Labour Code article 228.
* ``do_tax_cheques_015`` — 0.15% bank charge through 2 July 2026.
* ``do_tax_cheques_020`` — 0.20% bank charge from 3 July 2026.
* ``do_tax_activos_1`` — manual accounting of the annual 1% asset-tax assessment.
* ``do_tax_iti_3`` — manual accounting of the 3% real-estate transfer assessment.
Rejected Templates
------------------
The following cases are intentionally absent:
* 8% ITBIS: transitional 2013 rate, not appropriate for a newly created chart;
* 9% ITBIS: no precise current primary source and taxable event established;
* 2% acquirer withholding: payment-based and conditional, so an invoice-base
percentage would be materially misleading;
* vehicle CO2 charge: its rate depends on vehicle emissions;
* changing specific alcohol and tobacco amounts: maintained by DGII tables and
unsuitable as undated static data.
Sign-off Record
---------------
For an upstream submission, record the reviewer name, professional capacity,
review date and source versions in the merge request. Until that occurs, the
correct claim is “complete documented technical review”, not “certified tax
advice”.