Resolvi escrever esse post para explicar como integrar sua aplicação Laravel com o PagSeguro a partir da biblioteca Laravel PagSeguro.
Galera quando resolvi criar a Laravel PagSeguro foi com o intuito de tornar a vida de quem deseja integrar a loja, site ou etc ao PagSeguro de uma forma mais fácil e sem complicação.
Basicamente o que você precisa para criar seus pedidos na Laravel PagSeguro e criar seu array de itens e criar as configurações de sua loja e enviar a requisição de compra.
Instalação
Abra o arquivo composer.json e insira a seguinte instrução:
"require": { "michael/laravelpagseguro": "dev-master" }
Após inserir no require o Laravel PagSeguro, você deverá executar o comando:
composer update
Ou execute o comando:
composer require michael/laravelpagseguro
Configuração do Service Provider
Abra o arquivo config/app.php e adicione no array providers a seguinte instrução:
laravelpagseguroPagseguroServiceProvider::class
Aliases do package
Em seu arquivo config/app.php adicione no array aliases a seguinte instrução:
'PagSeguro' => laravelpagseguroFacadesPagSeguro::class
Criação do configurador
Agora você irá executar o comando:
php artisan vendor:publish
Se tudo ocorreu bem, a seguinte mensagem sera exibida:
Copied File [/vendor/michael/laravelpagseguro/src/laravel/pagseguro/config/laravelpagseguro.php] To [/config/laravelpagseguro.php]
Ajuste da configuração
Abra o arquivo config/laravelpagseguro.php altere o token e também o e-mail informando o da sua loja:
'credentials' => array(//SETA AS CREDENCIAIS DE SUA LOJA 'token' => null, 'email' => null, )
Proxy
Caso você precise de proxy para utilizar a Laravel PagSeguro configure com essas chaves:
'proxy' => [//CONFIGURAÇÃO PARA PROXY 'user' => NULL, 'password' => NULL, 'url' => NULL, 'port' => NULL, 'protocol' => NULL ],
Exemplo de envio de requisição de compra
O array de envio deverá ser montado com a seguinte estrutura:
$dados = array( 'items' => array( 'itemId1' => array( 'itemId1' => '0001', 'itemDescription1' => 'Notebook Prata 1as', 'itemQuantity1' => '1', 'itemAmount1' => '12.00', 'itemWeight1' => '1000', 'itemShippingCost1' => null ), 'itemId2' => array( 'itemId2' => '0002', 'itemDescription2' => 'Notebook Prata 2', 'itemQuantity2' => '2', 'itemAmount2' => '5.00', 'itemWeight2' => '100', 'itemShippingCost2' => null ) ), 'address' => array( 'shippingType' => 1, 'postalCode' => '04433130', 'street' => 'Rua benjamin vieira da silva', 'number' => '1077', 'complement' => '', 'district' => 'Centro', 'city' => 'São Paulo', 'state' => 'SP', 'country' => 'BRA', ), 'sender' => array( 'senderName' => 'Teste de compra', 'senderCPF' => '27781466870', 'senderEmail' => '[email protected]', 'phone' => [ 'senderAreaCode' => 11, 'senderPhone' => '5614-9399', ], ), 'currency' => 'BRL' );
Após setar o array, utilize o método: setRequest para criar a requisição de envio:
$request = PagSeguro::setRequest($dados);
Para confirmar o envio utilize o método: sendRequest da seguinte forma:
$request->sendRequest();
Para obter o código de retorno da compra, utilize o método: getCode sob o objeto request que é responsável pela sua requisição:
$code = $request->request->getCode();
Exemplo de URL de requisição com a variável $code
echo "<a target="_blank" href="https://pagseguro.uol.com.br/v2/checkout/payment.html?code=$code"> Pagamento </a>";
Galera tem muito o que fazer ainda na Laravel PagSeguro e quem se sentir
a vontade de ajudar o projeto será bem vindo e obrigado a todos.
Git dos atuais colaboradores da Laravel PagSeguro:
Powered by WPeMatico