AEAT modelo 390 Prorate

l10n_es_aeat_mod390_vat_prorate
REPOSITORY
REPOSITORYOCA/l10n-spain
GIT
GIThttps://github.com/OCA/l10n-spain.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-spain/tree/18.0/l10n_es_aeat_mod390_vat_prorate
VERSION
VERSION 1.1.0
CATEGORY
CATEGORYLocalisation/Accounting
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Moduon
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Moduon
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Emilio Pascual, christian-ramos-tecnativa
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-spain
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:05
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-financial-reporting:
    - account_tax_balance
OCA/l10n-spain:
    - l10n_es_aeat_mod390
    - l10n_es_aeat_mod303
    - l10n_es_aeat
    - l10n_es_vat_prorate
OCA/server-ux:
    - date_range
odoo/odoo:
    - l10n_es
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_iban
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES unidecode
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Este módulo incorpora la casilla 522 al informe del modelo 390, 
la cual se utiliza en aquellos casos en que la empresa está sujeta 
al régimen de prorrata del IVA.

Cuando se obtenga la prorrata definitiva del año se debería de aplicar a todos 
los apuntes, pero estos no se pueden modificar ya que están contabilizados. 
Para estos casos, el modelo 390 incluye la casilla 522, destinada a reflejar 
la regularización de las deducciones provisionales derivadas de 
la aplicación del porcentaje definitivo de prorrata.

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_l10n_es_aeat_mod390_report_form_inherit_prorate l10n_es.aeat.mod390.report.form l10n.es.aeat.mod390.report field Inherits l10n_es_aeat_mod390.view_l10n_es_aeat_mod390_report_form
Models touched (1)

New fields (33)
  • casilla_522 Float
    default=0 help='Regularización por aplicación porcentaje definitivo de prorrata.' readonly=True string='[522] Prorate regularization'
  • fifth_dev_activity Char
    size=40 string='5 - Actividad desarrollada'
  • fifth_dev_activity_cnae_code Char
    size=3 string='5 - Código CNAE [114]'
  • fifth_dev_activity_operation_amount Float
    digits=(15, 2) string='5 - Importe operaciones [115]'
  • fifth_dev_activity_operation_amount_deductible Float
    digits=(15, 2) string='5 - Importe de operaciones con derecho a deducción [116]'
  • fifth_dev_activity_prorate_percent Float
    compute='_compute_dev_activity_fifth_prorate_percentage' readonly=True string='5 - % de prorrata [118]'
  • fifth_dev_activity_prorate_type Selection
    string='5 - Tipo de prorrata [117]' args: ACTIVITY_PRORATE_TYPES
  • first_dev_activity Char
    size=40 string='1 - Actividad desarrollada'
  • first_dev_activity_cnae_code Char
    size=3 string='1 - Código CNAE [114]'
  • first_dev_activity_operation_amount Float
    digits=(15, 2) string='1 - Importe operaciones [115]'
  • first_dev_activity_operation_amount_deductible Float
    digits=(15, 2) string='1 - Importe de operaciones con derecho a deducción [116]'
  • first_dev_activity_prorate_percent Float
    compute='_compute_dev_activity_first_prorate_percentage' readonly=True string='1 - % de prorrata [118]'
  • first_dev_activity_prorate_type Selection
    string='1 - Tipo de prorrata [117]' args: ACTIVITY_PRORATE_TYPES
  • fourth_dev_activity Char
    size=40 string='4 - Actividad desarrollada'
  • fourth_dev_activity_cnae_code Char
    size=3 string='4 - Código CNAE [114]'
  • fourth_dev_activity_operation_amount Float
    digits=(15, 2) string='4 - Importe operaciones [115]'
  • fourth_dev_activity_operation_amount_deductible Float
    digits=(15, 2) string='4 - Importe de operaciones con derecho a deducción [116]'
  • fourth_dev_activity_prorate_percent Float
    compute='_compute_dev_activity_fourth_prorate_percentage' readonly=True string='4 - % de prorrata [118]'
  • fourth_dev_activity_prorate_type Selection
    string='4 - Tipo de prorrata [117]' args: ACTIVITY_PRORATE_TYPES
  • second_dev_activity Char
    size=40 string='2 - Actividad desarrollada'
  • second_dev_activity_cnae_code Char
    size=3 string='2 - Código CNAE [114]'
  • second_dev_activity_operation_amount Float
    digits=(15, 2) string='2 - Importe operaciones [115]'
  • second_dev_activity_operation_amount_deductible Float
    digits=(15, 2) string='2 - Importe de operaciones con derecho a deducción [116]'
  • second_dev_activity_prorate_percent Float
    compute='_compute_dev_activity_second_prorate_percentage' readonly=True string='2 - % de prorrata [118]'
  • second_dev_activity_prorate_type Selection
    string='2 - Tipo de prorrata [117]' args: ACTIVITY_PRORATE_TYPES
  • third_dev_activity Char
    size=40 string='3 - Actividad desarrollada'
  • third_dev_activity_cnae_code Char
    size=3 string='3 - Código CNAE [114]'
  • third_dev_activity_operation_amount Float
    digits=(15, 2) string='3 - Importe operaciones [115]'
  • third_dev_activity_operation_amount_deductible Float
    digits=(15, 2) string='3 - Importe de operaciones con derecho a deducción [116]'
  • third_dev_activity_prorate_percent Float
    compute='_compute_dev_activity_third_prorate_percentage' readonly=True string='3 - % de prorrata [118]'
  • third_dev_activity_prorate_type Selection
    string='3 - Tipo de prorrata [117]' args: ACTIVITY_PRORATE_TYPES
  • vat_prorate_percent Float
    default=100 readonly=True string='Definitive VAT prorate percentage'
  • with_vat_prorate Boolean
    related='company_id.with_vat_prorate'
Public methods (2)
  • calculate(self)
    Calculate the field 522 according the definitive one and adjust results.
  • check_vat_prorate_percent(self)
    @api.constrains('vat_prorate_percent')
REPOSITORY
REPOSITORYOCA/l10n-spain
GIT
GIThttps://github.com/OCA/l10n-spain.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/l10n-spain/tree/12.0/l10n_es_aeat_mod390_vat_prorate
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYInvoices & Payments
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA)
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA)
COMMITTERS
COMMITTERSPedro M. Baeza, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/l10n-spain
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:13
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/account-financial-reporting:
    - account_tax_balance
OCA/l10n-spain:
    - l10n_es_aeat_mod390
    - l10n_es_aeat_mod303_extra_data
    - l10n_es_irnr
    - l10n_es_aeat_mod303
    - l10n_es_aeat
    - l10n_es_extra_data
OCA/server-ux:
    - date_range
odoo/odoo:
    - l10n_es
    - account
    - base_setup
    - base
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - http_routing
    - digest
    - base_iban
    - base_vat
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES OpenSSL
requests
unidecode
zeep
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
l10n_es_aeat_mod390_prorrata_form l10n.es.aeat.mod390.prorrata.form l10n.es.aeat.mod390.report field Inherits l10n_es_aeat.view_l10n_es_aeat_report_form
Models touched (2)

New fields (3)
  • prorate_ids One2many → l10n.es.aeat.mod390.report.line.prorate
    comodel_name='l10n.es.aeat.mod390.report.line.prorate' inverse_name='report_id' limit=5 string='Line prorate'
  • vat_prorate_percent Float
    default=0 readonly=True states={'draft': [('readonly', False)]} string='VAT prorate percentage'
  • vat_prorate_type Selection
    default='none' readonly=True required=True states={'draft': [('readonly', False)]} string='VAT prorate type' args: [('none', 'None'), ('G', 'General prorrate')]
Public methods (7)
  • auto_define_prorrate_ids(self)
  • button_calculate(self)
  • button_confirm(self)
  • button_recalculate(self)
  • check_prorate_ids_amount_valid(self)
  • check_prorate_ids_total_deduction_valid(self)
  • check_vat_prorate_percent(self)
    @api.constrains('vat_prorate_percent')

New fields (7)
  • activity Char
    required=True string='Activity'
  • amount Float
    string='Total amount of operations'
  • amount_deductable Float
    string='Amount deductable'
  • cnae Char
    required=True size=3 string='CNAE'
  • percent Float
    default=100 string='Percent'
  • prorate_type Selection
    default='G' required=True string='Type' args: [('G', 'General')]
  • report_id Many2one → l10n.es.aeat.mod390.report
    comodel_name='l10n.es.aeat.mod390.report' readonly=True string='Report 390'
Public methods (1)
  • check_percent(self)
    @api.constrains('percent')