Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Firma en factura electrónica facturaE (https://www.clubdelphi.com/foros/showthread.php?t=90242)

Galahad 01-05-2016 20:48:59

Firma en factura electrónica facturaE
 
Hola, buenas tardes.
Tengo implementado en un programa la factura electrónica en formato xml (facturaE). Me faltan dos cosas, una poder firmar dicho formato con el certificado oficial de la AEAT , y dos utilizar algún web service para automatizar los envíos directamente a la AEAT.
En cuanto. A la firma, ahora mismo se firman con una aplicación propia de la AEAT, la información que encuentro para automatizar la firma habla de soluciones muy antiguas q ya no están vigentes creo, como un activex (aefact.dll).
Tampoco he encontrado información en la página de la AEAT sobre alguno de estos dos temas.
Sé que hay unos componentes específicos, los secureblacbox , pero de momento no se está pensando en adquirirlos.
¿ Alguien tiene información de cómo implementarlo en delphi ahora mismo ?.
Gracias anticipadas.

newtron 02-05-2016 09:19:45

Hola.

Que yo sepa no hay componentes gratuitos para Delphi que firmen archivos, yo en particular lo que he hecho ha sido hacer una llamada a un programita hecho en java, no es la forma más elegante pero funciona. Aquí tienes el post, espero que te sirva.

Saludos

Neftali [Germán.Estévez] 02-05-2016 15:08:47

Para Delphi ya hemos comentado otras veces sobre los Secure BlackBox para todas estas cuestiones, pero no son gratuitos.

x_aguilarf 03-05-2016 19:10:40

Hola,

en mi caso utilicé las librerías hechas en Java que recomiendan los del ministerio. Te paso las mismas con una clase de Java y Delphi que sirven para acceder a ellas.

Código Delphi [-]
xmlFile := 'C:\Dirección\Del\Fichero.XML';
idCert := 'ID_DEL_CERTIFICADO_INSTALADO_EN_WINDOWS_A_UTILIZAR';

with TFirmaXML.Create(xmlFile, idCert) do
    try
        if not Success then
            RaiseException;
    finally
        Free;
    end;

Puedes recibir los certificados instalados mediante:

Código Delphi [-]
p := TProcess.Create('java.exe', ['-jar', 'FacturaXML.jar', '"list"'], IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName));
csvListadoCerts := p.Output;
p.Free;

Enlace

Espero haberte ayudado,
Saludos

Galahad 09-05-2016 10:49:04

Muchas Gracias.
¿ me puedes pasar dichas librerias ?.
Ya intentaré yo crear la interfaz de la case de java en delphi.

Un saludo y gracias de nuevo

Cita:

Empezado por x_aguilarf (Mensaje 504904)
Hola,

en mi caso utilicé las librerías hechas en Java que recomiendan los del ministerio. Te paso las mismas con una clase de Java y Delphi que sirven para acceder a ellas.

Código Delphi [-]xmlFile := 'C:\Dirección\Del\Fichero.XML'; idCert := 'ID_DEL_CERTIFICADO_INSTALADO_EN_WINDOWS_A_UTILIZAR'; with TFirmaXML.Create(xmlFile, idCert) do try if not Success then RaiseException; finally Free; end;


Puedes recibir los certificados instalados mediante:

Código Delphi [-]p := TProcess.Create('java.exe', ['-jar', 'FacturaXML.jar', '"list"'], IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)); csvListadoCerts := p.Output; p.Free;


Enlace

Espero haberte ayudado,
Saludos


Galahad 09-05-2016 11:15:48

Firma Electrónica
 
Disculpa, no habia visto el enlace.
Ya tengo la clase, voy a pelearme con esto.
Muchísimas gracias...

Cita:

Empezado por Galahad (Mensaje 505069)
Muchas Gracias.
¿ me puedes pasar dichas librerias ?.
Ya intentaré yo crear la interfaz de la case de java en delphi.

Un saludo y gracias de nuevo


anam.soria 02-06-2016 12:07:37

Muchísimas gracias por tu aportación, me ha servido de gran ayuda para el tema de la firma en Delphi, pero al validar la factura firmada en http://sedeaplicaciones2.minetur.gob.es/FacturaE/
me da error de política de firma, yo uso la sintaxis de Facturae 3.2.1

[IMG]E:\Documentos\Error_PoliticaDeFirma.jpg[/IMG]

Os ha pasado a alguien? A qué puede ser debido?

Gracias por anticipado

anam.soria 02-06-2016 12:31:12

Seré un poco más explícita, el validador de facturaE (http://sedeaplicaciones2.minetur.gob.es/FacturaE/) me da los siguientes errores:
En Tipo de Validación dice: Rol no se ajusta a uno de los definidos en la política.
y en el Desglose de validación de la firma. en Política, dice: política inválida: Política de firma FacturaE v3.1

NO sé qué puedo haber hecho mal, selecciono mi certificado de la FNMT, y tomo como id del certificado, la última parte de la cadena Tprocess.output

iMia 19-06-2016 00:45:14

Esas librerías son obsoletas y lo que es peor, están descontinuadas.
No cumplen la política de firma estricta 3,1
Ahora mismo sólo se puede firmar con años externas (@firma de la aeat) o con librerías tipo secureblackbox


La franja horaria es GMT +2. Ahora son las 11:08:45.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi