Crear clase con modelo de CFDI 4.0 C#

Para generar la clase del modelo con todos los tipos de datos y todos los catálogos requeridos para poder generar un XML de factura electrónica seguimos los siguientes pasos.

Necesitamos descargar tres archivos en formato XSD desde la pagina de documentación de CFDI 4.0

http://omawww.sat.gob.mx/tramitesyservicios/Paginas/anexo_20.htm

Debajo de la tabla encontramos algunos archivos útiles, entre ellos los xsd que necesitamos

Tenemos que descargar los tres archivos porque el principal que se llama cfdv40.xsd tiene dos dependencias a los otros dos archivos xsd, si no se descargan esos archivos no se podrá crear la clase, en este caso los guarde en la carpeta c:/cfdi pero pueden guardarlos directamente en una carpeta de su proyecto.

Necesitamos una aplicacion de consola que se llama Visual Studio 2022 Developer Command Prompt, que se instala cuando instalas Visual Studio 2022 en este caso.

Abrimos la ruta donde se enuentran los archivos xsd con el comando cd

 
cd C:/cfdi
 

Ejecutamos el siguiente comando donde es muy importante incluir los archivos de dependencia para que funcione, hay que ser muy cuidadosos de escribir bien los nombres de los archivos con su extensión.

 
xsd cfdv40.xsd tdCFDI.xsd catCFDI.xsd /classes

Finalmente la clase .cs esta creada dentro del mismo directorio, listo para importar a su proyecto.

Solo hay que tener en cuenta que esta clase tiene un peso muy grande, casi 15 MB ya que se han creado mas de 600 mil lineas de código porque incluye todos los catalogos como el de claves de productos y servicios (c_ClaveProdServ) que es el mas grande.

Loading