Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Colaboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-06-2025
_Io _Io is offline
Miembro
 
Registrado: ene 2024
Posts: 114
Poder: 3
_Io Va por buen camino
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
const
  CERTIFICATE ='D:\PROYECTOS\D12\04 VERI-FACTU\04 DOCUMENTOS\Cerificados\Pruebas AEAT\Certificado_RPJ_A39200019_CERTIFICADO_ENTIDAD_PRUEBAS_4_Pre.p12';
  PASSWORD = '1234';

var
  Nif :VNifV2;
  NifEnt :VNifV2Ent;
  NifSal :VNifV2Sal;
  PrioInt :THTTPRIO;
  Cert :TFileStream;
  j:integer;
begin

  // Cargamos Certificado
  Cert:=TFileStream.Create(CERTIFICATE,fmOpenRead);
  try

    // Configuramos comunicación con la AEAT
    PrioInt:=THTTPRIO.Create(nil);
    PrioInt.URL:='https://www1.agenciatributaria.gob.es/wlpl/BURT-JDIT/ws/VNifV2SOAP';
    PrioInt.HTTPWebNode.ClientCertificate.Stream:=Cert;
    PrioInt.HTTPWebNode.ClientCertificate.Password:=PASSWORD;
    Nif:=(PrioInt as VNifV2);

    // Preparamos consulta
    setlength(NifEnt,1);
    NifEnt[0]:=Contribuyente.Create;
    NifEnt[0].Nif:='**7242***';
    NifEnt[0].Nombre:='*O*E *AR**A G*L*C*A';

    // Lanzamos consulta
    NifSal:=Nif.VNifV2((NifEnt));

  // Cargamos respuesta
    for j:=0 to length(NifSal) -1 do
    begin

      if assigned(NifSal[j]) then
      begin

        memo2.Lines.Add(NifSal[j].Nif);
        memo2.Lines.Add(NifSal[j].Nombre);
        memo2.Lines.Add(NifSal[j].Resultado);

      end;

    end;

  finally

    Cert.Free;

  end;

end;

Buenos días.

El Certificado es uno de pruebas de la AEAT, lo utilizo en FACe y funciona bien.
Este código da el error Error sending data: (12185) No había credenciales disponibles en el certificado de cliente

Ya me dices si ves algo raro.

Muchas Gracias.
Responder Con Cita
  #2  
Antiguo 13-06-2025
_Io _Io is offline
Miembro
 
Registrado: ene 2024
Posts: 114
Poder: 3
_Io Va por buen camino
Cita:
Empezado por _Io Ver Mensaje
[delphi]
El Certificado es uno de pruebas de la AEAT, lo utilizo en FACe y funciona bien.
Este código da el error Error sending data: (12185) No había credenciales disponibles en el certificado de cliente
He utilizado otro certificado y me da el mismo error.
También he probado en poner una contraseña errónea y me da el error: Error opening certificate file: (86) La contraseña de red especificada no es válida

Saludos.
Responder Con Cita
  #3  
Antiguo 13-06-2025
Garada Garada is offline
Miembro
 
Registrado: jul 2004
Posts: 90
Poder: 22
Garada Va por buen camino
El código es casi idéntico al mío.

Incluso acabo de probar con otro certificado y sin problemas.

Las pruebas las he hecho con certificados reales, uno de empresa (representante) y otro personal. Ambos de la FNMT.

Si estás usando certificados de pruebas de la AEAT, igual no van con ese servicio que no es de pruebas.

Por mirar, esos certificados... han caducado?

Esos certificados de pruebas, se pueden descargar de algún sitio?
Responder Con Cita
  #4  
Antiguo 15-06-2025
_Io _Io is offline
Miembro
 
Registrado: ene 2024
Posts: 114
Poder: 3
_Io Va por buen camino
Cita:
Empezado por Garada Ver Mensaje
El código es casi idéntico al mío.

Incluso acabo de probar con otro certificado y sin problemas.

Las pruebas las he hecho con certificados reales, uno de empresa (representante) y otro personal. Ambos de la FNMT.

Si estás usando certificados de pruebas de la AEAT, igual no van con ese servicio que no es de pruebas.

Por mirar, esos certificados... han caducado?

Esos certificados de pruebas, se pueden descargar de algún sitio?
Hola Buenos días.

Los certificados funcionan correctamente con FACe.
Los conseguí mandando un correo a verifactu, estoy empezando a pensar que tenga un problema con la instalación de delphi 12.
¿Sabes si hay alguna forma de saber esto último, o solucionarlo?
Muhas Gracias.
Responder Con Cita
  #5  
Antiguo 15-06-2025
Garada Garada is offline
Miembro
 
Registrado: jul 2004
Posts: 90
Poder: 22
Garada Va por buen camino
¿Has probado certificados reales?
https://www.clubdelphi.com/foros/sho...041#post560270

Cita:
Empezado por _Io Ver Mensaje
Hola Buenos días.

Los certificados funcionan correctamente con FACe.
Los conseguí mandando un correo a verifactu, estoy empezando a pensar que tenga un problema con la instalación de delphi 12.
¿Sabes si hay alguna forma de saber esto último, o solucionarlo?
Muhas Gracias.
Responder Con Cita
  #6  
Antiguo 15-06-2025
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.806
Poder: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Cargar los certificados desde un fichero no funciona en Delphi 11.
Si funciona en Delphi 12.3.

Hay diferencias en las librerías. En especial creo que es en System.Net.HttpClient.Win
En la versión 12 hay un método llamado TWinHttpLib.SetCertStore(AValue: HCERTSTORE) que guarda el dato en FStore si está vacío.
El método TWinHTTPRequest.SetWinCertificate también es muy distinto entre versiones.
Responder Con Cita
  #7  
Antiguo 16-06-2025
_Io _Io is offline
Miembro
 
Registrado: ene 2024
Posts: 114
Poder: 3
_Io Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
Cargar los certificados desde un fichero no funciona en Delphi 11.
Si funciona en Delphi 12.3.

Hay diferencias en las librerías. En especial creo que es en System.Net.HttpClient.Win
En la versión 12 hay un método llamado TWinHttpLib.SetCertStore(AValue: HCERTSTORE) que guarda el dato en FStore si está vacío.
El método TWinHTTPRequest.SetWinCertificate también es muy distinto entre versiones.
Buenos día.

Pues por ahí puede estar el asunto.

Yo tengo Delphi 12, mi año de mantenimiento no lo renové, en teoría ya no podría optar a Delphi 12.3, no?

Muchas Gracias.
Responder Con Cita
  #8  
Antiguo 16-06-2025
_Io _Io is offline
Miembro
 
Registrado: ene 2024
Posts: 114
Poder: 3
_Io Va por buen camino
Cita:
Empezado por Garada Ver Mensaje
Buenos días.

Si, y nada.

Saludos.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Uso código "PrioInt.HTTPWebNode.ClientCertificate.SerialNum" _Io Envío de registros y sus respuestas 2 30-04-2025 21:01:32
Pasar cabezeras a un componente THTTPRIO bucanero Internet 2 12-09-2016 16:36:38
THTTPRIO y encoding utf-8 jlcasih Internet 1 30-05-2007 03:38:23
Configurar los Namespaces usados por el componente THTTPRIO Oscargo Varios 0 12-07-2006 13:47:27


La franja horaria es GMT +2. Ahora son las 12:57:04.


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