Saltar al contenido

XML de pólizas: El archivo contable que pocos saben preparar bien

qué es el XML de pólizas

El XML de pólizas es el archivo electrónico que contiene el detalle de todas las pólizas contables de un periodo, en el formato exigido por el SAT dentro del esquema de contabilidad electrónica. No se entrega de forma ordinaria todos los meses, pero debes tenerlo listo cuando la autoridad lo solicite en una revisión, devolución o compensación.

XML de pólizas

¿Qué es el XML de pólizas en contabilidad electrónica?

El XML de pólizas es un archivo electrónico estructurado que contiene el detalle de cada póliza contable registrada durante un periodo determinado. Su formato sigue las especificaciones técnicas del Anexo 24 de la Resolución Miscelánea Fiscal, publicadas por el Servicio de Administración Tributaria (SAT). A diferencia del catálogo de cuentas o la balanza de comprobación, este archivo no se envía de forma mensual ordinaria: solo se presenta cuando la autoridad lo requiere en situaciones concretas.

Dentro del esquema de contabilidad electrónica, el XML de pólizas representa la capa más detallada de información contable. Mientras que la balanza refleja saldos y movimientos globales por cuenta, el archivo de pólizas desglosa cada operación individual: quién intervino, qué cuentas se afectaron, cuánto se cargó y cuánto se abonó. Esta diferencia lo convierte en el archivo más completo y también en el más exigente de preparar.

XML de pólizas en contabilidad electrónica: lugar dentro del esquema SAT Diagrama que muestra el XML de pólizas como parte del esquema de contabilidad electrónica del SAT, junto al catálogo de cuentas y la balanza de comprobación. Contabilidad electrónica SAT: archivos XML Catálogo de cuentas Envío: primera vez y al haber cambios Lista de cuentas con código agrupador SAT No mensual obligatorio Balanza de comprobación Envío: mensual Saldos, cargos, abonos por cuenta Obligatorio cada mes XML de pólizas Envío: a requerimiento Detalle transacción por transacción + CFDI Solo en: fiscalización, compulsa, devolución o compensación Todos los archivos siguen el esquema del Anexo 24 de la RMF • SAT México

Diferencia entre póliza contable y XML de pólizas

Una póliza contable es el registro interno que elabora el contador para documentar una operación: una venta, un pago de nómina, una transferencia bancaria. El XML de pólizas, en cambio, es la representación electrónica de esos registros en un formato estructurado y validable por el SAT. Puedes tener pólizas perfectamente bien redactadas en tu sistema, pero si el XML no cumple con la estructura del Anexo 24, la autoridad no podrá procesarlo.

La diferencia no es solo técnica. El XML agrega elementos que la póliza tradicional en papel no incluía: el UUID del CFDI relacionado, el RFC del tercero, el tipo de moneda y el tipo de solicitud. Para entender mejor cómo encaja este archivo dentro del ecosistema contable, es útil revisar primero qué es XML en contabilidad y cómo funciona este formato en general.

Estructura interna del XML de pólizas

El archivo XML de pólizas se organiza en tres niveles jerárquicos: el nodo raíz del documento, el nodo de cada póliza individual y el nodo de cada transacción dentro de esa póliza. Cada nivel tiene sus propios atributos obligatorios que no pueden omitirse si se quiere que el archivo pase la validación del SAT. Conocer esta jerarquía es el punto de partida para generar un XML válido.

Estructura jerárquica del XML de pólizas del SAT: nodos y atributos Diagrama que muestra los tres nodos del XML de pólizas: raíz del documento, detalle de póliza y detalle de transacción, con sus atributos obligatorios. Estructura interna del XML de pólizas Nodo raíz <PLZ:Polizas> Versión • RFC del contribuyente • Mes • Año • Tipo de solicitud (AF / FC / DE / CO) Número de orden (AF/FC) • Número de trámite (DE/CO) Detalle de póliza <PLZ:Poliza> Tipo (Ingreso / Egreso / Diario) • Número de póliza Fecha de registro • Concepto de la operación Detalle de transacción <PLZ:Transaccion> Número de cuenta • Concepto • Debe (cargo) Haber (abono) • Moneda • UUID del CFDI RFC del tercero • Método de pago Esquema definido en el Anexo 24 de la Resolución Miscelánea Fiscal • Versión 1.3 vigente

Nodo raíz: atributos obligatorios del archivo

El nodo raíz PLZ:Polizas es el contenedor de todo el archivo. En él se declaran los atributos que identifican el documento como un todo: la versión del esquema (actualmente la 1.3), el RFC del contribuyente que lo genera, el mes y el año a los que corresponden los datos. Además, se indica el tipo de solicitud, que determina el contexto en el que se entrega el archivo y condiciona qué otros campos adicionales serán requeridos.

Nodo de detalle de póliza: campos requeridos

Dentro del nodo raíz se anidan tantos nodos PLZ:Poliza como pólizas existan en el periodo. Cada uno de ellos exige cuatro atributos sin excepción: el tipo de póliza (ingreso, egreso o diario), el número que la identifica dentro del mes, la fecha de su registro y una descripción del concepto de la operación. Un número de póliza no puede repetirse dentro del mismo mes bajo la misma clave o tipo; cada registro debe ser único y trazable.

Nodo de transacción: datos de cargo y abono

El nivel más profundo del archivo es el nodo de transacción PLZ:Transaccion. Aquí se registra el movimiento real: el número de cuenta afectada, el concepto de la transacción, el monto del cargo (debe) y el del abono (haber), y el tipo de moneda. Si la transacción está respaldada por un CFDI, también se incluye el UUID de ese comprobante y el RFC del tercero involucrado. La suma de todos los cargos debe igualar la suma de todos los abonos dentro de cada póliza; si no cuadra, el archivo es inválido.

Tipos de pólizas que contiene el XML

El SAT clasifica las pólizas en tres tipos principales según el flujo de la operación que registran. Esta clasificación no es arbitraria: determina qué nodos opcionales adicionales se pueden incluir en el detalle de cada póliza, como información de comprobantes de compra, cheques o transferencias bancarias. Conocer la diferencia entre cada tipo es necesario para asignarlas correctamente al generar el XML.

Tipo de pólizaClave SATQué registraEjemplos comunes
Ingreso1Entradas de dinero o derechos a cobrarVentas a clientes, cobros de facturas
Egreso2Salidas de dinero u obligaciones de pagoCompras a proveedores, pago de servicios
Diario3Operaciones sin flujo de efectivo directoNómina, provisiones, depreciaciones

Dentro de las pólizas de ingreso y egreso, el nodo de transacción puede incluir subnodos opcionales que detallan el medio de pago utilizado: cheque, transferencia electrónica o comprobante de compra nacional o extranjera. Estos subnodos son opcionales en el esquema, pero pueden volverse exigibles si la autoridad detecta inconsistencias entre los movimientos bancarios declarados y la información del CFDI vinculado.

¿Cuándo se entrega el XML de pólizas al SAT?

Uno de los malentendidos más comunes sobre este archivo es creer que debe enviarse todos los meses junto con la balanza de comprobación. No es así. El XML de pólizas solo se presenta cuando el SAT lo solicita de forma explícita, en uno de cuatro supuestos claramente definidos en la normativa. Fuera de esos supuestos, el contribuyente no está obligado a enviarlo, aunque sí debe tenerlo listo para generarlo en cualquier momento.

AF — Acto de fiscalización

El SAT inicia una revisión directa al contribuyente. Se requiere el número de orden asignado al acto.

FC — Fiscalización compulsa

El SAT revisa a un tercero relacionado con el contribuyente (proveedor o cliente). También requiere número de orden.

DE — Devolución

El contribuyente solicita la devolución de un saldo a favor. Se indica el número de trámite asignado.

CO — Compensación

El contribuyente aplica un saldo a favor para extinguir una deuda fiscal. Se indica el número de trámite correspondiente.

Tipos de solicitud: AF, FC, DE y CO

Cada tipo de solicitud condiciona qué campos adicionales son obligatorios en el nodo raíz del archivo. Para los tipos AF y FC, el campo «número de orden» se vuelve requerido porque identifica el expediente de revisión abierto por la autoridad. Para los tipos DE y CO, el campo «número de trámite» es el que toma ese rol, ya que vincula el archivo con el procedimiento administrativo específico de devolución o compensación. Enviar el XML sin el identificador correcto puede provocar el rechazo del archivo en el Buzón Tributario.

Es importante que el contribuyente conserve estos números en cuanto los reciba del SAT, porque sin ellos no es posible generar un XML válido para esa solicitud. El sistema valida que el tipo de solicitud declarado en el nodo raíz coincida con el identificador incluido: una incongruencia entre ambos campos también genera un error de validación.

¿Cómo se genera el XML de pólizas?

La generación del XML de pólizas puede realizarse de tres formas: a través de un sistema contable comercial que lo genere automáticamente desde los registros ya capturados, mediante el convertidor de Excel a XML que el propio SAT pone a disposición de los contribuyentes, o con herramientas en línea que permiten ingresar los datos manualmente. La vía más confiable es siempre la del sistema contable, porque toma la información directamente de los registros ya validados y reduce el margen de error humano.

Independientemente de la herramienta, el proceso implica seleccionar el periodo, indicar el tipo de solicitud, capturar o confirmar el número de orden o trámite según corresponda, y verificar que todas las pólizas cuadren antes de generar el archivo. Una vez generado, el XML debe comprimirse en formato .ZIP antes de enviarlo al SAT a través del Buzón Tributario. El archivo en formato .XML sin comprimir no es el que se carga en el sistema de la autoridad.

Nomenclatura y formato del archivo para envío

El SAT establece una nomenclatura precisa para el nombre del archivo comprimido. La estructura es: RFC del contribuyente + año del ejercicio + mes del periodo + clave del tipo de archivo + extensión. Para el XML de pólizas, la clave es PL. Por ejemplo, una empresa con RFC XAXX010101000 que entrega pólizas del mes 08 del año 2025 generaría un archivo llamado XAXX01010100020250 8PL.ZIP. No modificar este nombre es obligatorio: el sistema del SAT lo usa para identificar automáticamente el tipo de contenido.

Tipo de archivo Clave Ejemplo de nombre
Catálogo de cuentas CT RFC202508CT.ZIP
Balanza normal BN RFC202508BN.ZIP
Balanza complementaria BC RFC202508BC.ZIP
Pólizas del periodo PL RFC202508PL.ZIP
Auxiliar de cuentas XC RFC202508XC.ZIP
Auxiliar de folios XF RFC202508XF.ZIP

Errores frecuentes al generar el XML de pólizas

Generar un XML de pólizas con errores puede derivar en un rechazo del archivo por parte del SAT, lo que retrasa la resolución de una devolución o complica una revisión fiscal. La mayoría de los problemas no surgen por desconocimiento del esquema, sino por descuidos en la captura de datos que parecen menores, pero invalidan el archivo completo. Estos son los más comunes:

  • Póliza descuadrada (debe ≠ haber): Si los cargos y abonos de una póliza no suman lo mismo, el archivo no supera la validación técnica del SAT. Verifica el cuadre antes de generar el XML.
  • UUID incorrecto o ausente: Vincular una transacción al folio fiscal equivocado, o no incluirlo cuando existe un CFDI relacionado, genera inconsistencias que la autoridad puede detectar al cruzar datos.
  • RFC de tercero genérico sin justificación: Usar el RFC público (XAXX010101000) en operaciones con contribuyentes identificados es un error que la autoridad considera como falta de trazabilidad.
  • Tipo de solicitud incorrecto: Indicar AF cuando la solicitud es DE, o no incluir el número de orden cuando el tipo lo exige, provoca el rechazo inmediato del archivo en el Buzón Tributario.
  • Número de póliza repetido en el mismo mes: El SAT exige que cada número sea único dentro del mes para el mismo tipo de póliza. Los sistemas contables mal configurados pueden generar duplicados si no se hace un cierre correcto del periodo.
  • Descripción vacía o abreviada en exceso: Los campos de concepto deben contener descripciones claras. Abreviaturas como «COMP» o «VARIOS» no permiten identificar la operación y pueden ser cuestionadas en una revisión.

Un punto que conviene reforzar es la relación entre el XML de pólizas y la balanza de comprobación XML. Ambos archivos deben ser consistentes entre sí: si la balanza refleja movimientos en una cuenta determinada, las pólizas deben justificar esos movimientos transacción por transacción. Cualquier diferencia entre ambos es una señal de alerta para la autoridad.

Errores más comunes en el XML de pólizas del SAT y cómo evitarlos Ilustración que resume los seis errores más frecuentes al generar el XML de pólizas y la acción correctiva para cada uno. Errores críticos en el XML de pólizas Póliza descuadrada Debe ≠ Haber ✔ Verifica cuadre antes de generar el archivo UUID incorrecto Folio fiscal equivocado ✔ Vincula cada transacción a su CFDI RFC genérico Sin justificación válida ✔ Usa RFC real del tercero siempre Solicitud incorrecta Tipo AF sin número de orden ✔ Confirma el tipo antes de generar Número repetido Mismo número de póliza en el mes ✔ Cierra el periodo antes de exportar Concepto vacío Descripción genérica o sin información ✔ Describe cada operación con detalle

Otro aspecto que suele pasarse por alto es la relación entre el XML de pólizas y la balanza en ceros. Si una empresa no tuvo operaciones durante un periodo, sus pólizas deben reflejar esa situación. Generar un XML de pólizas con transacciones que no corresponden al periodo declarado es un error que la autoridad puede detectar con facilidad al comparar ambos archivos.

Preguntas frecuentes

¿Qué información contiene el XML de pólizas del SAT?

El XML de pólizas contiene el detalle completo de cada póliza contable registrada en un periodo: el tipo de póliza (ingreso, egreso o diario), el número, la fecha, el concepto de la operación y el desglose de cada transacción. Por cada transacción se incluyen la cuenta contable afectada, el monto del cargo y el abono, el tipo de moneda, el UUID del CFDI relacionado cuando existe y el RFC del tercero involucrado. Es, en esencia, el registro contable más granular que el SAT puede solicitar de tu empresa.

¿El XML de pólizas se envía mensualmente al SAT?

No. El XML de pólizas no es parte del envío mensual ordinario de contabilidad electrónica. Cada mes solo se envía la balanza de comprobación y, cuando hay cambios, el catálogo de cuentas. Las pólizas únicamente se entregan cuando el SAT las solicita expresamente: en un acto de fiscalización, una compulsa a terceros, una solicitud de devolución de impuestos o un trámite de compensación. Aunque no se envíen mensualmente, el contribuyente está obligado a tenerlas disponibles y bien estructuradas en todo momento.

¿Qué es el tipo de solicitud en el XML de pólizas?

El tipo de solicitud es un atributo obligatorio del nodo raíz del XML de pólizas que identifica el motivo por el que se entrega el archivo. El SAT reconoce cuatro valores: AF (Acto de Fiscalización), FC (Fiscalización Compulsa), DE (Devolución) y CO (Compensación). Este campo no solo es declarativo, sino que condiciona qué otros atributos se vuelven requeridos: AF y FC exigen un número de orden, mientras que DE y CO requieren un número de trámite. Sin el campo correcto, el Buzón Tributario rechazará el archivo.

¿Qué pasa si el XML de pólizas no cuadra (debe ≠ haber)?

Si la suma de los cargos no es igual a la suma de los abonos dentro de una póliza, el archivo falla la validación técnica del esquema XSD publicado por el SAT. Esto significa que el sistema lo rechazará sin posibilidad de procesarlo, independientemente de si el resto del XML está bien construido. El principio de partida doble es una regla contable y, al mismo tiempo, una regla técnica del archivo: ambos lados deben cuadrar al centavo antes de generar el XML.

¿Qué es el UUID en el XML de pólizas?

El UUID (Universally Unique Identifier) es el folio fiscal único que identifica a cada CFDI emitido o recibido. En el contexto del XML de pólizas, este código se incluye en el nodo de transacción para vincular cada movimiento contable con el comprobante fiscal que lo respalda. Esta vinculación permite al SAT cruzar automáticamente la información contable con los CFDI registrados en sus sistemas, lo que convierte al UUID en uno de los campos más relevantes para la trazabilidad fiscal de cada operación.

¿Cómo se llama el archivo XML de pólizas según el SAT?

El SAT establece una nomenclatura obligatoria para el nombre del archivo. Se forma con el RFC del contribuyente, seguido del año a cuatro dígitos, el mes a dos dígitos y la clave del tipo de archivo. Para las pólizas, esa clave es PL. El archivo debe comprimirse en formato .ZIP antes de enviarse al Buzón Tributario: no se carga el .XML directamente, sino el .ZIP que lo contiene. Modificar el nombre del archivo puede provocar que el sistema del SAT no reconozca el tipo de contenido.

¿Cuál es la versión vigente del XML de pólizas?

La versión vigente del esquema del XML de pólizas es la 1.3, definida en el Anexo Técnico 2017 y alineada con las actualizaciones de la Resolución Miscelánea Fiscal. Esta versión es la que deben usar todos los contribuyentes obligados a llevar contabilidad electrónica. Algunas herramientas antiguas o desactualizadas pueden generar archivos en la versión 1.1 o 1.0, que ya no son válidas ante el SAT. Antes de enviar cualquier archivo, conviene verificar que el atributo «Versión» del nodo raíz indique 1.3.

Conclusión

El XML de pólizas es uno de los archivos más detallados dentro del esquema de contabilidad electrónica: concentra, transacción por transacción, todos los movimientos contables de un periodo y los vincula con los comprobantes fiscales correspondientes. Aunque no se envía mes a mes, su correcta preparación es tan importante como la de cualquier obligación periódica, porque cuando el SAT lo solicita, no hay margen para improvizar.

Los puntos que más conviene tener presentes son la jerarquía de nodos del archivo, los tipos de solicitud y sus identificadores asociados, y el requisito de que todas las pólizas cuadren antes de generar el XML. Si tu sistema contable registra las operaciones con rigor desde el principio, el momento de exportar el archivo no debería representar ningún problema.

Si te interesa seguir profundizando en el ecosistema de la contabilidad electrónica, en este sitio web encontrarás contenido sobre cada uno de los archivos que lo integran, desde el catálogo de cuentas hasta los auxiliares de folios, con el mismo nivel de detalle que acabas de leer aquí.

También te puede interesar: