1. Go to this page and download the library: Download redsys/tpv library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
redsys / tpv example snippets
# Incluye tu arquivo de configuración (copia config.php para config.local.php)
$config = camos los campos para el pedido
$TPV->setFormHiddens(array(
'TransactionType' => '0',
'MerchantData' => 'Televisor de 50 pulgadas',
'Order' => '012121323',
'Amount' => '568,25',
'UrlOK' => 'http://dominio.com/direccion-todo-correcto/',
'UrlKO' => 'http://dominio.com/direccion-error',
'MerchantURL' => 'http://dominio.com/direccion-control-pago'
));
# Imprimimos el pedido el formulario y redirigimos a la TPV
echo '<form action="'.$TPV->getPath('/realizarPago').'" method="post">'.$TPV->getFormHiddens().'</form>';
die('<script>document.forms[0].submit();</script>');
# Incluye tu arquivo de configuración (copia config.php para config.local.php)
$config = izamos la comprobación de la transacción
try {
$datos = $TPV->checkTransaction($_POST);
$success = true;
$message = '';
} catch (Exception $e) {
$datos = $TPV->getTransactionParameters($_POST);
$success = false;
$message = $e->getMessage();
}
# Actualización del registro en caso de pago (ejemplo usando mi framework)
$Db->update(array(
'table' => 'tpv',
'limit' => 1,
'data' => array(
'pagado' => $success,
'mensaje' => $message,
'operacion' => $datos['Ds_TransactionType'],
'fecha_pago' => date('Y-m-d H:i:s'),
'variables' => json_encode($datos),
'post' => json_encode($_POST)
),
'conditions' => array(
'id' => $datos['Ds_Order']
)
));
die();
# Incluye tu arquivo de configuración (copia config.php para config.local.php)
$config = camos los campos para la confirmación del pago
$response = $TPV->sendXml(array(
'TransactionType' => '2', // Código para la Confirmación del cargo
'MerchantURL' => 'http://dominio.com/direccion-control-pago-xml', // A esta URL enviará el banco la confirmación del cobro
'Amount' => '568,25', // La cantidad final a cobrar
'Order' => '012121323', // El número de pedido, que debe existir en el sistema bancario a través de una autorización previa
'MerchantData' => 'Televisor de 50 pulgadas',
));
# Incluye tu arquivo de configuración (copia config.php para config.local.php)
$config = izamos la comprobación de la transacción
try {
$datos = $TPV->checkTransactionXml($_POST);
} catch (Exception $e) {
die(file_put_contents(__DIR__.'/logs/errores-tpv.log', $e->getMessage(), FILE_APPEND));
}
# Actualización del registro en caso de pago (ejemplo usando mi framework)
$Db->update(array(
'table' => 'tpv',
'limit' => 1,
'data' => array(
'pagado' => 1,
'operacion' => $datos['Ds_TransactionType'],
'fecha_pago' => date('Y-m-d H:i:s')
),
'conditions' => array(
'id' => $datos['Ds_Order']
)
));
die();
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.