Skip to content

Criando um pagamento

Vinicius Silva edited this page Oct 7, 2022 · 3 revisions

Uso das classes do pacote é muito simples e você pode escolher qual a sintaxe você deseja utilizar (service ou facade).

Para criar um intenção de pagamento você precisa passar para o método createPaymentIntent do serviço Payment ou facade PagTesouro um array com os dados mínimos para se criar uma pagamento, que geralmente vem de uma request.

<?php
// Exemplo de pagamento utilizando o service Payment
use Vsilva472\PagTesouro\Contracts\Payment;

class MeuController extends Controller {
    public function pagar(Request $request, Payment $pagtesouro)
    {
        $dados    = $request->all();
        $response = $pagtesouro->createPaymentIntent($dados);
        $pagamento= json_decode($response, true);  
        
        dd($pagamento);
    }
}

Se preferir utilize a facade PagTesouro:

<?php
// Exemplo de pagamento utilizando o facade PagTesouro
use Vsilva472\PagTesouro\Facades\PagTesouro;

class MeuController extends Controller {
    public function pagar(Request $request)
    {
        $dados    = $request->all();
        $resposta = PagTesouro::createPaymentIntent($dados);
        $pagamento= json_decode($resposta, true);  
        
        dd($pagamento);
    }
}

Tanto a Facade quanto o serviço utilizam o cliente HTTP do Pacote que já faz a requisição a API do PagTesouro com o Bearer token configurado por você através da diretiva PAGTESOURO_TOKEN que deve estar presente no arquivo .env de sua aplicação Laravel. Você pode utilizar seu próprio cliente HTTP configurando-o no arquivo config/pagtesouro.php

Dados mínimos

Para se criar uma intenção de pagamento deve-se enviar pelo menos os seguintes dados para API do PagTesouro:

Campo Descrição
valorPrincipal Valor a ser pago ex: 15000.99
codigoServico Deve existir no cadastro de serviços da UG e não estar excluído. SISGRU
referencia Consultar o SISGRU (numero de referencia da unidade)
competencia Data no formato MMYYYY
vencimento Data no formato DDMMYYYY
nomeContribuinte Nome de quem está pagando
cnpjCpf Documento de quem está pagando, somente números e sem máscara
urlRetorno URL do sistema cliente para onde o usuário será redirecionado ao selecionar a opção Concluir na tela de confirmação de pagamento do PagTesouro. Esta URL é obrigatória apenas quando for utilizado o parâmetro "modoNavegacao": "1".
modoNavegacao Ao confirmar um pagamento na tela do PagTesouro após ter escolhido a forma de pagamento e o Prestador de Serviços de Pagamento (PSP), este parâmetro define se a página do PSP escolhido será aberta na aba atual ou numa nova aba do navegador.

Valores possíveis do parâmetro modoNavegacao:

1 – Abrir a página do PSP na mesma aba do sistema cliente (valor padrão, caso o parâmetro não seja enviado).

2 – Abrir a página do PSP numa nova aba do navegador.