Hola de nuevo, ya tengo el ejemplo de prueba funcionando. Me ha costado más de lo debido porque había algunas funciones dentro de la librería que me han pasado los de redsys que cascaban, he tenido que modificarlas yo mismo para poder usarlas. No sé si será x la versión de PHP que uso o qué. En fin, te comento lo que he visto hasta el momento:
A mí me devuelve datos tanto en la URL, como en la URL_OK y en la URL_KO. En la URL me lo devuelve por $_POST, y en las otras dos por $_GET, con lo cual se me ven en la URL. Yo recibo tres parámetros, los que indica la documentación: Ds_SignatureVersion, Ds_MerchantParameters y Ds_Signature.
Te paso el código que he puesto yo en mi URL para comproban qué me llegaba:
Código PHP:
$file = fopen("archivo.txt", "a+");
fwrite($file,"Nueva invocacion".PHP_EOL);
if($_POST)
{
foreach ($_POST as $clave=>$valor)
{
fwrite($file,"El valor de $clave es: $valor".PHP_EOL);
}
}
fclose($file);
Y en las URL_KO y URL_OK tengo este código para recoger los datos, con un print al final para que veas los datos devueltos:
Código PHP:
$miObj = new RedsysAPI;
$version = $_GET["Ds_SignatureVersion"];
$params = $_GET["Ds_MerchantParameters"];
$signaturaRecibida = $_GET["Ds_Signature"];
$decodec = $miObj->decodeMerchantParameters($params);
print_r($miObj);
He leído en la documentación que es OPCIONAL recibir los parámetros en el URL_OK y en el URL_KO, pero la verdad no sé cómo se modifica. Yo por ejemplo querría quitarlos, porque no quiero que se muestre nada de eso en la URL, pero no veo cómo. De todas formas si tampoco te llega nada a la URL definida debe ser otro problema.
Prueba con esto si te ayuda, a ver si recibes algún parámetro desde el TPV.
Un saludo!