astrotechlabs/pay2m-sdk

用于整合Pix Copia e Cola与Pay2M的包装器

1.0 2024-05-14 12:53 UTC

This package is auto-updated.

Last update: 2024-09-14 15:29:08 UTC


README

这是一个包含Pay2M API抽象的仓库,简化了PIX Copia e Cola的创建。

安装

推荐通过 composer 安装此包。

安装,只需执行以下命令

$ php composer.phar require astrotechlabs/pay2m-sdk

或在您的 composer.json 文件的 require 部分添加以下行

"astrotechlabs/pay2m-sdk": "^1.1"

如何使用?

使用最低要求

创建收费

use AstrotechLabs\Pay2MSdk\Pay2MGateway;
use AstrotechLabs\Pay2MSdk\Pay2MGatewayParams;
use AstrotechLabs\Pay2MSdk\CreatePixCharge\Dto\PixData;
use AstrotechLabs\Pay2MSdk\CreatePixCharge\Dto\GeneratorData;

// Crie uma instância de Pay2MGateway utilizando como parâmetros o seu ClientId e sua ClientSecret que podem ser adquiridos em seu painel PAY2M
$createPixChargeGateway = new Pay2MGateway(new Pay2MGatewayParams($_ENV['CLIENT_ID'], $_ENV['CLIENT_SECRET']));

// Chame o método createCharge() para criar uma cobrança, este método gera o token de autenticação e cria a cobrança na Pay2M
$response = $createPixChargeGateway->createCharge(new PixData(
    generator: new GeneratorData(
        name: 'Dev Teste', // STRING | Deve ser o mesmo nome que está na sua conta Pay2M
        document: '###########' // STRING | Deve ser o mesmo documento da sua conta Pay2M
    ),
    value: 1, // FLOAT | Valor mínimo 1;
));

print_r($response);

输出

[
   "gatewayId" => "D77A2489850C4C2F93942BAFEDB419EC697", 
   "copyPasteUrl" => "00020101021226860014br.gov.bcb.pix256.........99", 
   "details" => [
         "reference_code" => "D77A2489850C4C2F93942BAF......", 
         "content" => "00020101021226860014br.gov.bcb.pix2........99" 
      ], 
   "qrCode" => "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATEAAAExCAIAAACbBwI/A......v1AwD/IZOQRSYhi0xCFpmELDIJWWQSssgkZJFJyCKTkEUmIYtMQhaZhCwyCVlkErLIJGSRScgik5BFJiHLPzd...............QSssgkZJFJyCKTkEUmIYtMQhaZhCwyCVlkErLIJGSRScgik5BFJiHLv+XfD4wqDsUhAAAAAElFTkSuQmCC" 
]; 
 

替代方案

使用手动验证创建收费

use AstrotechLabs\Pay2MSdk\Pay2MGateway;
use AstrotechLabs\Pay2MSdk\Pay2MGatewayParams;
use AstrotechLabs\Pay2MSdk\CreatePixCharge\Dto\PixData;
use AstrotechLabs\Pay2MSdk\CreatePixCharge\Dto\GeneratorData;

// Crie uma instância de Pay2MGateway utilizando como parâmetros o seu ClientId e sua ClientSecret que podem ser adquiridos em seu painel PAY2M
$createPixChargeGateway = new Pay2MGateway(new Pay2MGatewayParams($_ENV['CLIENT_ID'], $_ENV['CLIENT_SECRET']));

// Gere o token manualmente e armazene-o
$token = $createPixChargeGateway->getAuthToken();

// Chame o método createCharge() para criar uma cobrança e passe o parâmetro token
$response = $createPixChargeGateway->createCharge(new PixData(
    generator: new GeneratorData(
        name: 'Dev Teste', // STRING | Deve ser o mesmo nome que está na sua conta Pay2M
        document: '###########', // STRING | Deve ser o mesmo documento da sua conta Pay2M
        manualToken: true, // BOOL | O parâmetro como true irá cobrar o token e utilizará o mesmo para gerar a cobrança
        token: $token // STRING | Deve ser o token gerado pelo metodo getAuthToken() da classe Pay2MGateway
    ),
    value: 1, // FLOAT | Valor mínimo 1;
));

print_r($response);

输出

[
   "gatewayId" => "D77A2489850C4C2F93942BAFEDB419EC697", 
   "copyPasteUrl" => "00020101021226860014br.gov.bcb.pix256.........99", 
   "details" => [
         "reference_code" => "D77A2489850C4C2F93942BAF......", 
         "content" => "00020101021226860014br.gov.bcb.pix2........99" 
      ], 
   "qrCode" => "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATEAAAExCAIAAACbBwI/A......v1AwD/IZOQRSYhi0xCFpmELDIJWWQSssgkZJFJyCKTkEUmIYtMQhaZhCwyCVlkErLIJGSRScgik5BFJiHLPzd...............QSssgkZJFJyCKTkEUmIYtMQhaZhCwyCVlkErLIJGSRScgik5BFJiHLv+XfD4wqDsUhAAAAAElFTkSuQmCC" 
]; 
 

贡献

欢迎Pull Request。对于重要更改,请先创建一个问题来讨论您希望进行哪些更改。

请确保根据需要更新测试。

许可协议

此包在MIT 许可下发布。有关详细信息,请参阅LICENSE 包。