Tasa Genci - Ventas

This module extends l10n_es_genci_account to integrate GENCI
functionality into the Sales workflow.
It automatically creates GENCI rate lines in sale orders when products
subject to GENCI are added, and ensures correct transfer of GENCI
amounts to customer invoices.
Key Features
- “Apply GENCI” checkbox on sale orders to control GENCI application
- Automatic creation of GENCI lines based on product rules and
quantities
- Consolidation of multiple products with the same rule into single
GENCI lines
- Display of GENCI amounts on sale order reports (when enabled in
company settings)
Table of contents
Installation
To install this module, you need to:
Usage
Prerequisites
Before using this module, ensure that the base module
``l10n_es_genci_account`` is properly configured:
- Company GENCI is enabled (Settings → Companies → GENCI tab)
- GENCI rules are created with validity dates if necessary
- Products are configured as “Subject to GENCI” with linked rules
- Partners have “Subject to GENCI” checked (default)
Important:
For GENCI fee lines to compute and update their invoiced quantities
correctly, ensure that the “Tasa GENCI” product is configured with the
invoicing policy “Based on ordered quantities.” GENCI lines are not
driven by delivered quantities; they must always follow the product’s
ordered quantity invoicing logic.
For detailed configuration instructions, refer to the
``l10n_es_genci_account`` module documentation.
1. Create a Sale Order
- Go to Sales → Orders → Quotations → Create
- Select a partner that has “Subject to GENCI” enabled
2. Apply GENCI Checkbox
- The “Apply GENCI” checkbox appears in the order header (only when
company GENCI is enabled)
- If the partner is GENCI-subject, check this box to apply GENCI rates
- If it remains unchecked, GENCI lines will not be created, even if
products require it
3. Add Products
- Add products that are configured as “Subject to GENCI”
- Products must have a valid GENCI rule assigned
- The rule’s validity dates must include the order date
4. Automatic GENCI Line Creation
GENCI lines are automatically generated when:
- You save the order
- Or you modify order lines
Behavior:
- One GENCI line is created per distinct GENCI rule
- Quantity = sum of all product quantities using that rule
Application Logic
Conditions for GENCI Application
- Company has GENCI enabled
- “Apply GENCI” checkbox is checked on the order
- Partner is subject to GENCI
- Fiscal position (if set) allows GENCI
- Products have valid GENCI rules for the order date
Known issues / Roadmap
Pending Features:
- Product GENCI flag type The genci_subject field on products is
currently a selection (yes / no), inherited from
l10n_es_genci_account. Once this field is migrated to a Boolean in
the parent module, this module should be updated accordingly to use a
Boolean flag.
- GENCI logic reuse Purchase and Sale modules currently share very
similar GENCI logic. As a future improvement or during a migration,
this logic should be extracted into a shared mixin to reduce
duplication and improve maintainability.
- Units of Measure handling for GENCI calculations GENCI amounts are
currently computed per purchased unit (product_qty), without applying
any Unit of Measure (UoM) conversion. This is an intentional design
decision, as GENCI rules are defined per product unit. If future
requirements introduce UoM-dependent GENCI rules (e.g. weight or
volume based), this logic should be reviewed and adapted accordingly.
Bug Tracker
Bugs are tracked on GitHub Issues.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
feedback.
Do not contact contributors directly about support or help with technical issues.
Credits
Contributors
- Sygel:
- Ángel Rivas
- Valentín Vinagre
Maintainers
This module is part of the sygel-technology/sy-l10n-spain project on GitHub.
You are welcome to contribute.