Librería de componentes Java para el desarrollo de aplicaciones de Factura Electrónica (CFDI)
La librería presenta una interfaz muy simple centrada en el Comprobante Fiscal
Digital (CFD), las clases principales son CFDv33
y CFDv32
que tienen la lógica
correspondiente a las versiones 3.3 y 3.2 del CFDi respectivamente.
Cada uno de estos elementos tiene la funcionalidad necesaria para: validar, firmar, verificar y serializar CFDs.
CFDv33 cfd = new CFDv33(new FileInputStream(file)); // Crea un CFD a partir de un InputStream
Key key = KeyLoader.loadPKCS8PrivateKey(new FileInputStream(keyfile), password);
Certificate cert = KeyLoader.loadX509Certificate(new FileInputStream(certFile));
Comprobante sellado = cfd.sellarComprobante(key, cert); // Firma el CFD y obtiene un Comprobante sellado
cfd.validar(); // Valida el XML, que todos los elementos estén presentes
cfd.verificar(); // Verifica un CFD ya firmado
cfd.guardar(System.out); // Serializa el CFD a un OutputStream
CFDv32 cfd = new CFDv32(new FileInputStream(file)); // Crea un CFD a partir de un InputStream
Key key = KeyLoader.loadPKCS8PrivateKey(new FileInputStream(keyfile), password);
Certificate cert = KeyLoader.loadX509Certificate(new FileInputStream(certFile));
Comprobante sellado = cfd.sellarComprobante(key, cert); // Firma el CFD y obtiene un Comprobante sellado
cfd.validar(); // Valida el XML, que todos los elementos estén presentes
cfd.verificar(); // Verifica un CFD ya firmado
cfd.guardar(System.out); // Serializa el CFD a un OutputStream
CFDv33 cfd = new CFDv33(new FileInputStream(file));// Crea un CFD a partir de un InputStream
TFDv11 tfd = new TFDv11(cfd); // Crea un TDF a partir del CDF
PrivateKey key = KeyLoader.loadPKCS8PrivateKey(new FileInputStream(keyfile), password);
tfd.timbrar(key); // Timbra el CDF
tfd.verificar(cert); // Verifica el TDF
tfd.guardar(System.out); // Serializa el CFD timbrado a un OutputStream
CFDv32 cfd = new CFDv32(new FileInputStream(file));// Crea un CFD a partir de un InputStream
TFDv1 tfd = new TFDv1(cfd); // Crea un TDF a partir del CDF
PrivateKey key = KeyLoader.loadPKCS8PrivateKey(new FileInputStream(keyfile), password);
tfd.timbrar(key); // Timbra el CDF
tfd.verificar(cert); // Verifica el TDF
tfd.guardar(System.out); // Serializa el CFD timbrado a un OutputStream
``
## Instalación
### Utiliza maven
- Descarga la última versión de las librerías
- Descomprime el archivo cfdi-base-0.2.5-bin.zip
- Agrega todos los archivos jar al classpath de tu aplicación.
Entérate de las mejoras y actualizaciones a las librerías a través de nuestra cuenta de twitter.
Valida tus CFD-I utilizando el Validador de forma y sintaxis de Comprobantes Fiscales Digitales v3.
Encuentra más información sobre los CFDI en las siguientes referencias las siguientes referencias:
- Comunicado de prensa [03/09/2010]
- Nuevo esquema de facturación electrónica 2011 [08/10/2010]
- Información para proveedores de certificación de CFDI [22/10/2010]
- Ejemplos y preguntas frecuentes de tecnología [22/10/2010]
- Fundamento legal [24/09/2010]
- Validadores y referencias para los CFD v2 [19/07/2010]
¿Tienes algún problema o sugerencia de mejora?
Busca la respuesta en la sección de preguntas frecuentes o en la sección de seguimiento. Si no encuentras la respuesta, crea una nueva entrada utilizando la liga de New Issue y haremos todo lo posible por solucionarlo.