PHP code example of raulingg / laravel-payu

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

    

raulingg / laravel-payu example snippets




namespace App\Http\Controllers;

use Raulingg\LaravelPayU\Contracts\PayuClientInterface;

class PaymentsController extends Controller
{

    public function doPing(PayuClientInterface $payuClient)
    {
        $payuClient->doPing(function($response) {
            $code = $response->code;
            // ... revisar el codigo de respuesta
        }, function($error) {
            // ... Manejo de errores PayUException
        });
    }
    




namespace App\Http\Controllers;

use Raulingg\LaravelPayU\Contracts\PayuClientInterface;
use PayUParameters;

class PaymentsController extends Controller
{

    public function pay(PayuClientInterface $payuClient)
    {
        // Estos datos son de prueba, estos deben ser asignados según tus requerimientos
        $data = [
            PayUParameters::VALUE => request()->input('amount'),
            PayUParameters::DESCRIPTION => 'Payment cc test',
            PayUParameters::REFERENCE_CODE => uniqid(time()),

            PayUParameters::CURRENCY => 'PEN',

            PayUParameters::PAYMENT_METHOD => request()->input('card_type'), // VISA, MASTERCARD, ...

            PayUParameters::CREDIT_CARD_NUMBER => request()->input('card_number') // '4907840000000005',
            PayUParameters::CREDIT_CARD_EXPIRATION_DATE => request()->input('card_expiration_date'),
            PayUParameters::CREDIT_CARD_SECURITY_CODE => request()->input('card_security_code'),

            PayUParameters::INSTALLMENTS_NUMBER => 1,

            PayUParameters::PAYER_NAME => 'APPROVED',
            PayUParameters::PAYER_DNI => '458784778',

            PayUParameters::IP_ADDRESS => '127.0.0.1',
        ];

        $payuClient->pay($data, function($response) {
            if ($response->code == 'SUCCESS') {        
                // ... El código para el caso de éxito
            } else {
            //... El código de respuesta no fue exitoso
            }
        }, function($error) {
            // ... Manejo de errores PayUException, InvalidArgument
        });
    }




use Raulingg\LaravelPayU\Contracts\PayuClientInterface as PayuClient;

...
$payuClient = app()->make(PayuClient::class);
$payuOrderId = 123;

$payuClient->searchById($payuOrderId, function($response, $order) {
    // ... Usar la información de respuesta
}, function($error) {
    // ... Manejo de errores PayUException, InvalidArgument
});

$payuReferenceCode = "2014-05-06 06:14:19";

$payuClient->searchByReference($payuReferenceCode, function($response) {
    // ... Usar la información de respuesta
}, function($error) {
    // ... Manejo de errores PayUException, InvalidArgument
});

$payuTransactionId = '960b1a5d-575d-4bd9-927e-0ffbf5dc4296';

$payuClient->searchByTransaction($payuTransactionId, function($response) {
    // ... Usar la información de respuesta
}, function($error) {
    // ... Manejo de errores PayUException, InvalidArgument
});

bash
php artisan vendor:publish