Skip to content

[19.0][MIG] l10n_es_aeat_mod390: Migration to 19.0 - #4727

Merged
OCA-git-bot merged 75 commits into
OCA:19.0from
Studio73:19.0-mig-l10n_es_aeat_mod390
Apr 10, 2026
Merged

[19.0][MIG] l10n_es_aeat_mod390: Migration to 19.0#4727
OCA-git-bot merged 75 commits into
OCA:19.0from
Studio73:19.0-mig-l10n_es_aeat_mod390

Conversation

@pablo-cort-s73

Copy link
Copy Markdown
Contributor

Migración standard a v19.0

@acysos

acysos commented Jan 17, 2026

Copy link
Copy Markdown
Member

/ocabot migration l10n_es_aeat_mod390

@OCA-git-bot OCA-git-bot added this to the 19.0 milestone Jan 17, 2026
@OCA-git-bot OCA-git-bot mentioned this pull request Jan 17, 2026
40 tasks

@Reyes4711-S73 Reyes4711-S73 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ArantxaSudon ArantxaSudon left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revisión Funcional

Generado el modelo 390, hechos cambios en todos los periodos y correctamente recogidos en dicho modelo

Image

Gracias @pablo-cort-s73

MT-14050 @moduon

@pablo-cort-s73
pablo-cort-s73 force-pushed the 19.0-mig-l10n_es_aeat_mod390 branch 2 times, most recently from c26ced5 to 24a03bd Compare March 12, 2026 16:24
@pablo-cort-s73
pablo-cort-s73 force-pushed the 19.0-mig-l10n_es_aeat_mod390 branch from 24a03bd to b304b4b Compare March 26, 2026 09:44
@pablo-cort-s73

Copy link
Copy Markdown
Contributor Author

Rebase a 19.0 i eliminado el commit de dependicia a #4680

@OCA-git-bot

Copy link
Copy Markdown
Contributor

This PR has the approved label and has been created more than 5 days ago. It should therefore be ready to merge by a maintainer (or a PSC member if the concerned addon has no declared maintainer). 🤖

@Reyes4711-S73

Copy link
Copy Markdown
Contributor

@OCA/local-spain-maintainers Por favor, podéis revisar el PR?

Comment thread l10n_es_aeat_mod390/models/mod390.py Outdated
# Si salió a devolver, casilla 98 = casilla 71 del último periodo
# del año si fue a devolver
casilla_98 = abs(report_303_last_period.resultado_liquidacion)
casilla_662 = 0.0

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Por qué se pone esto a 0 aquí? Si es un parche extra, tendría que venir en un commit separado con su propia explicación.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Disculpa la tardanza al contestar @pedrobaeza , pero lo estuve revisando todo.

De hecho, tenía un error al actualizar la sintaxis de los dominios a Odoo 19, sin querer añadí el dominio de result_type = C en el search de applied_this_year al copiarlo desde la estructura de compensation_this_year.

Por otra parte, en referencia al poner a 0, he añadido un nuevo commit [FIX], ya que cuando el último periodo del 303 sale a devolver, la casilla [662] debe ser 0, ya que el contribuyente está reclamando la devolución de todo el saldo acumulado del año y no queda nada pendiente de compensar para ejercicios siguientes.

Ahora ya realiza todos los cálculos correctos para la casilla 662.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Creo que tendría más sentido incluirlo dentro del método que ya existe para calcular la casilla 662

@pedrobaeza pedrobaeza left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perdón, botón equivocado. Marco así hasta aclarar mi pregunta.

pedrobaeza and others added 12 commits March 31, 2026 16:19
================================
Presentación del Modelo AEAT 390
================================

Modelo 390 de la AEAT. Declaración-resumen anual del Impuesto sobre el Valor
Añadido.

Instalación
===========

Este módulo requiere del módulo *account_tax_balance* que se encuentra en
https://github.com/OCA/account-financial-reporting.

Uso
===

Para crear un modelo, por ejemplo de un trimestre del año:

1. Ir a *Contabilidad > Declaraciones AEAT > Modelo 390*.
2. Pulsar en el botón "Crear"
3. Seleccionar el ejercicio fiscal.
4. Seleccionar el tipo de declaración.
5. Rellenar el teléfono y teléfono móvil, necesarios para la exportacion BOE
6. Guardar y pulsar en el botón "Calcular"
7. Rellenar (si es necesario) aquellos campos que Odoo no calcula
   automáticamente.
8. Cuando los valores sean los correctos, pulsar en el botón "Confirmar"
9. Podemos exportar en formato BOE para presentarlo telemáticamente en el
   portal de la AEAT

Problemas conocidos / Hoja de ruta
==================================

* La declaración sólo se puede realizar para personas jurídicas.
* No se han implementado todas las casillas de opciones de la empresa, como
  por ejemplo si la empresa está en concurso de acreedores o si pertenece
  al registro de devolución mensual.
* No se calculan operaciones intragrupo.
* No se contempla el régimen de criterio de caja.
* No se contempla el régimen especial de bienes usados, objetos de arte,
  antigüedades y objetos de colección.
* No se contempla el régimen especial de agencias de viaje.
* No se contempla el régimen especial de la agricultura, ganadería y pesca.
* No se contempla la prorrata general de IVA.
* No se contempla el régimen simplificado.
* No se contempla el régimen de deducción diferenciado.
* No se contempla la inversión de sujeto pasivo nacional.
* No se ha incluido el cálculo para los bienes de inversión.
* No se ha incluido el cálculo para otros supuestos de inversión de sujeto
  pasivo.
* No se tienen en cuenta tributaciones territoriales.
* Obtener las casillas 95, 97 y 98 de las declaraciones del 303.
This way, we don't initially see all the subconfigs for each model and we can concentrate
on main export configurations. This is got through `active` field default behaviour.
Archived config are still directly searchable through the subconfig selector in the
configuration line.

All models export configs have been adapted to this new approach.
Currently translated at 100.0% (137 of 137 strings)

Translation: l10n-spain-12.0/l10n-spain-12.0-l10n_es_aeat_mod390
Translate-URL: https://translation.odoo-community.org/projects/l10n-spain-12-0/l10n-spain-12-0-l10n_es_aeat_mod390/es/
* Include chatter (mail.thread)
* Include activities (mail.activity.mixin)
* Track AEAT report state change
* Include new admin user in AEAT group by default
- Añadido Diseño de registro dr390e2019v100 para declaración de 2019
…n tests

This way, we can reuse it in other modules that don't inherit AEAT report like SII.

We also clean a non needed reading of the tax description field.

Tests were still using description method for populating data, so we switch to new
system and perform needed changes in dependent tests.

s
@EmilioPascual

Copy link
Copy Markdown
Contributor

¡Hola @EmilioPascual! Veo la sugerencia de cambiar la lista por una tupla. Por curiosidad y para tenerlo en cuenta para futuros PRs: ¿hay algún motivo técnico específico por el que prefieras tuplas aquí?

Lo comento porque, según la documentación, el operador 'in' del Domain acepta listas sin problema (y las suelo usar por inercia por si luego necesito añadir valores dinámicamente). No sé si es por un tema de rendimiento, inmutabilidad, pero dímelo y así lo tengo en cuenta para futuros cambios. Los commits pendientes los reviso esta mañana ¡Gracias por la revisión!

En python las tuplas son ligeramente más rápidas en cuanto a iteración y consumo de memoria

@pablo-cort-s73
pablo-cort-s73 force-pushed the 19.0-mig-l10n_es_aeat_mod390 branch from 0eb89af to e5532d6 Compare April 10, 2026 06:14
@pablo-cort-s73

Copy link
Copy Markdown
Contributor Author

Cambios hechos y agregados los commits de la v18.0! @EmilioPascual
cc @pedrobaeza

@EmilioPascual

Copy link
Copy Markdown
Contributor

Cambios hechos y agregados los commits de la v18.0! @EmilioPascual cc @pedrobaeza

Gracias @pablo-cort-s73.

Sigo pensando que para poner la casilla 662 cuando es a devolver en el último trimestre tednría que hacerse en el método de ya calcula esa casilla, no veo nada para que no se pueda hacer ahí.

Hay un nuevo commit b65466b de hace 2 días.

@pablo-cort-s73

Copy link
Copy Markdown
Contributor Author

@EmilioPascual el commit esta añadido, y tienes razón con lo de la casilla 662, ahora lo ajusto, gracias!

@HaraldPanten

Copy link
Copy Markdown
Contributor

@pablo-cort-s73 En cuanto al commit mencionado (b65466b), puedes mirar de limpiar lo de 17.0 en el mensaje? Se nos pasó.

@pedrobaeza FYI

@EmilioPascual

Copy link
Copy Markdown
Contributor

@EmilioPascual el commit esta añadido, y tienes razón con lo de la casilla 662, ahora lo ajusto, gracias!

Tienes razón con el commit, no lo vi 🙏

… refund

When the last 303 period is a refund (result types D, V or X), the
taxpayer is reclaiming the full accumulated VAT balance for the year.
Therefore, field [662] (compensation pending for future years) must be
set to 0, as there is nothing left to carry forward.
@pablo-cort-s73
pablo-cort-s73 force-pushed the 19.0-mig-l10n_es_aeat_mod390 branch from e5532d6 to 85fd4f8 Compare April 10, 2026 07:54
@pablo-cort-s73

pablo-cort-s73 commented Apr 10, 2026

Copy link
Copy Markdown
Contributor Author

Cambios hechos @EmilioPascual @HaraldPanten
Gracias!

@HaraldPanten HaraldPanten left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A la espera del OK de Emilio y Pedro, por mi parte adelante.

@EmilioPascual EmilioPascual left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

¡Fenomenal!. Gracias @pablo-cort-s73

@pedrobaeza pedrobaeza left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Gracias a todos.

Excelente ejemplo de colaboración inter-empresas.

/ocabot merge nobump

@OCA-git-bot

Copy link
Copy Markdown
Contributor

On my way to merge this fine PR!
Prepared branch 19.0-ocabot-merge-pr-4727-by-pedrobaeza-bump-nobump, awaiting test results.

@HaraldPanten

Copy link
Copy Markdown
Contributor

Gracias a todos.

Excelente ejemplo de colaboración inter-empresas.

/ocabot merge nobump

Para presentar el caso en los Spanish OCA Days es excelente. Buen ejemplo para la charla de iniciación 👏

@OCA-git-bot

Copy link
Copy Markdown
Contributor

This PR has the approved label and has been created more than 5 days ago. It should therefore be ready to merge by a maintainer (or a PSC member if the concerned addon has no declared maintainer). 🤖

@OCA-git-bot
OCA-git-bot merged commit b0e8d6e into OCA:19.0 Apr 10, 2026
7 checks passed
@OCA-git-bot

Copy link
Copy Markdown
Contributor

Congratulations, your PR was merged at fa0010b. Thanks a lot for contributing to OCA. ❤️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.