[IMP] xunnel,theme_xunnel: align legal page with 2026 Terms and Conditions (11.0)
oct 14, 2026
Backport de !247 a 11.0, que es la versión que corre en xunnel.com (grupo DeployV xunnel110, 729). La rama 19.0 solo despliega a migration.xunnel.deployv.com y en esa rama el manifest pone la página en oca_data_manual, así que ni siquiera se carga.
El texto es el mismo de !247. El conflicto en xunnel/i18n/es_MX.po se resolvió con el mismo criterio: se quitan solo las traducciones del texto viejo de la política.
Después del pase a producción
La página que sirve xunnel.com no es la vista del módulo: es otra página creada desde el website builder el 2024-07-31, con la misma URL y ligada al sitio:
- website.page 13, websiteid = 1, viewid = 1553 (website.politica-de-privacidad-y-seguridad)
Al tener sitio web, Odoo la prefiere sobre la del módulo (website.page 14, vista xunnel.privacy_and_security). Para que se vea el texto nuevo hay que borrar la página 13 y la vista 1553, después del -u xunnel.
Verificado en updates.xunnel.com con RPC de solo lectura.
Pendientes de !247 que siguen aplicando: validación de DA, aviso a los clientes con 30 días, y el cron de suscripciones (15 días contra los 45 de la política).
🤖 Generated with Claude Code
[IMP] xunnel,theme_xunnel: align legal page with 2026 Terms and Conditions
oct 14, 2026
Actualiza la página legal de xunnel.com (/page/privacy_policy_and_security) con las sugerencias del hilo "Sugerencia de actualización de políticas en Xunnel.com (Alineación TyC 2026)" (Cristian, Dorantes Aranda).
Qué cambia
La página pasa a tener dos partes, en español (versión que prevalece):
I. Términos y Condiciones del Servicio - Aceptación por registro, pago o confirmación digital, con evidencia (usuario, fecha, IP) y declaración de facultades de quien acepta (dictamen DA). - Suscripción mensual y anual con renovación automática; cotización 30 días antes en el plan anual; el uso continuo cuenta como aceptación (punto 2 de Cristian). - Suspensión a los 45 días: mensual al vencer la segunda factura y anual a los 15 días de la factura de renovación (punto 3). - 30 días de aviso para cambios de precio y de política, en lugar de "antelación razonable" (punto 1). - Responsabilidad sobre los datos: Xunnel es un conector y la información vive en el Odoo del cliente (punto 4). - Cláusulas de los TyC 2026 revisados por DA: límite de responsabilidad (12 meses, arts. 2104/2107/2117 CCF), propiedad intelectual, confidencialidad de 5 años, caso fortuito, disposiciones generales, ley aplicable y jurisdicción.
II. Aviso de Privacidad y Seguridad - Responsable (VAUXOO, S.A. de C.V.), datos que realmente se tratan, roles de responsable y encargado (dictamen DA, cláusula 10.2), finalidades primarias y secundarias, transferencias, derechos ARCO y conservación de datos. - Quita lo que Xunnel no hace: app móvil con PIN, candado VeriSign, centro de datos biométrico, Plaid, y la venta de datos agregados.
Respuesta al punto 4 de Cristian (qué datos se borran)
Lo revisé en el código:
- Las credenciales de banca y del SAT las captura y guarda el proveedor de agregación (Paybook/Syncfy). Xunnel solo guarda identificadores, nombres y números de cuenta, y fechas de sincronización.
- Los movimientos y CFDI se entregan al Odoo del cliente.
- "Eliminar cuenta" en el portal solo la desactiva (active = False, xunnel_admin/controllers/main.py). Borrar la empresa elimina los registros locales, pero no llama a Paybook.
Por eso el texto ya no promete un borrado permanente desde el portal: el borrado definitivo es por solicitud ARCO.
Pendientes antes de hacer merge
- [ ] DA valida el texto final. En los TyC 2026, la jurisdicción quedó como "(ESTABLECER JURISDICCIÓN)". Aquí usé la del aviso de privacidad vigente de vauxoo.com: Primer Partido Judicial de Jalisco.
- [ ] Actualizar la fecha de "Última actualización" al día de publicación y avisar a los clientes con 30 días de anticipación, como pide la propia cláusula.
- [ ] Despliegue: la página en vivo es una copia editada desde el website builder (dice julio de 2024 e incluye "Costo del servicio", que no está en el repo). Actualizar el módulo no la reemplaza: hay que restablecer o borrar la vista específica del sitio después del update.
- [ ] Diferencia con el código:
xunnel/models/subscription.pycierra la suscripción 15 días después de la fecha de renovación cuando falla el cobro automático, y la política ahora dice 45 días. Hay que alinear el cron o la política. - [ ] Recomendación de DA (fuera de este MR): agregar una casilla de aceptación de TyC en el registro, que guarde la fecha y la IP.
🤖 Generated with Claude Code
19.0 - [IMP] .gitlab-ci.yml: auto-cancel superseded pipelines
ago 21, 2026
Pushing a new commit to a branch currently leaves the previous pipeline running to completion: the "Auto-cancel redundant pipelines" project setting (already enabled instance-wide) only cancels jobs that are still pending, never jobs already running on a runner, and Odoo test jobs run for a long time. With frequent commits the pipelines pile up in the queue, wasting runners and hitting external rate limits such as the GitHub one for the entrypoint install.
Mark every generated job as interruptible and declare the auto-cancel workflow explicitly, so a new commit on the same branch cancels the superseded pipeline even when its jobs are already running.
Propagates vauxoo/project-template!152 to this project.
Only the CI declaration changes, there is nothing to test here and the whole point is to stop wasting runners, so do not run a pipeline for this commit.
[ci skip]
CC @oscarolar @hugho-ad
15.0 - [FIX] account_xunnel,invoice_xunnel: allow loading tests without requests-mock T#102770
ago 21, 2026
[FIX] account_xunnel: allow loading tests without requests-mock
Repos depending on this one fail while evaluating its test modules when the
requests-mock package is not installed, even though those tests are not
selected to run.
Note that the other repos only load the modules from this repo to determine whether their tests should run, which is never the case because repos run only their own tests by default.
To solve this, fall back to a no-op decorator when the package is not installed, so the test modules can be loaded.
[FIX] invoice_xunnel: allow loading tests without requests-mock
Repos depending on this one fail while evaluating its test modules when the
requests-mock package is not installed, even though those tests are not
selected to run.
Note that the other repos only load the modules from this repo to determine whether their tests should run, which is never the case because repos run only their own tests by default.
To solve this, fall back to a no-op decorator when the package is not installed, so the test modules can be loaded.
[IMP] account_xunnel: remove superfluous manifest key
Following the same approach as Odoo [1], remove manifest keys whose values match their defaults.
[IMP] invoice_xunnel: remove superfluous manifest key
Following the same approach as Odoo [1], remove manifest keys whose values match their defaults.
[LINT] account_xunnel: fix pre-existing lints
The following new lints are fixed:
- use-dict-literal
- use-implicit-booleaness-not-comparison-to-zero
- external-request-timeout: used a 300s timeout, for consistency with newer versions
- translation-not-lazy: used %d and updated the .po accordingly
- superfluous-parens
- E741 (ambiguous variable name)
[LINT] invoice_xunnel: fix pre-existing lints
The following new lints are fixed:
- use-dict-literal
- translation-not-lazy: used %d and updated the .po accordingly
- B908 (assertRaises block must not hold more than one statement)
backport-of: https://git.vauxoo.com/vauxoo/xunnel-account/-/merge_requests/220
[REF] Branch initialitation: * T#99078
may 20, 2026
Actualización Xunnel: Más datos automáticos en tus Documentos
mar 03, 2026
Asunto: 🚀 Actualización Xunnel: Más datos automáticos en tus Documentos Hola equipo,
Sabemos que revisar facturas una por una puede ser tedioso. Por eso, hemos mejorado la inteligencia con la que Xunnel lee tus XMLs al importarlos a Odoo.
A partir de hoy, ya no necesitas abrir el PDF o el XML para conocer los detalles fiscales de tus proveedores. El sistema ahora extrae y te muestra automáticamente en tu tablero de Documentos la siguiente información clave:
💳 Método y Forma de Pago: Identifica de un vistazo si la factura es PUE o PPD, y si se pagó con Transferencia, Cheque, etc.
💰 Moneda y Tipo de Cambio: Visualiza si la factura es en USD o MXN y el tipo de cambio exacto pactado en el documento, sin hacer cálculos manuales.
iu Uso de CFDI: Verifica directamente si el proveedor clasificó correctamente el gasto (ej. G03 - Gastos en general o I04 - Equipo de cómputo).
¿En qué te beneficia? Podrás filtrar y agrupar tus documentos por estos nuevos criterios antes de validarlos. ¿Necesitas ver todas las facturas PUE de la semana? Ahora lo haces en un clic.
¡Menos talacha manual, más control administrativo!
[ADD] xunnel,xunnel_admin: Added 19.0 download link to the web portal t#96499
nov 12, 2025
[MIG] *: Version 19.0 t#96499
nov 12, 2025
Task Migració de Xunnel v.18 a v.19
Migration of modules:
- invoice_xunnel.
- acount_xunnel.
[MIG] account_xunnel, invoice_xunnel: Migration to v18.0 t#85842
feb 27, 2025
Related
Overview
Xunnel v.18. Functionally nothing changed (but technically it does), now both modules, Account and Invoice Xunnel can be used with Odoo 18.0; Some functional videos are listed below.
Video DEMO
https://youtu.be/h38wuwlAsYA
Technical changes
Account xunnel:
- Method _openiframe in accountonline_link increased the number of parameters
- In testaccountjournal.py account creation needs a company_ids field that receives a list
Invoice xunnel:
- Model documents.workflow.rule was deleted in v18 Commit reference: a32825e
- Model "documents.documentsfinancefolder" renamed to "documents.documentfinancefolder"
- Use of lib notyfy.js to display an alert was changed to the native service of "notification" in odoo
- Folder creation is done in "documents.document" model as shown in test testcontrollersmain.py and test_documents.py
- The view "documents.documentviewkanban" changed its structure so the xpath of kanban inherited view was modified to show emitterid, satstatus and invoicetotalamount
- Documentinspector was deleted in v18 so files "/invoicexunnel/static/src/js/documentsinspector.js" and "/invoicexunnel/static/src/xml/templates.xml" are not used anymore
[FIX] invoice_xunnel: Correct typo in 'sat_status' display and remove redundant '$' symbol t#85842
ene 17, 2025
The typo in "sat_status" has been corrected, and the extra "$" symbol, which was not applicable to the field, has been removed for clarity.
17.0 - [FIX] variables.sh: use right PostgreSQL version for Odoo v17.0 T#84059
ago 25, 2024
We should use PostgreSQL v15 for Odoo v17.0. However, since that Odoo version was not considered by the project template, PostgreSQL v14 was being set, which is the version intended for Odoo v16.0.
[FIX] account_xunnel: Corregimos un método debido a un cambio en Odoo T#84133
ago 21, 2024
Odoo introdujo el siguiente cambio https://github.com/odoo/enterprise/commit/a02476d1b98343e043a8647583457f391d54bd4e
que hace que el valor devuelto al hacer actualización de credenciales no sea compatible con lo esperado al descargar las mismas por lo que ahora hacemos coincidir el valor de retorno como lo hace Odoo.
Se ha corregido un problema en el que la última fecha de sincronización podía no ser correcta t81051
jun 01, 2024
Este correo es para informarles sobre una corrección reciente realizada nuestra app Xunnel V16 (account_xunnel).
Anteriormente, existía un problema en la forma en que se calculaba la fecha de la última sincronización al crear transacciones. Se obtenía de la base de datos, pero no siempre era correcto. Esto se debía a que los cambios aún no se habían grabado en la base de datos y los datos permanecían en la memoria.
Para solucionar esto, se ha modificado el comportamiento para obtener la fecha a partir de las transacciones reales que provienen de la base de datos de xunnel.com, las cuales ya cuentan con una fecha de última sincronización precisa.
Esta corrección garantiza que la fecha de la última sincronización siempre refleje la información más actualizada disponible.
Descarga de aquí la última versión con la corrección, instálala y actualiza tu sistema Odoo.
Agradecemos su comprensión.
Atentamente,
El equipo de Xunnel
[IMP] xunnel: fixed several JS console errors i25030
mar 14, 2024
[IMP] xunnel_admin: increase timeout t79497
mar 01, 2024
