PHP code example of gjae / laravel-payper

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

    

gjae / laravel-payper example snippets


    ...
    Gjae\LaravelPayper\PayperServiceProvider::class,

    ...
    Gjae\LaravelPayper\Facade::class,

    'debug_mode'        => true,    

    'origin'            => env('PAYPER_ORIGIN', ''),

    'access_token'      => env('PAYPER_ACCESS_TOKEN', ''),
 
    'porcentaje_impuesto' => env('PAYPER_TAX_PERCENT', null),

    'debug_cards'           => [

    ],

    'transaction_case_routes'   => [

        'success'               => '',


        'failure'               => '',


        'pending'               => ''

    ],

    'callback'                   => ''

    $txInstance = Payper::begin(function($trx){

        // Ingresar el valor de la transacción
        $trx->setValor( 100.00 ); 

        // Descripción de la transacción
        $trx->setDescription("Descripción de la transacción");

        // (OPCIONAL) datos extras de la transacción, recibe un arreglo con los datos adicionales de la transacción que quiera guardar
        $trx->setAditionalData([ 'foo' => 'bar', 'foo1' => [ 'foo.1' => 'bar-1' ] ]);

        // (OPCIONAL) en caso de querer agregar una referencia propia a la transacción
        // NOTA: La libreria genera una referencia automatica unica para la transacción en forma de UUID
        $trx->setReference("MY-AWESOME-REFERENCE");

        // (OPCIONAL) En caso de querer agregar un porcentaje de impuesto 
        // La libreria busca primero en la configuración, sin embargo si utiliza este metodo puede sobreescribir (para la transacción actual) el porcentaje de impuesto
        // NOTA: Si no se configura un porcentaje de impuesto bien sea por el archivo de configuracion o de manera manual. la libreria emitira una excepcion de tipo PayperConfigException
        $trx->setPayperTax(10);
    });

    // Por ultimo retorne la vista con el formulario para realizar el pago
    return view('vendor.payper.payper_form', ['transaction' => $trxInstance]);


...
use Gjae\LaravelPayper\Contracts\HasTransaction;
use Gjae\LaravelPayper\Traits\HasTransactions;
class class User extends Authenticatable implements HasTransaction
{
    use HasTransactions;
    ...
}



$user = User::first();
Payper::begin(..., $user);


$user1 = User::find(1);
$user2 = User::find(2);

Payper::begin(..., [$user1, $user2]);


$user = User::first();
$user->transactions;


...
use Gjae\LaravelPayper\Contracts\GatewayInterface;

class PayperPaymentsController extends Controller
{
    ...

    public function procesar_transaccion(GatewayInterface $transactionManager)
    {
        ...
        return $transactionManager->exec()->redirectTo([ 'foo' => 'bar' ]);
    }
}


    public function getAuthResponse();           // Retorna el codigo de autorización generado por PAYPER
    public function getBatchId();               // Devuelve el batch_id de la transacción
    public function getExtraData();      // Devuelve los datos adicionales de la transacción (agregados con el metodo setAditionalData)
    public function getResponseDescription();   // Devuelve la descripción de la respuesta
    public function getTranNbr();               // Devuelve el codigo de transacción del banco

    public function exec();             // Ejecuta la transacción con la api del servidor de PAYPER y retorna la instancia en si misma
    public function redirectTo(array $routeParams); // Devuelve la ruta segun el caso, configurados en el archivo config/payper.php   
html
    <form action="{{ route('payper-payment') }}" method="POST" id="pay-form">

    </form>