estamos adaptando el sistema informatico utilizando al entorno de pruebas de la AEAT para poder hacer intercambio de mensajes xml .
Intentamos utilizar CURL.EXE que lo trae el propio Windows 10.
Como CURL.EXE parece ser que no maneja los certificados pfx.p12 emitidos por la FNMT (Fabrica Nacional de Moneda y Timbre) los pasamos a dos ficheros pem, uno con el certificado y otro con la clave privada con openssl.exe:
Desde el símbolo de sistema:
Code: Select all
C:\openssl-1.1.1-win64-mingw\openssl pkcs12 -in ./CertificadoFNMT.pfx.p12 -out ./CertificadoFNMT.pem -clcerts -nokeys
C:\openssl-1.1.1-win64-mingw\openssl pkcs12 -in CertificadoFNMT.pfx.p12 -out CertificadoFNMT_key.pem -nocerts -nodes
Después para por ejemplo tratar de comprobar un CIF/NIF utilizamos la llamada a CURL.EXE siguiente:
Code: Select all
curl.exe --connect-timeout 60 -m 60 -S -L -d "@EnvioNif.xml" -o RespuestaNif.xml --cert ./CertificadoFNMT.pem --key ./CertificadoFNMT_key.pem https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP --trace ./RespuestaTrace.txt --pass CALVEEXPORTACIONCERTIFICADO
Siendo el xml para la consulta del NIF: EnvioNif.xml
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:vnif="http://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/burt/jdit/ws/VNifV2Ent.xsd">
<soapenv:Header/>
<soapenv:Body>
<vnif:VNifV2Ent>
<vnif:Contribuyente>
<vnif:Nif>99999999R</vnif:Nif>
<vnif:Nombre>JUAN MANUEL ESPAÑOL</vnif:Nombre>
</vnif:Contribuyente>
</vnif:VNifV2Ent>
</soapenv:Body>
</soapenv:Envelope>
Fallo devuelto por la AEAT:
Error 401 No autorizado. Se ha producido un error al verificar el certificado presentado. Las causas más probables de este error son:
El certificado no ha sido firmado por una autoridad reconocida.
El tipo de certificado no es válido para el servicio al que se quiere acceder.
El certificado ha expirado.
Pero ninguno de los tres casos son la causa del posible error.
Les ruego me ayuden porque ya no se qué más pruebas hacer para poderlo echar a andar.
De antemano gracias.
Cordiales Saludos.