csweb / global-payments
Integration with global payments gateway
Requires
- php: >=7.4
- ext-curl: *
- ext-dom: *
- ext-json: *
- ext-simplexml: *
- guzzlehttp/guzzle: ^7.0.1
- illuminate/validation: ^8.0
- psr/log: ^1.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.18
- phpmd/phpmd: ^2.9
- phpunit/phpunit: ^9.3.3
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-12-29 06:29:07 UTC
README
Este package foi desenvolvido para uso do webservice disponibilizado pela empresa GlobalPayments
Manual de instruções utilizado: https://developers.globalpagamentos.com.br/api-portal/pt-br/content/e-commerce-webservice
#Instalação
Para realizar a instalação, utilize o composer
$ composer require csweb/global-payments
Até o momento, este package é compatível com a versão 5.8 do Laravel. Este pacote pode e deve ser testado fora do laravel framework.
Utilização
Para utilização, você precisa fazer o seguinte
<?php require_once __DIR__ . './vendor/autoload.php'; use CSWeb\GlobalPayments\Transaction; use CSWeb\GlobalPayments\WebService; $transaction = new Transaction([ 'amount' => 10.00, 'order' => $yourOrderNumber, 'cardHolder' => 'Matheus Lopes Santos', 'cardNumber' => '4111 1111 1111 1111', 'cvv' => 123, 'expiryDate' => new DateTime(), 'merchantCode' => $yourMerchantCode, 'merchantTerminal' => $yourMerchantTerminal, 'merchantKey' => $yourMerchantKey, ]); $invoice = (new WebService())->transaction($transaction);
Para cancelamento da cobrança, basta fazer da seguinte forma:
<?php require_once __DIR__ . './vendor/autoload.php'; use CSWeb\GlobalPayments\WebService; use CSweb\GlobalPayments\Cancellation; $cancellation = new Cancellation([ 'amount' => 10.00, 'order' => $yourOrderNumber, // Order number deve ser o mesmo enviado ao executar o pagamento 'merchantCode' => $yourMerchantCode, 'merchantTerminal' => $yourMerchantTerminal, 'merchantKey' => $yourMerchantKey, ]); $cancelledPayment = (new WebService())->cancelTransaction($cancellation);
Em caso de ocorrer qualquer erro durante a chamada, o sistema irá lançar diversas exceptions. Fique de olho nisso.
Em geral, o campo merchantTerminal deve ser preenchido com o valor 001.
A global payments disponibiliza uma key de testes: qwertyasdf0123456789
Para utilização do sandbox, basta chamar a classe webservice
passando como parâmetro o valor true
$invoice = (new WebService(true))->send(...);
Caso contrário, será apontado para o endpoint de produção automaticamente
Contribuições
Todas as contribuições são muito bem vindas. Deixe seu pull request :)