Mira si asi te funciona.
Código PHP:
<?pph
$miObj = new RedsysAPI;
if (!empty($_POST)) //URL DE RESP. ONLINE
{
$version = $_POST["Ds_SignatureVersion"];
$datos = $_POST["Ds_MerchantParameters"];
$signatureRecibida = $_POST["Ds_Signature"];
$decodec = $miObj->decodeMerchantParameters($datos);
$kc = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';//Clave recuperada de CANALES
$firma = $miObj->createMerchantSignatureNotif($kc,$datos);
$codigo_venta_recibido=$miObj->getParameter("Ds_Order");
$respuesta=$miObj->getParameter('Ds_Response');
}
?>
Obtienes los valores $codigo_venta_recibido y la respuesta de la TPV para saber si ha ido todo correcto.
Valores de respuesta:
Código:
0000 a 0099 Transacción Autorizada para pagos y preautorizaciones
0900 Transacción Autorizada para devoluciones y confirmaciones
0101 Tarjeta Caducada
0102 Tarjeta en excepción transitoria o bajo sospecha de fraude
0116 Disponible Insuficiente
0118 Tarjeta no Registrada
0180 Tarjeta ajena al servicio
0184 Error en la autenticación del titular
0190 Denegación sin especificar motivo
0191 Fecha de caducidad errónea
0202 Tarjeta en excepción transitoria o bajo sospecha de fraude con retirada de tarjeta
0912 / 9912 Emisor no Disponible
Cualquier otro valor Transacción denegada