Ixonn Group

Criar Gateway de Pagamento Personalizado

You are here:
< All Topics
A implementação abaixo é compatível com a versão 2.3.2 ou superior.


Criar um novo gateway de pagamento on-line exigirá um conhecimento php mais avançado e também um conhecimento do gateway de pagamento e dos requisitos.

Como o Ixonn usa a estrutura Codeigniter para integrar o gateway de pagamento, você precisará criar 1 biblioteca de gateway (configuração e método de processo do gateway) e 1 controlador de gateway (para solicitações HTTP, formulário de exibição etc.), você também pode dar uma olhada no outro arquivos de gateways para ter uma ideia.

Na área HTML da fatura, quando um cliente clica no botão PAY NOW, chamamos 1 método da biblioteca de gateway que processará tudo o que é necessário para esse gateway eq redirecionar para o site do gateway e passar parâmetros ou redirecionar para o controlador e mostrar o formulário etc. …

Simplificamos um pouco o processo de criação de novos gateways e.q. o gateway será exibido automaticamente em Configuração-> Configurações-> Gateways de pagamento, campos de criptografia, 1 função exclusiva de cada biblioteca de gateway para chamar, etc … mas isso ainda exigirá esforço para começar.

As principais pastas que você usará ao criar um novo gateway são:

  1. application / libraries / gateways – Esse arquivo contém a lógica principal das configurações de eq do gateway, adicionando o gateway ao sistema, a principal função process_payment que é chamada sempre que um cliente clica no botão PAY NOW.
  2. application / gateways / controllers – Esta pasta é usada caso você precise criar URLs válidos para o seu gateway eq. webhook ou para obter a resposta HTTP da solicitação de gateway. Nesse caso, você deve criar um controlador Codeigniter lá.
Antes de iniciar, certifique-se de definir o modo de desenvolvimento para ver quaisquer erros e avisos de descontinuação de funções / ganchos.

A classe PHP

Vamos supor que, neste exemplo, o nome do seu gateway seja Exemplo

Em application / libraries / gateways / crie o arquivo Example_gateway.php com o seguinte conteúdo:

<? php

 

definido (‘BASEPATH’) ou sair (‘Não é permitido acesso direto ao script’);

 

classe Example_gateway estende App_gateway

{

    função pública __construct ()

    {

        / **

        * Chame a função App_gateway __construct

        * /

        parent :: __ construct ();

 

        / **

         * ID exclusivo do gateway – NECESSÁRIO

         *

         * * O ID deve ser alfanumérico

         * * O nome do arquivo (Example_gateway.php) e o nome da classe devem conter o ID como ID_gateway

         * * Nesse caso, nosso ID é “exemplo”

         * * O nome do arquivo será Example_gateway.php (a primeira letra está em maiúscula)

         * * O nome da classe será Example_gateway (a primeira letra está em maiúscula)

         * /

        $ this-> setId (‘exemplo’);

 

        / **

         * REQUERIDOS

         * Nome do gateway

         * /

        $ this-> setName (‘Exemplo’);

 

        / **

         * Adicione configurações de gateway

         * Você pode adicionar outras configurações aqui para se adequar aos seus requisitos de gateway

         *

         * Atualmente, apenas 2 tipos de campo são aceitos para gateway

         *

         * ‘Type’ => ‘yes_no’

         * ‘Type’ => ‘input’

         * /

        $ this-> setSettings (array (

            matriz (

                “Nome” => “api_secret_key”,

                “Criptografado” => verdadeiro,

                ‘Label’ => ‘API KEY’,

                ‘Type’ => ‘input’,

            ),

            matriz (

                ‘Name’ => ‘api_publishable_key’,

                ‘Label’ => ‘SECRET KEY’,

                ‘Type’ => ‘input’

            ),

            matriz (

                ‘Nome’ => ‘moedas’,

                “Label” => “settings_paymentmethod_currencies”,

                “Valor_ padrão” => “USD, CAD”

            ),

        ));

 

        / **

         * REQUERIDOS

         * Gateway de gancho com outros modos de pagamento online

         * /

        hooks () -> add_filter (‘app_payment_gateways’, [$ this, ‘initMode’]);

    }

 

    / **

     * Cada vez que um cliente clica no botão PAY NOW na área HTML da fatura, o script processará o pagamento por meio dessa função.

     * Você pode mostrar formulários aqui, redirecionar para o site do gateway, redirecionar para o controlador Codeigniter etc.

     * @param array $ data – Contém o valor total a ser pago e as informações da fatura

     * @return mixed

     * /

    função pública process_payment ($ data)

    {

        var_dump ($ data);

        morrer;

    }

}

Existem comentários sobre as funções e variáveis, você deve dedicar algum tempo para lê-las, pois elas são importantes se você deseja ajudá-lo a começar.

Além disso, você pode dar uma olhada no outro exemplo de gateway em application / libraries / gateways ou application / controllers / gateways.

Agora, depois de criar e salvar o arquivo, navegue para Configuração-> Configurações-> Gateways de pagamento e você verá o Exemplo de gateway listado; tudo depende dos requisitos do gateway de pagamento.

Artigos Relacionados

Table of Contents
Scroll Up