aeat.application.bienes_inversion package

Application service for the capital-goods IVA regularización register.

Thin orchestration over adapters.persistence.profile.bienes_inversion.BienesInversionIvaRegisterRepository: the operator declares tracked capital goods and lists them. The register is authoritative profile-scoped state; this service owns no calculation, only the declare/list surface the CLI exposes. The art-109 annual compute lives in the pure domain module domain.bienes_inversion.

The register is source evidence for the live bienes_inversion_regularizacion calculation source: application calculation code can project it into governed Modelo 303 casilla 43 / Modelo 390 regularización binding values once definitive prorrata facts exist, and into a non-blocking advisory when those facts are still pending. This facade does not derive definitive prorrata percentages or write binding values.

See also

domain.bienes_inversion

Pure LIVA arts. 107-110 register records and annual regularización computations.

adapters.persistence.profile.bienes_inversion

FINANCIAL secure-object repository that stores the profile-scoped register singleton.

application.calculations

Calculation-source and advisory surfaces that can project the register once definitive prorrata inputs exist.

domain.iva

Legal IVA prorrata substrate that supplies the separate definitive percentage input; usage ratios are not a substitute.

class BienesInversionRegisterService(*, repository=None)[source]

Bases: object

Declare and list tracked bienes de inversión on the active profile.

Parameters:

repository (BienesInversionIvaRegisterRepository | None)

declare(record)[source]

Atomically add record to the register, refusing duplicate identifiers.

Parameters:

record (BienInversionIvaRecord) – The capital-good record to persist.

Return type:

BienesInversionIvaRegister

Returns:

The updated BienesInversionIvaRegister.

list_all()[source]

Return the full active-profile register.

Return type:

BienesInversionIvaRegister

Returns:

A BienesInversionIvaRegister; empty when nothing has been declared.