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.

Artigos Relacionados

Criar uma conta no TikTok Tecnologia

November 07, 2024