Ixonn Group

Módulo Como Gateway de Pagamento

You are here:
< All Topics
Este recurso está disponível na versão 2.3.4


Antes do início, presumimos que você já esteja familiarizado com o básico dos módulos, criou um módulo em branco com todos os cabeçalhos necessários e o módulo é ativado e mostrado na lista de módulos.

  • Nos módulos / [module_name] / crie uma pasta chamada bibliotecas
  • Nos módulos / [module_name] / libraries, crie um nome de classe e.q. Example_gateway.php, o nome do arquivo deve terminar com _gateway.php
  • Veja abaixo Implementação de amostra
  • No arquivo init do módulo, registre o gateway de pagamento com o seguinte código:
register_payment_gateway (‘example_gateway’, ‘[module_name]’);


Substitua [module_name] pelo nome real do sistema do módulo e example_gateway pelo nome da classe do módulo (em minúsculas).

Se você configurou tudo como deveria, navegue para Configuração-> Configurações-> Gateways de pagamento, e poderá ver seu gateway de exemplo listado lá com as opções especificadas.

Além disso, dependendo da API do gateway, você pode criar um controlador para redirecionar a partir do método da classe de gateway process_payment.

Implementação de amostra

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.

Antes de iniciar, certifique-se de definir o modo de desenvolvimento para ver quaisquer erros e avisos de descontinuação de funções / ganchos.

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

<? 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 3 tipos de campo são aceitos para gateway

         *

         * ‘Type’ => ‘yes_no’

         * ‘Type’ => ‘input’

         * ‘Type’ => ‘textarea’

         *

         * /

        $ 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”

            ),

        ));

 

    }

 

    / **

     * 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.

Artigos Relacionados

Table of Contents
Scroll Up