Generar CFDI
¿Qué debemos considerar para generar un comprobante de CFDI?
Los CFDI deben ser generados bajo el estándar XSD base y los XSD complementarios que requiera, validando su forma y sintaxis en el archivo con extensión XML, siendo éste el único formato para poder representar y almacenar comprobantes de manera electrónica o digital.
<cfdi:Comprobante xmlns:cfdi="http://www.sat.gob.mx/cfd/4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.sat.gob.mx/cfd/4 http://www.sat.gob.mx/sitio_internet/cfd/4/cfdv40.xsd" </cfdi:Comprobante>
Queremos solucionar tus dudas
Contáctanos
Una de las principales especificaciones que deben cumplir los comprobantes, son los namespace, en donde se hace referencia al Comprobante Fiscal Digital por Internet y a la validación del mismo en la ruta publicada por el SAT desde donde se valida el esquema XSD y dichos namespace deben de estar dentro del nodo cfdi:Comprobante como se muestra en el siguiente ejemplo:
- Lineamientos técnicos de forma y sintaxis para la generación del XML especificados por W3C
- Validaciones adicionales establecidas en el Estándar del Anexo 20
- Validaciones adicionales establecida en cada complemento que se integre en el XML.
- Las reglas de validaciones particulares publicadas en la Resolución Miscelánea Fiscal vigente.
El XML debe expresarse bajo el estándar de codificación UTF-8 y en caso de contar con alguno de los siguientes casos especiales se debe usar la secuencia de escape como se muestra a continuación:
| Carácter Especial | Secuencia a Usar | 
| & | & amp; | 
| “ | " | 
| < | & lt; | 
| > | & gt; | 
| ‘ | &apos | 
¿Cuáles son los atributos requeridos para el nodo comprobante?
| Atributo | Descripción | Ejemplo de interpretación | 
| Version | Atributo requerido en el cual debe de contener el valor 4.0 de acuerdo como lo indica el estándar del anexo 20. | Version=”4.0″ | 
| Fecha | Es la fecha y hora de expedición del comprobante fiscal. Se expresa en la forma AAAA-MM-DD:Thh:mm:ss y debe de corresponder con la hora local donde se expide el comprobante. | Fecha=”2022-10-02T12:51:09″ | 
| Subtotal | Es la suma de los importes de los conceptos antes de los descuentos e impuestos. No se permiten valores negativos. | SubTotal=”1510.00″ | 
| Moneda | Se debe registrar la clave de la moneda utilizada para expresar los montos. Catálogo CFDI: c_Moneda | Moneda=”MXN” | 
| Total | Es la suma del subtotal, menos los descuentos aplicables, más las contribuciones recibidas (impuestos traslados federales o locales, derechos, productos, aprovechamientos, aportaciones de seguridad social, contribuciones de mejoras) menos los impuestos retenidos federales o locales. | Total=”1751.60″ | 
| TipoDeComprobante | Se debe registrar la clave con la que se identifica el tipo del comprobante fiscal para el contribuyente emisor ya sea Ingreso, Egreso, Traslado, Nómina y Pago. | TipoDeComprobante=”I” | 
| LugarExpedicion | Se debe registrar el código postal del lugar de expedición del comprobante (domicilio de la matriz o sucursal), debe de corresponder con una clave de código postal incluida en el catálogo. | LugarExpedicion=”06300″ | 
| Exportacion | Se deberá señalar si el comprobante corresponde a una operación de exportación definitiva o temporal, o si el comprobante ampara o no una operación de exportación, las distintas claves vigentes se encuentran incluidas en el catálogo. | Exportacion=”01” | 
| NoCertificado | Es el número de serie del certificado de sello digital que ampara al comprobante del Emisor, de acuerdo con el acuse correspondiente a 20 posiciones otorgado por el sistema del SAT. | Ver ejemplo | 
| Certificado | Es el contenido del certificado del sello digital del emisor y debe ser expresado en formato Base64. | Ver ejemplo | 
| Sello | Es el resultado de la ejecución de un mecanismo criptográfico a la cadena original del comprobante, representado en formato Base64. | Ver ejemplo | 
¿Cuáles son los atributos requeridos en el nodo emisor de un CFDI?
| Atributo | Descripción | Ejemplo de interpretación | 
| RFC | Se debe registrar la clave del Registro Federal de Contribuyente del emisor del comprobante | Rfc=”MISC491214B86″ | 
| Nombre | Se debe registrar el nombre, denominación o razón social inscrito en el RFC del emisor del comprobante. El nombre debe corresponder a la clave de RFC registrado en el campo RFC del emisor del comprobante. | Nombre=”CECILIA MIRANDA SANCHEZ” | 
| RegimenFiscal | Se debe de especificar la clave del régimen fiscal del contribuyente emisor bajo el cual se está emitiendo el comprobante. Las claves de los diversos regímenes se encuentran incluidas en el c_RegimenFiscal publicado en el portal del SAT. | RegimenFiscal=”605″ | 
¿Cuáles son los atributos requeridos en el nodo receptor de un CFDI?
| Atributo | Descripción | Ejemplo de interpretación | 
| RFC | Se debe registrar la Clave del Registro Federal de Contribuyentes del receptor del comprobante | Rfc=”IXS7607092R5″ | 
| Nombre | Se debe registrar el(los) nombre(s), primer apellido, segundo apellido, según corresponda denominación o razón social registrados en el RFC del contribuyente receptor del comprobante. El Nombre debe corresponder a la clave de RFC. | Nombre=”INTERNACIONAL XIMBO Y SABORES” | 
| DomicilioFiscal Receptor | Se debe registrar el código postal del domicilio fiscal del receptor del comprobante. Debe estar asociado a la clave de RFC registrado en el campo Rfc de este Nodo. | DomicilioFiscalReceptor= “01001” | 
| RegimenFiscal Receptor | Se debe de especificar la clave del régimen fiscal del contribuyente receptor. Las claves de los diversos regímenes se encuentran incluidas en el c_RegimenFiscal publicado en el portal del SAT. | RegimenFiscal Receptor=”626” | 
| UsoCFDI | Se debe registrar la clave que corresponda al uso que le dará al comprobante fiscal el receptor. | UsoCFDI=”S01″ | 
¿Cuáles son los atributos requeridos en el nodo concepto de un CFDI?
| Atributo | Descripción | Ejemplo de interpretación | 
| ClaveProdServ | En este campo se debe registrar una clave que permita clasificar los conceptos del comprobante como productos o servicios; se debe de utilizar las claves de los diversos productos o servicios de conformidad con el catálogo c_ClaveProdServ | ClaveProdServ=”84111506″ | 
| Cantidad | Se debe registrar la cantidad de bienes o servicios que corresponden a cada concepto, puede contener de cero hasta seis decimales. | Cantidad=”25″ | 
| ClaveUnidad | Se debe registrar la clave de unidad de medida estandarizada de conformidad con el catálogo c_ClaveUnidad publicado en el Portal del SAT, aplicable para la cantidad expresada en cada concepto. | ClaveUnidad=”E48″ | 
| Descripcion | En este campo se debe registrar la descripción del bien o servicio propia de la empresa por cada concepto. | |
| ValorUnitario | Se debe registrar el valor o precio unitario del bien o servicio por cada concepto, el cual puede contener de cero hasta seis decimales. Si el tipo de comprobante es de “I”, “E” o “N” este valor debe ser mayor a cero, si es de “T” puede ser mayor o igual a cero y si es “P” debe ser igual a cero. | ValorUnitario=”36″ | 
| Importe | En este campo se debe registrar el importe total de los bienes o servicios de cada concepto. Debe ser equivalente al resultado de multiplicar la cantidad por el valor unitario expresado en el concepto. | Importe=”900″ | 
| ObjetoImp | Se debe registrar la clave correspondiente para indicar si la operación comercial es objeto o no de impuesto. Las claves vigentes se encuentran incluidas en el catálogo c_ObjetoImp. Si el valor registrado en este campo es “02” (Sí objeto de impuesto), se deben desglosar los Impuestos a nivel de Concepto Si el valor registrado en este campo es “01” (No objeto de impuesto) o “03” (Sí objeto del impuesto y no obligado al desglose) no se desglosan impuestos a nivel Concepto | ObjetoImp=”02” | 
¿Cuáles son los atributos requeridos en el nodo impuestos de un CFDI?
| Atributo | Descripción | Ejemplo de interpretación | 
| Base | Se debe registrar el valor para el cálculo del impuesto que se traslada, puede contener de cero hasta seis decimales. El valor de este campo debe ser mayor que cero. | Base=”500″ | 
| Impuestos | Se debe registrar la clave del tipo de impuestos aplicable a cada concepto, las cuales se encuentran incluidas en el catálogo c_Impuestos publicado en el Portal del SAT. | Impuesto=”002″ | 
| TipoFactor | Se debe registrar el tipo de factor que se aplica a la base del impuesto, el cual se encuentra incluido en el catálogo c_TipoFactor publicado en el Portal del SAT. | TipoFactor=”Tasa” | 
| TasaOCuota | Atributo requerido para señalar la tasa o cuota del impuesto que se retiene para el presente concepto c_TasaOCuota publicado en el Portal del SAT. | TasaOCuota=”0.160000″ | 
| Importe | Se puede registrar el importe del impuesto que aplica a cada concepto. Este campo es requerido cuando en el campo TipoFactor se haya registrado como Tasa o Cuota. El valor de este campo será calculado por el sistema que genera el comprobante y considerará los redondeos que tenga registrado este campo. | Importe=”80” | 
 
  
    
 
        