Qué hacen y cómo
Canada Goose (ropa técnica de lujo, más de 40 sociedades, un equipo financiero de más de 50 personas) pasó de AX 2012 a Dynamics 365 Finance. Primero activó funciones nativas (auxiliar de inmovilizado, reglas de reparto, diarios periódicos, flujos de aprobación de asientos), después un circuito de peticiones con Power Platform, informes sobre Microsoft Fabric y, por último, agentes de IA. Activó el agente de conciliación de cuentas que trae Dynamics 365 Finance para conciliar los auxiliares con el libro mayor: cruza de forma continua los saldos de proveedores, clientes y bancos con el mayor, de modo que las diferencias aparecen durante el mes y no el día del cierre. Aparte, un agente de consultas de compras hecho con Copilot Studio terminó las pruebas de aceptación y estaba previsto en producción para el otoño de 2026.
Resultado declarado
Según el caso publicado por Microsoft: el cierre mensual pasó de ocho a cinco días hábiles (un 37 % más rápido) y llevar unos 700 asientos al mes de la firma en papel a flujos de aprobación ahorra 3.500 minutos al mes. El caso dice que el agente de conciliación «funciona de forma continua en producción», pero no da ninguna cifra del agente ni dice qué paso del cierre se acortó; ERP Leaders señala que las cifras son de Canada Goose y de Microsoft, sin verificación externa y sin coste del proyecto.
Cifras declaradas. Una persona u organización identificada declara que lo ha usado. Los resultados son declarados por la fuente; no los hemos auditado.
Qué se ha probado de verdad
El 13/11/2026 leímos el caso de Canada Goose publicado por Microsoft, su versión en portugués en Microsoft Source LATAM, la nota de ERP Leaders, las páginas de Microsoft Learn sobre el agente (actualizadas el 10/11/2026), su guía de configuración, la página del área de trabajo, las novedades de la versión 10.0.46 y el plan de lanzamiento 2026 archivado, además de la explicación de un consultor (Dr Dynamics), un artículo de un proveedor de pruebas automatizadas (Sofy) y un hilo de Dynamics Community. La configuración, los datos y las respuestas del agente de Canada Goose no son públicos. Todo lo de «Cópialo y adáptalo» es plantilla de Agents Finance: recon_shadow_check.py pasó su autoprueba y, con las exportaciones ficticias que lo acompañan, devolvió 8 resultados y 7 avisos (2 altos, código de salida 1); las fórmulas del Excel se recalcularon en LibreOffice y dieron los mismos recuentos. No hemos ejecutado el agente en un entorno de Dynamics 365.
Cómo replicarlo
Necesitas Dynamics 365 Finance 10.0.46 o posterior, las funciones Immersive Home, Agent management y Account reconciliation agent, los dos paquetes de Copilot en las versiones que indica Microsoft, una identidad propia del agente en Dataverse y en Finance, y una decisión sobre el movimiento de datos entre regiones. Empieza con un módulo y una sociedad, pon la fecha de inicio después de tu última conciliación manual y un límite de excepciones, y mantén la conciliación anterior en paralelo durante un cierre. Cada semana exporta el auxiliar, el mayor y el registro de acciones, pasa recon_shadow_check.py para recalcular las excepciones y revisar la política (tolerancia para aceptar sin cambios, segundo revisor por encima de la importancia relativa, comentarios, grupos masivos) y firma cada mes. Amplía módulos solo cuando la comprobación en sombra y el área de trabajo coincidan.
En dos frases
Canada Goose es la primera empresa con nombre que hemos encontrado usando en producción el agente de conciliación de cuentas de Microsoft para Dynamics 365 Finance: cruza de forma continua proveedores, clientes y bancos con el libro mayor en más de 40 sociedades. El cierre bajó de ocho a cinco días hábiles, pero buena parte vino de activar antes funciones normales del ERP; aquí tienes lo que el agente puede y no puede hacer hoy, una tabla propia de sus acciones y un kit probado para pilotarlo sin fiarse a ciegas.
Quién lo hace y por qué importa
Canada Goose es un fabricante canadiense de ropa técnica de lujo, cotizado y con una facturación de miles de millones, que vende en tiendas propias, mayoristas y comercio electrónico en Norteamérica, EMEA y Asia-Pacífico. Según el caso que publicó Microsoft el 27 de octubre de 2026, su equipo financiero, de más de 50 personas, lleva la contabilidad global desde la sede canadiense y consolida más de 40 sociedades.
Antes del proyecto trabajaban con AX 2012, el antecesor de Dynamics 365 Finance. Los contables preparaban los asientos en Excel, los guardaban en Box, imprimían los paquetes de aprobación y recogían firmas en papel. El inmovilizado (máquinas de coser y de corte, por ejemplo) se llevaba en Excel y la amortización se contabilizaba en un solo apunte. Las peticiones a finanzas llegaban por correos sueltos. El cierre duraba ocho días hábiles.
El caso importa por tres motivos:
- Pone nombre a un agente que casi todos los equipos conocen solo por la documentación. En octubre publicamos una novedad breve sobre el agente, sin clientes con nombre. Microsoft Learn sigue llamándolo «production ready preview» (página actualizada el 10/11/2026), y el plan de lanzamiento de 2026, ya archivado, preveía la disponibilidad general en septiembre de 2026. Que una cotizada diga que lo tiene «de forma continua en producción» cambia la pregunta: ya no es qué es, sino cómo se pilota.
- El orden del trabajo es la lección. La secuencia de Canada Goose fue activar funciones del sistema, rediseñar procesos, formar a las personas y, solo después, añadir IA.
- Es un agente para el controller, no un chat. Vive dentro del área de conciliación del ERP, trabaja con las excepciones del propio ERP y deja un registro de actividad. El riesgo no tiene nada que ver con pegar un balance de sumas y saldos en una ventana de chat.
Qué cambió Canada Goose, por orden
El caso describe cuatro capas. Las enumeramos porque el agente solo tiene sentido encima de las tres primeras.
- Funciones nativas de Dynamics 365 Finance. El inmovilizado pasó a su propio auxiliar con amortización automática; se normalizaron los nombres de los diarios; las reglas de reparto por cuenta contable distribuyen apuntes según porcentajes y dimensiones financieras; los diarios periódicos sustituyeron montajes repetidos cada mes; y los asientos pasan por flujos de aprobación antes de contabilizarse. Gonzalo Barnes, responsable de transformación financiera, explica que revisaron la gestión de funciones, activaron capacidades que estaban apagadas y empezaron a usar lo que ya tenían.
- Peticiones y flujos. Un circuito de peticiones del «Finance Center of Excellence» con Microsoft Forms, aprobaciones de Power Automate en Teams y por correo, y una lista de SharePoint que muestra quién pidió qué, quién lo aprobó y quién lo resuelve. La dirección prioriza la cola cada mes.
- Datos. Fabric, alimentado desde Dynamics 365 Finance con Synapse Link, en capas bronce, plata y oro que se actualizan cada tres horas. Contabilidad corporativa y FP&A consultan todas las sociedades con SQL o Power BI; el equipo de precios de transferencia dice que su conciliación pasó «de horas a minutos».
- Agentes. El agente de conciliación que trae el ERP, en producción, para conciliar auxiliares con el mayor; un agente de consultas de compras hecho con Copilot Studio que responde a preguntas como «¿cómo consigo que paguen una factura?» con las políticas guardadas en SharePoint, ya probado por los usuarios y previsto para el otoño de 2026; Microsoft 365 Copilot Chat en toda la empresa y más de 180 licencias Premium de Microsoft 365 Copilot. La empresa también está en el programa Frontier de Microsoft, con acceso a Copilot Cowork.
Cómo funciona el agente de conciliación
El agente es una capa sobre el área de trabajo Account reconciliation, que sustituyó a los antiguos informes SSRS de conciliación. Según Microsoft Learn:
- El área de trabajo concilia en segundo plano y con una programación el libro mayor con los auxiliares de proveedores, clientes, impuestos y bancos. La explicación de un consultor (Dr Dynamics, junio de 2026) indica que por defecto el proceso se ejecuta cada seis horas y que el área de trabajo existe desde la versión 10.0.44.
- Las excepciones aparecen por sociedad y módulo. Con el agente activado, cada una lleva tres campos generados por IA: acción sugerida, análisis y justificación.
- La página del agente dice que procesa dos tipos de excepción: diferencia de importe en el asiento (voucher amount mismatch) y contabilidad pendiente de transferir al mayor. Las novedades de la 10.0.46 añaden propuestas para «en mayor y no en auxiliar» y «en auxiliar y no en mayor».
- La acción la envía una persona. Las acciones agrupadas (masivas) usan las propuestas del agente, muestran la etiqueta «AI recommended» y piden confirmación («This action can be undone»). Cualquier excepción resuelta se puede deshacer indicando un motivo, y el panel de actividad muestra «Fix suggested by agent» y después «Reconciled».
- Funciona con una identidad propia del agente, necesita unos agentes de Copilot Studio que Microsoft publica de forma automática (y que las directivas de prevención de pérdida de datos pueden bloquear) y puede exigir activar Move data across regions en el centro de administración de Power Platform. Microsoft avisa además de que puede cambiar el modelo de IA sin previo aviso.
Tabla propia: qué puedes hacer con cada excepción (comprobado el 13/11/2026)
| Tipo de excepción (área de trabajo) | Acciones de la persona | ¿Propone acción el agente? | Qué vigilar |
|---|---|---|---|
| En auxiliar y no en mayor | Crear asiento, emparejar excepciones, aceptar sin cambios, ver historial | Sí, desde la 10.0.46 (novedades) | A menudo es contabilidad pendiente de transferir al mayor: un desfase temporal, no un error. No metas un asiento manual por eso. |
| En mayor y no en auxiliar | Revertir el asiento del mayor, emparejar excepciones, aceptar sin cambios, crear asiento de ajuste | Sí, desde la 10.0.46 (novedades) | Suele ser un asiento manual contra una cuenta de control. Corrige la causa: bloquea los asientos manuales en esa cuenta. |
| Diferencia de importe en el asiento | Aceptar sin cambios, crear asiento de ajuste (la página del agente añade revertir y vincular transacciones) | Sí (página del agente) | Lo que aceptas sin cambios es una regularización. Ponle un tope en la política. |
Fuentes: páginas de Microsoft Learn del área de trabajo, del agente y de la 10.0.46. La tabla es una síntesis nuestra; Microsoft las presenta como documentación previa al lanzamiento y pueden cambiar.
Resultados que declaran las fuentes
- Cierre: de ocho a cinco días hábiles, «una reducción del 37 %» según el caso de Microsoft (3/8 es un 37,5 %).
- Trabajo manual: unos 700 asientos al mes costaban cinco minutos cada uno en imprimir y preparar; con los flujos ese tiempo es cero, lo que supone «3.500 minutos al mes». Las cuentas de ERP Leaders: unas 58 horas al mes, menos de 70 minutos por persona del equipo.
- El agente: sin cifra. El caso dice que «funciona de forma continua en producción» y que permite encontrar las diferencias antes del día del cierre.
- Matices: lo publica el proveedor, no da el coste del proyecto ni dice qué paso del cierre se acortó. ERP Leaders recuerda que los días de cierre y las horas ahorradas miden cosas distintas. Nuestra lectura: las dos cifras medidas se refieren al programa entero (funciones nativas, flujos, datos y agente) o a los flujos de aprobación, no al agente.
Un ejemplo concreto (ficticio)
Nuestros datos de ejemplo tienen dos sociedades, EU01 y US01, con apuntes de proveedores, clientes, bancos e impuestos de octubre. Al pasar el script:
- Recalcula 7 excepciones y 1 diferencia de redondeo: 3 en auxiliar y no en mayor, 2 en mayor y no en auxiliar, 2 diferencias de importe y 0,60 de redondeo en una factura de cliente.
- En el registro de acciones da 2 avisos altos. Un apunte bancario de -145,90 se «aceptó sin cambios» aunque el agente proponía vincular transacciones, y la política solo permite 5,00. Una corrección de 27.000 en la factura de proveedor APINV-1004 la creó y la revisó la misma persona, por encima de la importancia relativa de 10.000.
- Da 4 avisos medios: una acción sin comentario de motivo; una reversión que se deshizo; un grupo masivo cuyo total (27.860) supera el límite de 25.000; y una factura de proveedor de 27.300 que está en el auxiliar y no en el mayor, sin ninguna acción en el registro.
- Acuerdo con el agente por tipo: 2 de 2 en diferencias de importe y 1 de 2 en «en auxiliar y no en mayor».
Ese último aviso medio es el importante. Como dice Sofy, un proveedor de pruebas automatizadas, la excepción que nunca aparece es el peor resultado posible, porque nada en pantalla indica que falta. Una comprobación en sombra fuera del ERP es la forma de ver lo que el área de trabajo no te enseñó.
Cópialo y adáptalo
Todo esto es plantilla de Agents Finance basada en el caso de Canada Goose publicado por Microsoft y en la documentación de Microsoft Learn, con licencia MIT-0 y datos ficticios. Ni Microsoft ni Canada Goose han publicado estos ficheros.
Descarga la carpeta: /es/descargas/#case-canada-goose-dynamics-365-finance-reconciliation-agent-close-2026 (script, CSV de ejemplo, política, Excel en inglés y en español y prompts).
Requisitos: Python 3.9 o posterior (solo biblioteca estándar); exportaciones de los apuntes del auxiliar, de los apuntes del mayor en las cuentas de control y del registro de acciones, con las columnas que explica el README; y, si quieres, LibreOffice o Excel para el libro.
1. Ajustes del agente que conviene acordar antes de activarlo
Los nombres de funciones, paquetes y roles se dejan en inglés porque así aparecen en Dynamics 365 y en Power Platform. Los comentarios del bloque, traducidos: «revisa las directivas DLP», «una sociedad primero» y «primer día después del último periodo conciliado a mano».
# Agents Finance template - account reconciliation agent pilot (D365 Finance)
prerequisites:
finance_version: "10.0.46 or later"
features: ["Immersive Home", "Agent management", "(Production ready preview) Account reconciliation agent"]
packages:
copilot_for_finance_and_operations_apps: "1.0.3048.2 or later"
copilot_in_dynamics_365_finance: "1.0.3049.1 or later"
copilot_studio_agent_published: true # check DLP policies
move_data_across_regions: "reviewed by data protection before enabling"
identity:
dedicated_agent_user: true
dataverse_roles: ["Finance and Operations basic user", "Account reconciliation agent role", "Environment maker"]
finance_roles: ["Account reconciliation agent", "System user"]
pilot_scope:
legal_entities: ["EU01"] # one entity first
modules_in_priority_order: ["Accounts payable"]
start_date: "first day after the last manually reconciled period"
exception_limit: { type: monthly, value: 500 }
alerts: { limit_thresholds: [50, 75, 90], notify_if_run_skipped: true }
parallel_run:
keep_previous_reconciliation_for_closes: 1
2. La política que revisa el script
{
"rounding_tolerance": "1.00",
"accept_tolerance": "5.00",
"materiality": "10000.00",
"bulk_group_materiality": "25000.00"
}
Son valores de ejemplo: fíjalos con el controller y el auditor, por divisa si hace falta.
3. Ejecuta la comprobación en sombra
python3 recon_shadow_check.py --self-test
python3 recon_shadow_check.py \
--subledger subledger.example.csv --ledger ledger.example.csv \
--actions agent-actions.example.csv --policy policy.example.json --out-dir out
echo "exit code: $?" # 1 = at least one high flag
Salida esperada con los datos de ejemplo (extracto). Los mensajes del script están en inglés: «sin revisor independiente», «aceptado sin cambios por encima de la tolerancia», «sin comentario de motivo», «acción deshecha», «grupo masivo por encima del límite» y «excepción sin ninguna acción en el registro».
[HIGH] no_second_reviewer EU01 AP APINV-1004: create_journal_entry for 27000.00 without an independent reviewer (materiality 10000.00).
[HIGH] accept_over_tolerance EU01 BANK BNK-5003: Accepted without change with a difference of 145.90 (policy allows 5.00).
[MEDIUM] no_comment US01 AP APINV-7002: No reason comment: the audit trail will not say why.
[MEDIUM] undone US01 AR GJ-0950: Action was undone: check the reason and the final state.
[MEDIUM] bulk_group_over_materiality group G2: Bulk group of 2 exceptions totals 27860.00 (policy 25000.00): split it or get a second review.
[MEDIUM] unaddressed US01 AP APINV-7003: Shadow check finds in_subledger_not_in_ledger for -27300.00 but the action log has no row for it.
El núcleo del recálculo, para que se vea que no hay magia:
for k in sorted(set(sub) | set(gl)):
s, g = sub.get(k), gl.get(k)
if g is None:
issue, diff = "in_subledger_not_in_ledger", s
elif s is None:
issue, diff = "in_ledger_not_in_subledger", -g
else:
diff = s - g
if diff == 0:
continue
issue = "rounding" if abs(diff) <= tol else "voucher_amount_mismatch"
La clave es sociedad + área + asiento + cuenta contable. Si el auxiliar y el mayor usan números distintos para el mismo documento, añade una columna de correspondencia antes de ejecutarlo.
4. Fórmulas del Excel que puedes reutilizar
El libro tiene cinco hojas: checklist de alta (13 pasos, cada uno con su página de Microsoft Learn), registro del piloto, política, indicadores y firma mensual. Dos de las fórmulas de indicadores, tal como están en la versión en español:
Aceptadas sin cambios por encima de la tolerancia:
=SUMPRODUCT(('Registro del piloto'!I2:I500="Accept without change")*(ABS('Registro del piloto'!G2:G500)>'Política'!B3))
Asientos o reversiones desde la importancia relativa sin revisor independiente:
=SUMPRODUCT((('Registro del piloto'!I2:I500="Create journal entry")+('Registro del piloto'!I2:I500="Reverse"))*(ABS('Registro del piloto'!G2:G500)>='Política'!B4)*(('Registro del piloto'!K2:K500="")+('Registro del piloto'!K2:K500='Registro del piloto'!J2:J500)>0))
Recalculadas en LibreOffice con el registro de ejemplo, devuelven 1 y 1, lo mismo que el script.
5. Un prompt para la nota semanal del revisor
Úsalo en el asistente que ya tenga aprobado tu empresa y solo con las salidas del script:
Ayudas a un controller a revisar el piloto de un agente que concilia auxiliares con el libro mayor.
Adjuntos: summary.json, flags.csv y shadow-exceptions.csv de recon_shadow_check.py para {{SOCIEDAD}}, semana {{SEMANA}}.
Reglas:
- Usa solo las cifras de los ficheros. Si algo no está, escribe «no está en los datos».
- No propongas asientos. No digas que una excepción está resuelta si el registro no lo dice.
Escribe, en este orden:
1. Tres líneas: excepciones de la comprobación en sombra por tipo, avisos por gravedad y tasa de acuerdo con el agente por tipo.
2. Una tabla con cada aviso HIGH: asiento, área, importe, qué dice la política y quién debe actuar.
3. Una tabla con los avisos MEDIUM agrupados por código.
4. Dos preguntas que el controller debería hacer al equipo esta semana.
Paso a paso: un piloto de cuatro semanas
- Semana 0, administración. Marca el checklist: versión, funciones, paquetes, agente de Copilot Studio publicado, identidad del agente solo con los roles indicados y una decisión por escrito sobre el movimiento de datos entre regiones. En un hilo de Dynamics Community, una administradora no encontraba el rol «Account reconciliation agent role» en Power Platform: revisa los roles antes de la primera ejecución, no en pleno cierre.
- Semana 0, alcance. Una sociedad, solo proveedores, fecha de inicio posterior a la última conciliación manual y un límite mensual de excepciones con avisos. Mantén la conciliación anterior.
- Semanas 1 a 3. Cada semana exporta los tres ficheros, pasa el script y resuelve los avisos altos. Lee la justificación del agente cada vez que alguien no siga su propuesta: eso sirve para afinar la política, no para entrenar al agente.
- Semana 4, cierre. Rellena la hoja de firma: excepciones abiertas al cierre, total aceptado sin cambios y avisos altos aún abiertos. Amplía a clientes y bancos solo si la comprobación en sombra no encontró nada que se le escapara al área de trabajo.
Limitaciones y riesgos
- Etiqueta de vista previa. Las páginas son documentación previa al lanzamiento y pueden cambiar. Según Microsoft, el modelo del agente puede cambiar sin aviso: repite tu mes de prueba después de cada actualización.
- Alcance estrecho. Hoy el agente propone acciones para unos pocos tipos de excepción en proveedores, clientes, impuestos y bancos. Inventario, inmovilizado, proyectos e intercompañía están en la hoja de ruta, no en producción. En un grupo de más de 40 sociedades, buena parte del dolor del cierre está precisamente en el intercompañía.
- Residencia de datos. Algunas funciones generativas necesitan procesar datos en otra región. Para sociedades europeas es una decisión de protección de datos, no una casilla.
- Coste. Las páginas de Microsoft Learn que leímos no dan precio del agente. Microsoft indica que el rol de seguridad del agente de sistema está exento de las licencias de usuario de finance and operations, pero la parte de Copilot Studio puede consumir capacidad: pregunta a tu partner de Microsoft antes de ampliar el alcance.
- Caso publicado por el proveedor. Las cifras son de Canada Goose y de Microsoft; nadie independiente las ha comprobado.
Errores habituales
- Pensar que «aceptar sin cambios» no tiene consecuencias. Es una decisión de regularizar; ponle tope.
- Corregir excepciones en vez de causas. Si la misma cuenta contable genera una y otra vez «en mayor y no en auxiliar», bloquea en ella los asientos manuales.
- Enviar en bloque un grupo recomendado por la IA porque lo dice la etiqueta. Mira el importe total del grupo, no el número de excepciones.
- Activar todos los módulos y sociedades el primer día y perder la capacidad de distinguir los errores del agente del ruido de la migración.
- Abandonar la conciliación anterior antes de un cierre completo en paralelo.
Conclusiones
El resultado de Canada Goose lo declara el proveedor, y el agente es la última capa: las mejoras medidas se deben a las funciones nativas, a los flujos de aprobación y a una capa única de datos. El agente de conciliación encaja con un controller que quiere ver las excepciones durante el mes y un registro para el auditor, siempre que alguien compruebe, fuera del ERP, lo que no le enseñó. Empieza con poco, mide acuerdos y omisiones con una comprobación en sombra y amplía solo cuando ambos coincidan.
Boletín
La siguiente plantilla de esta serie será un checklist de conciliación intercompañía para grupos con varias sociedades en Dynamics 365 Finance y NetSuite. Suscríbete al boletín para recibirla cuando salga.
Fuentes
- Microsoft Customer Stories — Canada Goose transforms global finance and builds an agentic future with Dynamics 365 and Microsoft Copilot Studio (27/10/2026, en inglés) (se abre en otra pestaña) (principal)
- Microsoft Learn — Account Reconciliation Agent (production ready preview), actualizada el 10/11/2026 (se abre en otra pestaña)
- Microsoft Learn — Set up and configure the Account reconciliation agent (production ready preview) (se abre en otra pestaña)
- Microsoft Learn — Account reconciliation (área de trabajo, tipos de excepción y acciones masivas) (se abre en otra pestaña)
- Microsoft Learn — Novedades de Dynamics 365 Finance 10.0.46 (se abre en otra pestaña)
- Microsoft Learn — Enhancements to Account reconciliation agent (plan de lanzamiento 2026, oleada 1, archivado) (se abre en otra pestaña)
- ERP Leaders — Microsoft says Canada Goose cut its month-end close to five days from eight (se abre en otra pestaña)
- Microsoft Source LATAM — Canada Goose reduz em 37% o tempo de fechamento contábil (en portugués) (se abre en otra pestaña)
- Dr Dynamics (Roman Abylkhatov, consultor) — D365 Account Reconciliation Agent Explained (11/06/2026) (se abre en otra pestaña)
- Sofy (proveedor de automatización de pruebas) — Testing the D365 Account Reconciliation Agent (se abre en otra pestaña)
- Foro de Dynamics Community — Account reconciliation workspace (hilo sobre roles de seguridad) (se abre en otra pestaña)
Hemos redactado esta ficha con nuestras palabras a partir de las fuentes anteriores y comprobamos que los enlaces funcionaban el 13 de noviembre de 2026. ¿Algún dato es incorrecto? Avísanos.
Comparte esta entrada
Esta entrada forma parte de la guía: Agentes de IA para contabilidad