¿Qué es un esquema XSD?
Un XSD (XML Schema Definition) describe la estructura exacta de un documento XML: las etiquetas permitidas, el orden de las etiquetas hijas, el tipo de dato y la longitud de cada campo, los valores aceptados y qué es obligatorio. El SRI publica un XSD por cada comprobante y por cada versión, dentro de la ficha técnica de comprobantes electrónicos.
Cuando envías un comprobante, el servicio de recepción del SRI lo compara contra ese XSD. Basta una etiqueta fuera de orden o un decimal de más para que el comprobante vuelva sin autorizar, aunque los valores sean correctos.
¿Qué versiones del XSD usa UniqSuite-ERP?
| Código | Comprobante | Versión del XSD |
|---|---|---|
| 01 | Factura | 1.1.0 |
| 03 | Liquidación de compra de bienes y prestación de servicios | 1.1.0 |
| 04 | Nota de crédito | 1.1.0 |
| 07 | Comprobante de retención | 2.0.0 |
Los esquemas son los oficiales de la ficha técnica offline del SRI (versión 2.34) y viajan con el ERP: la validación se hace sin conexión, en tu propio equipo.
¿Cuáles son los errores de esquema más comunes?
| Error | Qué exige el XSD | Ejemplo |
|---|---|---|
| Etiquetas fuera de orden | Las etiquetas hijas van en el orden exacto del esquema. | En la factura, <moneda> va después de <totalConImpuestos> y de <importeTotal>; antes, el comprobante se rechaza. |
| Formato de fecha | Las fechas del comprobante van como dd/mm/aaaa. | 19/10/2026 es válido; 2026-10-19 no. |
| Decimales de más | Cada campo tiene su número máximo de decimales. | precioUnitario y cantidad admiten hasta 6; precioTotalSinImpuesto, los impuestos y los totales, solo 2. |
| Caracteres especiales sin escapar | &, < y > dentro de un texto deben ir como entidades XML. | «Pérez & Hijos» se escribe Pérez & Hijos dentro del XML. |
| Campos obligatorios vacíos o con longitud equivocada | Cada dato tiene su tipo y su largo. | Un RUC del emisor que no tiene 13 dígitos, o un comprobante sin dirección del establecimiento. |
Un comprobante que cumple el XSD todavía puede ser NO AUTORIZADO por otras razones (firma, secuencial repetido, datos del contribuyente). El esquema es el primer filtro, no el único.
¿Qué responde el SRI cuando algo falla?
| Código | Mensaje | Qué hacer |
|---|---|---|
| 35 | Archivo no cumple estructura XML | El XML no cumple el esquema: revisa el orden de las etiquetas, los formatos y los campos obligatorios. |
| 39 | Firma inválida | Problema con el certificado o con un XML que se modificó después de firmarlo. |
| 43 | Clave de acceso registrada | El SRI ya tiene ese comprobante: no se reenvía, se consulta su autorización. |
| 45 | Secuencial registrado | Ya existe otro comprobante con esa serie y ese número: hay que revisar la numeración. |
¿Cómo evita UniqSuite-ERP estos errores?
- Arma el XML con los datos del documento ya grabado: fechas en dd/mm/aaaa, importes con los decimales que pide cada campo y el IVA de la cabecera igual a la suma del IVA de las líneas.
- Escapa automáticamente los caracteres especiales de razones sociales, direcciones y descripciones.
- Valida el XML contra el XSD oficial antes de firmar. Si no lo cumple, no lo firma ni lo envía y muestra la línea y el motivo de cada error.
- Solo entonces firma en formato XAdES-BES con tu certificado .p12 y lo envía a la recepción del SRI.
- Si el SRI responde «clave de acceso registrada», consulta la autorización en lugar de reenviar el comprobante, para no emitirlo dos veces.
Cada comprobante queda con su estado (firmado, recibido, devuelto, autorizado o no autorizado) y los mensajes del SRI, para saber qué pasó con cualquier documento.
¿Cómo se hace en UniqSuite-ERP?
- Validación local contra el XSD oficial del SRI antes de firmar cada factura, liquidación de compra, nota de crédito o retención.
- Firma XAdES-BES con tu .p12, envío a recepción y consulta de autorización, con el estado de cada comprobante.
- Aviso cuando tu certificado de firma vence en menos de 30 días.