|
DOF: 10/01/2017 |
ANEXO 20 de la Resolución Miscelánea Fiscal para 2017, publicada el 23 de diciembre de 2016 ANEXO 20 de la Resolución Miscelánea Fiscal para 2017, publicada el 23 de diciembre de 2016. Al margen un sello con el Escudo Nacional, que dice: Estados Unidos Mexicanos.- Secretaría de Hacienda y Crédito Público.- Servicio de Administración Tributaria. Anexo 20 de la Resolución Miscelánea Fiscal vigente Contenido Medios electrónicos I. Del Comprobante fiscal digital por Internet: A. Estándar de comprobante fiscal digital por Internet. B. Generación de sellos digitales para comprobantes fiscales digitales por Internet. C. Estándar del servicio de cancelación. D. Especificación técnica del código de barras bidimensional a incorporar en la representación impresa. E. Secuencia de formación para generar la cadena original para comprobantes fiscales digitales por Internet. F. Validaciones adicionales a realizar por el proveedor. II. Del Comprobante fiscal digital a través de Internet que ampara retenciones e información de pagos. A. Estándar de comprobante fiscal digital a través de Internet que ampara retenciones e información de pagos. B. Generación de sellos digitales para comprobantes fiscales digitales a través de Internet que amparan retenciones e información de pagos. C. Estándar del servicio de cancelación de retenciones e información de pagos. D. Especificación técnica del código de barras bidimensional a incorporar en la representación impresa del comprobante fiscal digital a través de Internet que ampara retenciones e información de pagos. III. De los distintos medios de comprobación digital: A. Estándares y especificaciones técnicas que deben cumplir las aplicaciones informáticas. para la generación de claves de criptografía asimétrica a utilizar para Firma Electrónica Avanzada. B. Estándar y uso del complemento obligatorio: Timbre Fiscal Digital del SAT. a. Estándar del complemento obligatorio timbre fiscal digital del SAT. b. Secuencia de formación para generar la cadena original del complemento obligatorio timbre fiscal digital del SAT. c. Uso del complemento obligatorio timbre fiscal digital del SAT. C. Uso de la facilidad de nodos opcionales <Complemento> y <ComplementoConcepto>. D. Uso de la facilidad de ensobretado <Addenda>. IV. Generalidades. A. De los distintos tipos de datos y catálogos. V. Glosario. | I. Del Comprobante fiscal digital por Internet | A. Estándar de Comprobante fiscal digital por Internet. | El contribuyente que emita comprobantes fiscales digitales por Internet debe generarlos bajo el siguiente estándar XSD base y los XSD complementarios que requiera, validando su forma y sintaxis en un archivo con extensión XML, siendo éste el único formato para poder representar y almacenar comprobantes de manera electrónica o digital. Para poder ser validado, el comprobante fiscal digital por Internet debe estar referenciado al namespace del comprobante fiscal digital por Internet y referenciar la validación del mismo a la ruta publicada por el SAT en donde se encuentra el esquema XSD objeto de la presente sección (http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv33.xsd) de la siguiente manera: <cfdi:Comprobante xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv33.xsd" ................. </cfdi:Comprobante> Es obligatorio el uso de la declaración: xmlns:cfdi="http://www.sat.gob.mx/cfd/3" Para que un comprobante sea válido debe cumplir con: · Los lineamientos técnicos de forma y sintaxis para la generación de archivos XML especificados por el consorcio W3C, establecidos en www.w3.org. · Las reglas de validación adicionales establecidas en este Anexo. · Las reglas de validación adicionales establecidas en cada complemento que se integre en el archivo XML · Las reglas de validación particulares publicadas en la Resolución Miscelánea Fiscal vigente. Las reglas se aplican en el orden anterior. Si una regla tiene una redefinición en una regla subsecuente, debe cumplirse sólo la última regla. Adicionalmente, el contribuyente debe sujetarse a las disposiciones fiscales vigentes. El documento XML debe expresarse bajo el estándar de codificación UTF-8 y en particular se deben usar secuencias de escape cuando en los valores especificados dentro de los atributos del archivo exista alguno de los siguientes casos especiales. ¨ En el caso del & se debe usar la secuencia & ¨ En el caso del " se debe usar la secuencia " ¨ En el caso del < se debe usar la secuencia < ¨ En el caso del > se debe usar la secuencia > ¨ En el caso del â se debe usar la secuencia ' Ejemplo: Para representar nombre="Juan & José & "Niño"" se usa nombre="Juan & José & "Niño"" | | Descripción | | | Estándar de Comprobante Fiscal Digital por Internet. | | Atributos | | | Valor Prefijado | 3.3 | | Tipo Base | xs:string | | Espacio en Blanco | Colapsar | | Serie | | Descripción | Atributo opcional para precisar la serie para control interno del contribuyente. Este atributo acepta una cadena de caracteres. | | Uso | opcional | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 25 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@| _|,|\{|\}|`||á|é|í|ó|ú|Á|É|Í|Ó|Ú|| ){1,25} | | Folio | | Descripción | Atributo opcional para control interno del contribuyente que expresa el folio del comprobante, acepta una cadena de caracteres. | | Uso | opcional | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 40 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@| _|,|\{|\}|`||á|é|í|ó|ú|Á|É|Í|Ó|Ú| |){1,40} | | | Fecha | | Descripción | Atributo requerido para la expresión de la fecha y hora de expedición del Comprobante Fiscal Digital por Internet. Se expresa en la forma AAAA-MM-DDThh:mm:ss y debe corresponder con la hora local donde se expide el comprobante. | | Uso | Requerido | | Tipo Especial | tdCFDI:t_FechaH | | Sello | | Descripción | Atributo requerido para contener el sello digital del comprobante fiscal, al que hacen referencia las reglas de resolución miscelánea vigente. El sello debe ser expresado como una cadena de texto en formato Base 64. | | Uso | Requerido | | Tipo Base | xs:string | | Espacio en Blanco | Colapsar | FormaPago | | Descripción | Atributo condicional para expresar la clave de la forma de pago de los bienes o servicios amparados por el comprobante. Si no se conoce la forma de pago este atributo se debe omitir. | | Uso | Opcional | | Tipo Especial | catCFDI:c_FormaPago | | NoCertificado | | | Uso | Requerido | | Tipo Base | xs:string | | Longitud | 20 | | Espacio en Blanco | Colapsar | | Patrón | [0-9]{20} | | Certificado | | Descripción | Atributo requerido que sirve para incorporar el certificado de sello digital que ampara al comprobante, como texto en formato base 64. | | Uso | Requerido | | Tipo Base | xs:string | | Espacio en Blanco | Colapsar | | CondicionesDePago | | Descripción | Atributo condicional para expresar las condiciones comerciales aplicables para el pago del comprobante fiscal digital por Internet. Este atributo puede ser condicionado mediante atributos o complementos. | | Uso | Opcional | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 1000 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@|_|,|\{|\}|`| |á|é|í|ó|ú|Á|É|Í|Ó|Ú| |){1,1000} | | | SubTotal | | Descripción | Atributo requerido para representar la suma de los importes de los conceptos antes de descuentos e impuesto. No se permiten valores negativos. | | Uso | Requerido | | Tipo Especial | tdCFDI:t_Importe | | Descuento | | Descripción | Atributo condicional para representar el importe total de los descuentos aplicables antes de impuestos. No se permiten valores negativos. Se debe registrar cuando existan conceptos con descuento. | | Uso | Opcional | | Tipo Especial | tdCFDI:t_Importe | | Moneda | | Descripción | Atributo requerido para identificar la clave de la moneda utilizada para expresar los montos, cuando se usa moneda nacional se registra MXN. Conforme con la especificación ISO 4217. | | Uso | Requerido | | Tipo Especial | catCFDI:c_Moneda | | TipoCambio | | | Uso | opcional | | Tipo Base | xs:decimal | | Valor Mínimo Incluyente | 0.000001 | | Posiciones Decimales | 6 | | Espacio en Blanco | Colapsar | | | Total | | Descripción | Atributo requerido para representar la suma del subtotal, menos los descuentos aplicables, más las contribuciones recibidas (impuestos trasladados - federales o locales, derechos, productos, aprovechamientos, aportaciones de seguridad social, contribuciones de mejoras) menos los impuestos retenidos. Si el valor es superior al límite que establezca el SAT en la Resolución Miscelánea Fiscal vigente, el emisor debe obtener del PAC que vaya a timbrar el CFDI, de manera no automática, una clave de confirmación para ratificar que el valor es correcto e integrar dicha clave en el atributo Confirmacion. No se permiten valores negativos. | | Uso | Requerido | | Tipo Especial | tdCFDI:t_Importe | | TipoDeComprobante | | Descripción | Atributo requerido para expresar la clave del efecto del comprobante fiscal para el contribuyente emisor. | | Uso | requerido | | Tipo Especial | catCFDI:c_TipoDeComprobante | | MetodoPago | | Descripción | Atributo condicional para precisar la clave del método de pago que aplica para este comprobante fiscal digital por Internet, conforme al Artículo 29-A fracción VII incisos a y b del CFF. | | Uso | Opcional | | Tipo Especial | catCFDI:c_MetodoPago | | LugarExpedicion | | Descripción | Atributo requerido para incorporar el código postal del lugar de expedición del comprobante (domicilio de la matriz o de la sucursal). | | Uso | requerido | | Tipo Especial | catCFDI:c_CodigoPostal | | Confirmacion | | Descripción | Atributo condicional para registrar la clave de confirmación que entregue el PAC para expedir el comprobante con importes grandes, con un tipo de cambio fuera del rango establecido o con ambos casos. Es requerido cuando se registra un tipo de cambio o un total fuera del rango establecido. | | Uso | opcional | | Tipo Base | xs:string | | Longitud | 5 | | Espacio en Blanco | Colapsar | | | Elementos Hijo (min,max) | | | Secuencia (1, 1) | CfdiRelacionados (0, 1) | Emisor (1, 1) | Receptor (1, 1) | Conceptos (1, 1) | Impuestos (0, 1) | Complemento (0, 1) | Addenda (0, 1) | | | | Elemento: CfdiRelacionados | | Diagrama | | | | Descripción | | | Nodo opcional para precisar la información de los comprobantes relacionados. | | Atributos | | | TipoRelacion | | Descripción | Atributo requerido para indicar la clave de la relación que existe entre éste que se esta generando y el o los CFDI previos. | | Uso | requerido | | Tipo Especial | catCFDI:c_TipoRelacion | | | | Elementos Hijo (min,max) | | | Secuencia (1, 1) | CfdiRelacionado (1, Ilimitado) | | | | Elemento: CfdiRelacionado | | | Diagrama | | | | Descripción | | | Nodo requerido para precisar la información de los comprobantes relacionados. | | Atributos | | | UUID | | Descripción | Atributo opcional para registrar el folio fiscal (UUID) de un CFDI relacionado con el presente comprobante, por ejemplo: Si el CFDI relacionado es un comprobante de traslado que sirve para registrar el movimiento de la mercancía. Si este comprobante se usa como nota de crédito o nota de débito del comprobante relacionado. Si este comprobante es una devolución sobre el comprobante relacionado. Si éste sustituye a una factura cancelada. | | Uso | opcional | | Tipo Base | xs:string | | Longitud | 36 | | Espacio en Blanco | Colapsar | | Patrón | [a-f0-9A-F]{8}-[a-f0-9A-F]{4}-[a-f0-9A-F]{4}-[a-f0-9A-F]{4}-[a-f0-9A-F]{12} | | | | Elemento: Emisor | | Diagrama | | | Descripción | | | Nodo requerido para expresar la información del contribuyente emisor del comprobante. | | Atributos | | RegimenFiscal | | Descripción | Atributo requerido para incorporar la clave del régimen del contribuyente emisor al que aplicará el efecto fiscal de este comprobante. | | Uso | requerido | | Tipo Especial | catCFDI:c_RegimenFiscal | | | Elemento: Receptor | | Diagrama | | | Descripción | | | Nodo requerido para precisar la información del contribuyente receptor del comprobante. | | Atributos | | | Descripción | Atributo requerido para precisar la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente receptor del comprobante. | | Uso | requerido | | Tipo Especial | tdCFDI:t_RFC | | | Nombre | | Descripción | Atributo opcional para precisar el nombre, denominación o razón social del contribuyente receptor del comprobante. | | Uso | opcional | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 254 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@|_|,|\{|\}|`| |á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,254} | | ResidenciaFiscal | | Descripción | Atributo condicional para registrar la clave del país de residencia para efectos fiscales del receptor del comprobante, cuando se trate de un extranjero, y que es conforme con la especificación ISO 3166-1 alpha-3. Es requerido cuando se incluya el complemento de comercio exterior o se registre el atributo NumRegIdTrib. | | Uso | opcional | | Tipo Especial | catCFDI:c_Pais | | NumRegIdTrib | | Descripción | Atributo condicional para expresar el número de registro de identidad fiscal del receptor cuando sea residente en el extranjero. Es requerido cuando se incluya el complemento de comercio exterior. | | Uso | opcional | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 40 | | Espacio en Blanco | Colapsar | | UsoCFDI | | Descripción | Atributo requerido para expresar la clave del uso que dará a esta factura el receptor del CFDI. | | Uso | requerido | | Tipo Especial | catCFDI:c_UsoCFDI | | | | Diagrama | | | | Descripción | | | Nodo requerido para listar los conceptos cubiertos por el comprobante. | | Elementos Hijo (min,max) | | | | | Elemento: Concepto | | Diagrama | | | Descripción | | | Nodo requerido para registrar la información detallada de un bien o servicio amparado en el comprobante. | | Atributos | | del producto o del servicio, la clave de producto o servicio, SKU o equivalente, propia de la operación del emisor, amparado por el presente concepto. Opcionalmente se puede utilizar claves del estándar GTIN. | | Uso | Opcional | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 100 | | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@| _|,|\{|\}|`||á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,100} | | | Cantidad | | Descripción | Atributo requerido para precisar la cantidad de bienes o servicios del tipo particular definido por el presente concepto. | | Uso | requerido | | Tipo Base | xs:decimal | | Valor Mínimo Incluyente | 0.000001 | | Posiciones Decimales | 6 | | Espacio en Blanco | Colapsar | | ClaveUnidad | | Descripción | Atributo requerido para precisar la clave de unidad de medida estandarizada aplicable para la cantidad expresada en el concepto. La unidad debe corresponder con la descripción del concepto. | | Uso | requerido | | Tipo Especial | catCFDI:c_ClaveUnidad | | Unidad | | Descripción | Atributo opcional para precisar la unidad de medida propia de la operación del emisor, aplicable para la cantidad expresada en el concepto. La unidad debe corresponder con la descripción del concepto. | | Uso | opcional | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 20 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@|_|,|\{|\}|`| |á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,20} | | | Descripcion | | Descripción | Atributo requerido para precisar la descripción del bien o servicio cubierto por el presente concepto. | | Uso | Requerido | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 1000 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@|_|,|\{|\}|`||á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,1000} | | ValorUnitario | | | Uso | Requerido | | Tipo Especial | tdCFDI:t_Importe | | Importe | | Descripción | Atributo requerido para precisar el importe total de los bienes o servicios del presente concepto. Debe ser equivalente al resultado de multiplicar la cantidad por el valor unitario expresado en el concepto. No se permiten valores negativos. | | Uso | requerido | | Tipo Especial | tdCFDI:t_Importe | | Descuento | | Descripción | Atributo opcional para representar el importe de los descuentos aplicables al concepto. No se permiten valores negativos. | | Uso | opcional | | Tipo Especial | tdCFDI:t_Importe | | | | Elementos Hijo (min,max) | | | Secuencia (1, 1) | Impuestos (0, 1) | InformacionAduanera (0, Ilimitado) | CuentaPredial (0, 1) | ComplementoConcepto (0, 1) | Parte (0, Ilimitado) | | | | Elemento: Impuestos | | Diagrama | | | | Descripción | | | Nodo opcional para capturar los impuestos aplicables al presente concepto. Cuando un concepto no registra un impuesto, implica que no es objeto del mismo. | | Elementos Hijo (min,max) | | | Secuencia (1, 1) | Traslados (0, 1) | Retenciones (0, 1) | | | | Elemento: Traslados | | Diagrama | | | | | Descripción | | | Nodo opcional para asentar los impuestos trasladados aplicables al presente concepto. | | Elementos Hijo (min,max) | | | | Elemento: Traslado | | Diagrama | | | | Descripción | | | Nodo requerido para asentar la información detallada de un traslado de impuestos aplicable al presente concepto. | | | Atributos | | | Base | | Descripción | Atributo requerido para señalar la base para el cálculo del impuesto, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos. | | Uso | requerido | | Tipo Especial | tdCFDI:t_Importe | | Impuesto | | Descripción | Atributo requerido para señalar la clave del tipo de impuesto trasladado aplicable al concepto. | | Uso | requerido | | Tipo Especial | catCFDI:c_Impuesto | | TipoFactor | | Descripción | Atributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto. | | Uso | requerido | | Tipo Especial | catCFDI:c_TipoFactor | | TasaOCuota | | Descripción | Atributo condicional para señalar el valor de la tasa o cuota del impuesto que se traslada para el presente concepto. Es requerido cuando el atributo TipoFactor tenga un valor que corresponda a Tasa o Cuota. | | Uso | opcional | | Tipo Especial | catCFDI:c_TasaOCuota | | Importe | | Descripción | Atributo condicional para señalar el importe del impuesto trasladado que aplica al concepto. No se permiten valores negativos. Es requerido cuando TipoFactor sea Tasa o Cuota | | Uso | opcional | | Tipo Especial | tdCFDI:t_Importe | | | | Elemento: Retenciones | | Diagrama | | | | | Descripción | | | Nodo opcional para asentar los impuestos retenidos aplicables al presente concepto. | | Elementos Hijo (min,max) | | | | | Elemento: Retencion | | Diagrama | | | Descripción | | | Nodo requerido para asentar la información detallada de una retención de impuestos aplicable al presente concepto. | | Atributos | | | Descripción | Atributo requerido para señalar la base para el cálculo de la retención, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos. | | Uso | requerido | | Tipo Especial | tdCFDI:t_Importe | | Impuesto | | Descripción | Atributo requerido para señalar la clave del tipo de impuesto retenido aplicable al concepto. | | Uso | requerido | | Tipo Especial | catCFDI:c_Impuesto | | TipoFactor | | Descripción | Atributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto. | | Uso | requerido | | Tipo Especial | catCFDI:c_TipoFactor | | TasaOCuota | | Descripción | Atributo requerido para señalar la tasa o cuota del impuesto que se retiene para el presente concepto. | | Uso | requerido | | Tipo Especial | xs:decimal | | Posiciones decimales | 6 | | Valor mínimo inlcuyente | 0.000000 | | Espacio en blanco | Colapsar | | Importe | | Descripción | Atributo requerido para señalar el importe del impuesto retenido que aplica al concepto. No se permiten valores negativos. | | Uso | requerido | | Tipo Especial | tdCFDI:t_Importe | | | Elemento: InformacionAduanera | | Diagrama | | | Descripción | | | Nodo opcional para introducir la información aduanera aplicable cuando se trate de ventas de primera mano de mercancías importadas o se trate de operaciones de comercio exterior con bienes o servicios. | | Atributos | | | NumeroPedimento | | Descripción | Atributo requerido para expresar el número del pedimento que ampara la importación del bien que se expresa en el siguiente formato: últimos 2 dígitos del año de validación seguidos por dos espacios, 2 dígitos de la aduana de despacho seguidos por dos espacios, 4 dígitos del número de la patente seguidos por dos espacios, 1 dígito que corresponde al último dígito del año en curso, salvo que se trate de un pedimento consolidado iniciado en el año inmediato anterior o del pedimento original de una rectificación, seguido de 6 dígitos de la numeración progresiva por aduana. | | Uso | requerido | | Tipo Base | xs:string | | Longitud | 21 | | Patrón | [0-9]{2} [0-9]{2} [0-9]{4} [0-9]{7} | | | Elemento: CuentaPredial | | | Descripción | | | Nodo opcional para asentar el número de cuenta predial con el que fue registrado el inmueble, en el sistema catastral de la entidad federativa de que trate, o bien para incorporar los datos de identificación del certificado de participación inmobiliaria no amortizable. | | Atributos | | | Numero | | Descripción | Atributo requerido para precisar el número de la cuenta predial del inmueble cubierto por el presente concepto, o bien para incorporar los datos de identificación del certificado de participación inmobiliaria no amortizable, tratándose de arrendamiento. | | Uso | requerido | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 150 | | Espacio en Blanco | Colapsar | | Patrón | [0-9]{1,150} | | | Elemento: ComplementoConcepto | | Diagrama | | | | Descripción | | | Nodo opcional donde se incluyen los nodos complementarios de extensión al concepto definidos por el SAT, de acuerdo con las disposiciones particulares para un sector o actividad específica. | | Elementos Hijo (min,max) | | | Descripción | | | Nodo opcional para expresar las partes o componentes que integran la totalidad del concepto expresado en el comprobante fiscal digital por Internet. | | Atributos | | | Longitud Mínima | 1 | | Longitud Máxima | 100 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@| _|,|\{|\}|`||á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,100} | | Cantidad | | Descripción | Atributo requerido para precisar la cantidad de bienes o servicios del tipo particular definido por la presente parte. | | Uso | requerido | | Tipo Base | xs:decimal | | Valor Mínimo Incluyente | 0.000001 | | Posiciones Decimales | 6 | | Espacio en Blanco | Colapsar | | | Unidad | | Descripción | Atributo opcional para precisar la unidad de medida propia de la operación del emisor, aplicable para la cantidad expresada en la parte. La unidad debe corresponder con la descripción de la parte. | | Uso | opcional | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 20 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@|_|,|\{|\}|`| |á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,20} | | Descripcion | | Descripción | Atributo requerido para precisar la descripción del bien o servicio cubierto por la presente parte. | | Uso | requerido | | Tipo Base | xs:string | | Longitud Mínima | 1 | | Longitud Máxima | 1000 | | Espacio en Blanco | Colapsar | | Patrón | ([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@|_|,|\{|\}|`| |á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,1000} | | ValorUnitario | | Descripción | Atributo opcional para precisar el valor o precio unitario del bien o servicio cubierto por la presente parte. No se permiten valores negativos. | | Uso | opcional | | Tipo Especial | tdCFDI:t_Importe | | Importe | | | Descripción | Atributo opcional para precisar el importe total de los bienes o servicios de la presente parte. Debe ser equivalente al resultado de multiplicar la cantidad por el valor unitario expresado en la parte. No se permiten valores negativos. | | Uso | opcional | | Tipo Especial | tdCFDI:t_Importe | | | | Elementos Hijo (min,max) | | | Secuencia (1, 1) | InformacionAduanera (0, Ilimitado) | | | | Elemento: InformacionAduanera | | Diagrama | | | | | Descripción | | | Nodo opcional para introducir la información aduanera aplicable cuando se trate de ventas de primera mano de mercancías importadas o se trate de operaciones de comercio exterior con bienes o servicios. | | Atributos | | año en curso, salvo que se trate de un pedimento consolidado iniciado en el año inmediato anterior o del pedimento original de una rectificación, seguido de 6 dígitos de la numeración progresiva por aduana. | | Uso | requerido | | Tipo Base | xs:string | | Longitud | 21 | | Patrón | [0-9]{2} [0-9]{2} [0-9]{4} [0-9]{7} | | | | Descripción | | | Nodo condicional para expresar el resumen de los impuestos aplicables. | | Atributos | | trasladados que se desprenden de los conceptos expresados en el comprobante fiscal digital por Internet. No se permiten valores negativos. Es requerido cuando en los conceptos se registren impuestos trasladados. | | Uso | opcional | | | Tipo Especial | tdCFDI:t_Importe | | | | Elementos Hijo (min,max) | | | Secuencia (1, 1) | Retenciones (0, 1) | Traslados (0, 1) | | | Elemento: Retenciones | | Diagrama | | | | Descripción | | | Nodo condicional para capturar los impuestos retenidos aplicables. Es requerido cuando en los conceptos se registre algún impuesto retenido. | | Elementos Hijo (min,max) | | | | | Elemento: Retención | | Diagrama | | | | Descripción | | | Nodo requerido para la información detallada de una retención de impuesto específico. | | | Atributos | | | Impuesto | | Descripción | Atributo requerido para señalar la clave del tipo de impuesto retenido | | Uso | requerido | | Tipo Especial | catCFDI:c_Impuesto | | Importe | | Descripción | Atributo requerido para señalar el monto del impuesto retenido. No se permiten valores negativos. | | Uso | requerido | | Tipo Especial | tdCFDI:t_Importe | | | | Elemento: Traslados | | Diagrama | | | | Descripción | | | Nodo condicional para capturar los impuestos trasladados aplicables. Es requerido cuando en los conceptos se registre un impuesto trasladado. | | Elementos Hijo (min,max) | | | | | Elemento: Traslado | | Diagrama | | | | | Descripción | | | Nodo requerido para la información detallada de un traslado de impuesto específico. | | Atributos | | | Tipo Especial | catCFDI:c_TipoFactor | | TasaOCuota | | Descripción | Atributo requerido para señalar el valor de la tasa o cuota del impuesto que se traslada por los conceptos amparados en el comprobante. | | Uso | requerido | | Tipo Especial | catCFDI:c_TasaOCuota | | Importe | | Descripción | Atributo requerido para señalar la suma del importe del impuesto trasladado, agrupado por impuesto, TipoFactor y TasaOCuota. No se permiten valores negativos. | | Uso | requerido | | Tipo Especial | tdCFDI:t_Importe | | | Elemento: Complemento | | Diagrama | | | | Descripción | | | Nodo opcional donde se incluye el complemento Timbre Fiscal Digital de manera obligatoria y los nodos complementarios determinados por el SAT, de acuerdo con las disposiciones particulares para un sector o actividad específica. | | Elementos Hijo (min,max) | | | | Elemento: Addenda | | Diagrama | | | | | Descripción | | | Nodo opcional para recibir las extensiones al presente formato que sean de utilidad al contribuyente. Para las reglas de uso del mismo, referirse al formato origen. | | Elementos Hijo (min,max) | | | | | Código Fuente | <?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:cfdi="http://www.sat.gob.mx/cfd/3" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:catCFDI="http://www.sat.gob.mx/sitio_internet/cfd/catalogos" xmlns:tdCFDI="http://www.sat.gob.mx/sitio_internet/cfd/tipoDatos/tdCFDI" targetNamespace="http://www.sat.gob.mx/cfd/3" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:import namespace="http://www.sat.gob.mx/sitio_internet/cfd/catalogos" schemaLocation="http://www.sat.gob.mx/sitio_internet/cfd/catalogos/catCFDI.xsd"/> <xs:import namespace="http://www.sat.gob.mx/sitio_internet/cfd/tipoDatos/tdCFDI" schemaLocation="http://www.sat.gob.mx/sitio_internet/cfd/tipoDatos/tdCFDI/tdCFDI.xsd"/> <xs:element name="Comprobante"> <xs:annotation> <xs:documentation>Estándar de Comprobante Fiscal Digital por Internet.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="CfdiRelacionados" minOccurs="0"> <xs:annotation> <xs:documentation>Nodo opcional para precisar la información de los comprobantes relacionados.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="CfdiRelacionado" minOccurs="1" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Nodo requerido para precisar la información de los comprobantes relacionados.</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="UUID" use="optional"> <xs:annotation> | <xs:documentation>Atributo opcional para registrar el folio fiscal (UUID) de un CFDI relacionado con el presente comprobante, por ejemplo: Si el CFDI relacionado es un comprobante de traslado que sirve para registrar el movimiento de la mercancía. Si este comprobante se usa como nota de crédito o nota de débito del comprobante relacionado. Si este comprobante es una devolución sobre el comprobante relacionado. Si éste sustituye a una factura cancelada.</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="36"/> <xs:whiteSpace value="collapse"/> <xs:pattern value="[a-f0-9A-F]{8}-[a-f0-9A-F]{4}-[a-f0-9A-F]{4}-[a-f0-9A-F]{4}-[a-f0-9A-F]{12}"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="TipoRelacion" use="required" type="catCFDI:c_TipoRelacion"> <xs:annotation> <xs:documentation>Atributo requerido para indicar la clave de la relación que existe entre éste que se esta generando y el o los CFDI previos.</xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> </xs:element> <xs:element name="Emisor"> <xs:annotation> <xs:documentation>Nodo requerido para expresar la información del contribuyente emisor del comprobante.</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="Rfc" type="tdCFDI:t_RFC" use="required"> <xs:annotation> | <xs:documentation>Atributo requerido para registrar la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente emisor del comprobante.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="Nombre" use="optional"> <xs:annotation> <xs:documentation>Atributo opcional para registrar el nombre, denominación o razón social del contribuyente emisor del comprobante.</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minLength value="1"/> <xs:maxLength value="254"/> <xs:whiteSpace value="collapse"/> <xs:pattern value="([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@|_|,|\{|\}|`||á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,254}"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="RegimenFiscal" use="required" type="catCFDI:c_RegimenFiscal"> <xs:annotation> <xs:documentation>Atributo requerido para incorporar la clave del régimen del contribuyente emisor al que aplicará el efecto fiscal de este comprobante.</xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> </xs:element> <xs:element name="Receptor"> <xs:annotation> <xs:documentation>Nodo requerido para precisar la información del contribuyente receptor del comprobante.</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="Rfc" use="required" type="tdCFDI:t_RFC"> <xs:annotation> <xs:documentation>Atributo requerido para precisar la Clave del Registro Federal de Contribuyentes correspondiente al contribuyente receptor del comprobante.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="Nombre" use="optional"> <xs:annotation> | <xs:documentation>Atributo opcional para precisar el nombre, denominación o razón social del contribuyente receptor del comprobante.</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minLength value="1"/> <xs:maxLength value="254"/> <xs:whiteSpace value="collapse"/> <xs:pattern value="([A-Z]|[a-z]|[0-9]| |Ñ|ñ|!|"|%|&|'| ´|-|:|;|>|=|<|@|_|,|\{|\}|`||á|é|í|ó|ú|Á|É|Í|Ó|Ú||){1,254}"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="ResidenciaFiscal" use="optional" type="catCFDI:c_Pais"> <xs:annotation> <xs:documentation>Atributo condicional para registrar la clave del país de residencia para efectos fiscales del receptor del comprobante, cuando se trate de un extranjero, y que es conforme con la especificación ISO 3166-1 alpha-3. Es requerido cuando se incluya el complemento de comercio exterior o se registre el atributo NumRegIdTrib.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="NumRegIdTrib" use="optional"> <xs:annotation> <xs:documentation>Atributo condicional para expresar el número de registro de identidad fiscal del receptor cuando sea residente en el extranjero. Es requerido cuando se incluya el complemento de comercio exterior.</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minLength value="1"/> <xs:maxLength value="40"/> <xs:whiteSpace value="collapse"/> </xs:restriction> </xs:simpleType> | </xs:attribute> <xs:attribute name="UsoCFDI" use="required" type="catCFDI:c_UsoCFDI"> <xs:annotation> <xs:documentation>Atributo requerido para expresar la clave del uso que dará a esta factura el receptor del CFDI.</xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> </xs:element> <xs:element name="Conceptos"> <xs:annotation> <xs:documentation>Nodo requerido para listar los conceptos cubiertos por el comprobante.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="Concepto" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Nodo requerido para registrar la información detallada de un bien o servicio amparado en el comprobante.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="Impuestos" minOccurs="0"> <xs:annotation> <xs:documentation>Nodo opcional para capturar los impuestos aplicables al presente concepto. Cuando un concepto no registra un impuesto, implica que no es objeto del mismo.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="Traslados" minOccurs="0"> <xs:annotation> | <xs:documentation>Nodo opcional para asentar los impuestos trasladados aplicables al presente concepto.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="Traslado" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Nodo requerido para asentar la información detallada de un traslado de impuestos aplicable al presente concepto.</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="Base" use="required" type="tdCFDI:t_Importe"> <xs:annotation> <xs:documentation>Atributo requerido para señalar la base para el cálculo del impuesto, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="Impuesto" use="required" type="catCFDI:c_Impuesto"> <xs:annotation> <xs:documentation>Atributo requerido para señalar la clave del tipo de impuesto trasladado aplicable al concepto.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="TipoFactor" use="required" type="catCFDI:c_TipoFactor"> <xs:annotation> <xs:documentation>Atributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="TasaOCuota" use="optional" type="catCFDI:c_TasaOCuota"> <xs:annotation> <xs:documentation>Atributo condicional para señalar el valor de la tasa o cuota del impuesto que se traslada para el presente concepto. Es requerido cuando el atributo TipoFactor tenga un valor que corresponda a Tasa o Cuota.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="Importe" use="optional" type="tdCFDI:t_Importe"> <xs:annotation> | <xs:documentation>Atributo condicional para señalar el importe del impuesto trasladado que aplica al concepto. No se permiten valores negativos. Es requerido cuando TipoFactor sea Tasa o Cuota</xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Retenciones" minOccurs="0"> <xs:annotation> <xs:documentation>Nodo opcional para asentar los impuestos retenidos aplicables al presente concepto.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="Retencion" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Nodo requerido para asentar la información detallada de una retención de impuestos aplicable al presente concepto.</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="Base" use="required" type="tdCFDI:t_Importe"> <xs:annotation> <xs:documentation>Atributo requerido para señalar la base para el cálculo de la retención, la determinación de la base se realiza de acuerdo con las disposiciones fiscales vigentes. No se permiten valores negativos.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="Impuesto" use="required" type="catCFDI:c_Impuesto"> <xs:annotation> <xs:documentation>Atributo requerido para señalar la clave del tipo de impuesto retenido aplicable al concepto.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="TipoFactor" use="required" type="catCFDI:c_TipoFactor"> <xs:annotation> | <xs:documentation>Atributo requerido para señalar la clave del tipo de factor que se aplica a la base del impuesto.</xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="TasaOCuota" use="required"> <xs:annotation> <xs:documentation>Atributo requerido para señalar la tasa o cuota del impuesto que se retiene para el presente concepto.</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:fractionDigits value="6"/> <xs:minInclusive value="0.000000"/> <xs:whiteSpace value="collapse"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:attribute name="Importe" use="required" type="tdCFDI:t_Importe"> <xs:annotation> <xs:documentation>Atributo requerido para señalar el importe del impuesto retenido que aplica al concepto. No se permiten valores negativos.</xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> | <xs:element name="InformacionAduanera" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Nodo opcional para introducir la información aduanera aplicable cuando se trate de ventas de primera mano de mercancías importadas o se trate de operaciones de comercio exterior con bienes o servicios.</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="NumeroPedimento" use="required"> <xs:annotation> <xs:documentation>Atributo requerido para expresar el número del pedimento que ampara la importación del bien que se expresa en el siguiente formato: últimos 2 dígitos del año de validación seguidos por dos espacios, 2 dígitos de la aduana de despacho seguidos por dos espacios, 4 dígitos del número de la patente seguidos por dos espacios, 1 dígito que corresponde al último dígito del año en curso, salvo que se trate de un pedimento consolidado iniciado en el año inmediato anterior o del pedimento original de una rectificación, seguido de 6 dígitos de la numeración progresiva por aduana.</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:length value="21"/> <xs:pattern value="[0-9]{2} [0-9]{2} [0-9]{4} [0-9]{7}"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> </xs:element> <xs:element name="CuentaPredial" minOccurs="0"> <xs:annotation> <xs:documentation>Nodo opcional para asentar el número de cuenta predial con el que fue registrado el inmueble, en el sistema catastral de la entidad federativa de que trate, o bien para incorporar los datos de identificación del certificado de participación inmobiliaria no amortizable.</xs:documentation> </xs:annotation> <xs:complexType> <xs:attribute name="Numero" use="required"> <xs:annotation> | <xs:documentation>Atributo requerido para precisar el número de la cuenta predial del inmueble cubierto por el presente concepto, o bien para incorporar los datos de identificación del certificado de participación inmobiliaria no amortizable, tratándose de arrendamiento.</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minLength value="1"/> <xs:maxLength value="150"/> <xs:whiteSpace value="collapse"/> <xs:pattern value="[0-9]{1,150}"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> </xs:element> <xs:element name="ComplementoConcepto" minOccurs="0"> <xs:annotation> <xs:documentation>Nodo opcional donde se incluyen los nodos complementarios de extensión al concepto definidos por el SAT, de acuerdo con las disposiciones particulares para un sector o actividad específica.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:any minOccurs="0" maxOccurs="unbounded"></xs:any> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Parte" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Nodo opcional para expresar las partes o componentes que integran la totalidad del concepto expresado en el< | | | | |