Integrando e2Payments com Laravel: Um Guia Detalhado
O Laravel, conhecido por sua elegância e facilidade de uso, é uma escolha popular para desenvolvimento web. Integrar o e2Payments com Laravel proporciona uma maneira eficiente de processar pagamentos em suas aplicações PHP. Neste tutorial, vamos explorar como realizar essa integração passo a passo, desde a obtenção das credenciais até a execução de transações bem-sucedidas.
Passo 1: Obtendo Credenciais da API
Antes de começarmos, acesse o painel administrativo do Explicador.co.mz para obter seu `client_id` e `client_secret`. Essas credenciais são cruciais para autenticar suas chamadas à API do e2Payments, esses dados são encontrados no site:https:e2payments .explicador.co.mz.
Passo 2: Configurando as Credenciais no Laravel
No Laravel, é prático armazenar as credenciais em variáveis de ambiente. Abra seu arquivo `.env` e adicione as seguintes linhas, substituindo `seu_client_id` e `seu_client_secret` pelos valores correspondentes:
env
E2PAYMENTS_CLIENT_ID=seu_client_id
E2PAYMENTS_CLIENT_SECRET=seu_client_secret
Passo 3: Instalando o Pacote Guzzle HTTP
O Laravel utiliza o pacote Guzzle para realizar chamadas HTTP. Caso ainda não tenha instalado, execute o seguinte comando no terminal:
bash
composer require guzzlehttp/guzzle
Passo 4: Criando uma Rota e Controlador
Crie uma rota e um controlador para lidar com as chamadas à API. Execute o seguinte comando Artisan para criar um controlador:
bash
php artisan make:controller E2PaymentsController
Passo 5: Implementando a Integração no Controlador
No controlador recém-criado, implemente a lógica para obter o token de acesso e realizar uma transação. Aqui está um exemplo simplificado:
php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use GuzzleHttp\Client;
class E2PaymentsController extends Controller
{
public function realizarTransacao()
{
// Obtendo token de acesso
$token = $this->gerarToken();
// Realizando transação
$response = $this->realizarTransacaoC2B($token);
return response()->json($response);
}
private function gerarToken()
{
$client = new Client();
$response = $client->post('https://e2payments.explicador.co.mz/oauth/token', [
'form_params' => [
'grant_type' => 'client_credentials',
'client_id' => env('E2PAYMENTS_CLIENT_ID'),
'client_secret' => env('E2PAYMENTS_CLIENT_SECRET'),
],
]);
$tokenData = json_decode($response->getBody(), true);
return $tokenData['access_token'];
}
private function realizarTransacaoC2B($token)
{
$client = new Client();
$response = $client->post('https://e2payments.explicador.co.mz/v1/c2b/mpesa-payment/{wallet_id}', [
'headers' => [
'Authorization' => 'Bearer ' . $token,
'Accept' => 'application/json',
'Content-Type' => 'application/json',
],
'json' => [
'client_id' => env('E2PAYMENTS_CLIENT_ID'),
'amount' => '30',
'phone' => '848512345',
'reference' => 'PrimeiroPagamento',
],
]);
return json_decode($response->getBody(), true);
}
}
Conclusão:
Ao seguir este guia, você terá integrado com sucesso o e2Payments em sua aplicação Laravel. Aproveite a simplicidade do Laravel e a eficiência do e2Payments para proporcionar uma experiência de pagamento fluida e segura aos seus usuários. Experimente e descubra as possibilidades que essa integração pode oferecer ao seu projeto.