cadrumo.domain.bienes_inversion package¶
Capital-goods IVA deduction-regularización register and annual/disposal computes.
Models the LIVA arts. 107-110 regularización de deducciones por bienes de
inversión: a durable, cross-year BienesInversionIvaRegister, one
BienInversionIvaRecord per capital good, the pure art-109
RegularizacionAnualResult computed for each supplied definitive prorrata
percentage, and the pure art-110 RegularizacionTransmisionResult computed
for a good disposed of during its regularisation window.
The register is a taxpayer-fact store (owned goods, acquisition year, cuota
soportada, initial definitive prorrata percentage), sibling to
domain.iva_compensation; the regulatory constants it consumes (the
4/9-year windows, the over-10-point gate, and the /5, /10 divisors) live in the
central authoring surface core.external_constants, grounded verbatim
in the bundled consolidated LIVA corpus.
Register-wide projection returns RegistroRegularizacionResult for the
ordinary annual art-109 path: each art-108-eligible in-window good (not yet
disposed of) is either computed into the proposed Modelo 303 casilla 43 / Modelo
390 regularización value when the current-year definitive prorrata fact is
available, or reported as pending that separate input. A good recorded as
disposed of in the projected year routes instead through
compute_registro_transmisiones(), which folds the art-110 single (“única”)
regularización for every remaining window year into the same casilla-43 total;
art-110 carries no pending state — the disposal regime and acquisition-year facts
are already on the record, so every disposed good is always computed. This domain
module does not read the secure-object store or derive prorrata; application and
persistence layers supply those facts.
See also
application.bienes_inversionProfile-scoped service that declares and lists the persisted register.
adapters.persistence.profile.bienes_inversionFINANCIAL secure-object repository that stores the register singleton.
application.calculationsSource resolver and advisory projection surfaces for the
bienes_inversion_regularizacioncalculation source.domain.ivaLegal prorrata substrate that supplies the separate definitive percentage input; usage ratios are not a substitute.
Submodules¶
- cadrumo.domain.bienes_inversion.register module
BienInversionRecordErrorBienInversionValidationErrorBIENES_INVERSION_SCHEMA_VERSIONBienInversionDisposalBienInversionIvaRecordBienInversionIvaRecord.identifierBienInversionIvaRecord.descriptionBienInversionIvaRecord.acquisition_yearBienInversionIvaRecord.cuota_soportadaBienInversionIvaRecord.prorrata_inicial_pctBienInversionIvaRecord.kindBienInversionIvaRecord.art108_elegibleBienInversionIvaRecord.acquisition_ledger_idBienInversionIvaRecord.prorrata_sector_idBienInversionIvaRecord.disposalBienInversionIvaRecord.schema_versionBienInversionIvaRecord.deduccion_efectuadaBienInversionIvaRecord.is_within_regularization_window()BienInversionIvaRecord.remaining_regularization_years()
RegularizacionDireccionRegularizacionAnualResultcompute_regularizacion_anual()RegularizacionTransmisionResultcompute_regularizacion_transmision()BienesInversionIvaRegisterRegistroRegularizacionRowBienesInversionSectorContributionInvestmentAssetAcquisitionLinkRegistroRegularizacionResultRegistroRegularizacionResult.regularizacion_yearRegistroRegularizacionResult.rowsRegistroRegularizacionResult.proposed_casilla_43RegistroRegularizacionResult.computed_countRegistroRegularizacionResult.pending_percentage_countRegistroRegularizacionResult.sector_contributionsRegistroRegularizacionResult.parameters_provenance
compute_registro_regularizacion()RegistroTransmisionRowRegistroTransmisionesResultcompute_registro_transmisiones()validate_investment_asset_reciprocity()
- cadrumo.domain.bienes_inversion.regularizacion_parameters module
BienesInversionParameterResolutionErrorBienesInversionParameterProvenanceBienesInversionRegularizacionParametersBienesInversionRegularizacionParameters.ventana_anos_muebleBienesInversionRegularizacionParameters.ventana_anos_inmuebleBienesInversionRegularizacionParameters.divisor_muebleBienesInversionRegularizacionParameters.divisor_inmuebleBienesInversionRegularizacionParameters.umbral_puntosBienesInversionRegularizacionParameters.umbral_comparisonBienesInversionRegularizacionParameters.provenanceBienesInversionRegularizacionParameters.regularizacion_applies()
resolve_bienes_inversion_regularizacion_parameters()
- cadrumo.domain.bienes_inversion.vocabulary module