Integración en Laravel con la pasarela de pago Flow
Este paquete es un simple Service Provider adaptado a Laravel del Kit de Integración de Flow.
$ composer require siturra/flow
Una vez que Composer haya instalado o actualizado sus paquetes, deberá registrar Laravel-Flow. Abra config/app.php
y agregue la siguiente linea en el array providers
:
'providers' => array(
…
Siturra\Flow\FlowServiceProvider::class,
…
),
En el archivo config/app.php
, agregar la siguiente línea al array aliases
:
'aliases' => array(
…
'Flow' => Siturra\Flow\FlowFacade::class,
…
),
El siguiente comando migra las carpetas storage
, config
, resource
, del paquete Siturra\Flow
a tu directorio raíz de laravel, de esta manera aparecera:
config/flow.php
flow
, en resource/views
.log
y keys
del kit de integración, en la carpeta storage
.$ php artisan vendor:publish --tag=flow
config/flow.php
.Tus certificados digitales deben ir en: storage/app/flow/keys
.
routes
, las siguientes rutas:<?php
...
Route::group(['prefix' => 'payment/flow'], function(){
Route::get('index', 'FlowController@index');
Route::post('orden', 'FlowController@orden');
Route::get('confirm', 'FlowController@confirm');
Route::match(['get', 'post'], 'success', 'FlowController@success');
Route::match(['get', 'post'], 'failure', 'FlowController@failure');
Route::post('index', 'FlowController@orden');
});
...
?>
Importante: Excluye la protección CSRF para las páginas de éxito, fracaso y confirmación, ya que provocan excepciones al comunicarse con Flow.
Abrir el archivo app/Http/Middleware/VerifyCsrfToken.php
<?php
...
protected $except = [
//
'payment/*',
];
...
?>
http://localhost/payment/flow/index