Cita:
Empezado por luismartin
Código PHP:
$xmlStr = file_get_contents($rutaFacturaXML);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSLCERT, PATH_TEMP . '/client.pem');
curl_setopt($ch, CURLOPT_SSLKEY, PATH_TEMP . '/key.pem');
curl_setopt($ch, CURLOPT_CAINFO, PATH_TEMP . '/ca.pem');
curl_setopt($ch, CURLOPT_SSLKEYPASSWD, $clave);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xmlStr);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/xml; charset=utf-8'));
$resp = curl_exec($ch);
|
Hola luismartin,
Cuando ya tienes convertido el certificado a formato PEM, ya no necesitas la clave.
Puedes quitar la línea curl_setopt($ch, CURLOPT_SSLKEYPASSWD, $clave);
Tampoco se necesita el certificado CA de la Autoridad Certificadora.
Así que puede quitar también curl_setopt($ch, CURLOPT_CAINFO, PATH_TEMP . '/ca.pem');
Saludos