PHPackages                             elavon/tpv - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. elavon/tpv

ActiveLibrary[Payment Processing](/categories/payments)

elavon/tpv
==========

Package to connect with Elavon TPV (Santander)

v1.3(9y ago)01.8kMITPHPPHP &gt;=5.3

Since Oct 1Pushed 9y ago1 watchersCompare

[ Source](https://github.com/eusonlito/elavon-TPV)[ Packagist](https://packagist.org/packages/elavon/tpv)[ RSS](/packages/elavon-tpv/feed)WikiDiscussions master Synced 4w ago

READMEChangelog (4)Dependencies (1)Versions (5)Used By (0)

Elavon TPV
==========

[](#elavon-tpv)

Este script te permitirá generar los formularios para la integración de la pasarela de pago de Elavon (Santander).

Instalación
-----------

[](#instalación)

Añade las dependencias vía composer: `"elavon/tpv": "1.*"`

```
composer update
```

O incluye el autoloader del paquete:

```
require __DIR__.'/elavon-tpv/src/autoload.php';
```

Ejemplo de pago
---------------

[](#ejemplo-de-pago)

```
# Incluye tu arquivo de configuración (copia config.php para config.local.php)

$config = require (__DIR__.'/config.local.php');

# Cargamos la clase con los parámetros base

$TPV = new Elavon\Tpv\Tpv($config);

# Indicamos los campos para el pedido

$TPV->setFormHiddens(array(
    'ORDER_ID' => '012121323',
    'AMOUNT' => '568,25'
));

# Rellenamos el formulario de pedido y redirigimos al TPV

echo ''.$TPV->getFormHiddens().'';

die('document.forms[0].submit();');

# 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());
```

Para realizar el control de los pagos, la TPV se comunicará con nosotros a través de la url configurada en el panel del propio banco.

Este script no será visible ni debe responder nada, simplemente verifica el pago.

El banco siempre se comunicará con nosotros a través de esta url, sea correcto o incorrecto.

Podemos realizar un script (Lo que en el ejemplo sería ) que valide los pagos de la siguiente manera:

```
# Incluye tu arquivo de configuración (copia config.php para config.local.php)

$config = require (__DIR__.'/config.local.php');

# Cargamos la clase con los parámetros base

$TPV = new Elavon\Tpv\Tpv($config);

# Realizamos 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');
```

Si deseas más información sobre parámetros u opciones, Google puede echarte una mano

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity16

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity61

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~7 days

Total

4

Last Release

3540d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/644551?v=4)[Lito](/maintainers/eusonlito)[@eusonlito](https://github.com/eusonlito)

---

Top Contributors

[![eusonlito](https://avatars.githubusercontent.com/u/644551?v=4)](https://github.com/eusonlito "eusonlito (7 commits)")

---

Tags

elavonelavon-tpvphpsantandertpvtpvelavonsantander

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/elavon-tpv/health.svg)

```
[![Health](https://phpackages.com/badges/elavon-tpv/health.svg)](https://phpackages.com/packages/elavon-tpv)
```

###  Alternatives

[ssheduardo/redsys-laravel

Package redsys for laravel

101136.5k3](/packages/ssheduardo-redsys-laravel)[openboleto/opencnabphp

Biblioteca multibanco para geração e leitura de arquivos Cnab de remessa e retorno

2149.1k](/packages/openboleto-opencnabphp)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
