PHP code example of elavon / tpv

1. Go to this page and download the library: Download elavon/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/ */

    

elavon / 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(
    'ORDER_ID' => '012121323',
    'AMOUNT' => '568,25'
));

# Rellenamos el formulario de pedido y redirigimos al TPV

echo '<form action="'.$TPV->getFormAction().'" method="post">'.$TPV->getFormHiddens().'</form>';

die('<script>document.forms[0].submit();</script>');

# O bien si quieres el formulario completo pero no quieres redirección

echo $TPV->getFormFull();

# O bien si quieres el formulario completo y que realice la redirección al TPV (igual que la primera opción)

die($TPV->getFormFullWithRedirect());


# 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 = $_POST;
    $success = false;
    $message = $e->getMessage();
}

# Actualización del registro en caso de pago (ejemplo Laravel)

if (empty($datos['ORDER_ID'])) {
    Log::error('No se ha recibido el identificador de pedido');
    exit;
}

try {
    $order = Order::findOrFail($datos['ORDER_ID']);
} catch (Exception $e) {
    Log::error('El pedido indicado no existe');
    exit;
}

$order->tpv_post = json_encode($_POST);
$order->tpv_datos = json_encode($datos);
$order->tpv_respuesta = $datos['RESULT'];
$order->tpv_mensaje = $datos['MESSAGE'];

$order->save();

return $success ? view('tpv-ok') : view('tpv-ko');