承接 canislupus/api-client-pagseguro 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

canislupus/api-client-pagseguro

Composer 安装命令:

composer require canislupus/api-client-pagseguro

包简介

Client for PagSeguro API

README 文档

README

Cliente para integração com a API do sistema PagSeguro. Conheça o PagSeguro

Este cliente se refere à mais recente API do PagSeguro, que está documentada em https://dev.pagbank.uol.com.br/reference/introducao

Instalação

Composer

composer require canislupus/api-client-pagseguro

Utilização

use CanisLupus\ApiClients\PagSeguro\v1\PagSeguroApiClient;
use CanisLupus\ApiClients\PagSeguro\v1\Enums\EnvironmentEnum;
use CanisLupus\ApiClients\PagSeguro\v1\PagSeguroApiConfig;
use CanisLupus\ApiClients\PagSeguro\v1\Exceptions\PagSeguroApiException;

// Inicialize o cliente passando um objeto de configuração
$clientPagSeguro = new PagSeguroApiClient(
    new PagSeguroApiConfig(EnvironmentEnum::Sandbox, '#SEU-TOKEN-PAGSEGURO#')
);

// Use o cliente
try {
    // Por exemplo, para criar uma chave-pública
    $newPublicKey = $clientPagSeguro->publicKeys->create();
    
    // Para criar um pedido (veja nos exemplos abaixo como passar os $dadosPedido)
    $newOrder = $clientPagSeguro->orders->create($dadosPedido);
    
} catch (PagSeguroApiException $e) {
    die($e->getMessage());
}

Pode-se criar um pedido passando um objeto OrderResource construído

$orderResource = new OrderResource();
$orderResource->setReferenceId('ex-00001');
$orderResource->setCustomer(new CustomerResource(
    'Jose da Silva',
    'c96827089160215759351@sandbox.pagseguro.com.br',
    '12345678909'
));
$orderResource->setItems([
    new ItemResource('item-id-001', 'Item 01', 2, 4500), // 4500 é o valor referente à R$ 45,00
    new ItemResource('item-id-002', 'Item 02', 1, 6599) // 6599 é o valor referente à R$ 65,99
]);
$orderResource->setNotificationUrls(['https://meusite.com/notificacoes1']);
$orderResource->setCharges([
    (new ChargeResource())
        ->setReferenceId('charge-id-001')
        ->setDescription('descricao da cobranca')
        ->setAmount(new AmountResource(15599, 'BRL')) // 15599 é o valor referente à R$ 155,99
        ->setPaymentMethod(
            (new PaymentMethodResource(PaymentMethodEnum::CREDIT_CARD))
                ->setInstallments(1)
                ->setCard(
                    (new CardResource())
                        ->setHolder(new HolderResource("Jose da Silva"))
                        // Pode passar diretamente os dados do cartão
                        ->setNumber('4242424242424242')->setExpMonth('12')->setExpYear('2032')
                        // Ou pode passar o cartão criptografado pelo javascript do PagSeguro
                        // ->setEncrypted($encryptedCard)
                )
        )
]);

$newOrder = $clientPagSeguro->orders->create($orderResource);

Ou pode-se criar um pedido passando diretamente o array da estrutura requerida

$newOrder = $clientPagSeguro->orders->create([
    'reference_id' => 'ex-00001',
    'customer' => [
        'name' => 'Jose da Silva',
        'email' => 'c96827089160215759351@sandbox.pagseguro.com.br',
        'tax_id' => '12345678909',
    ],
    'items' => [
        [
            'reference_id' => 'item-id-001',
            'name' => 'Item 01',
            'quantity' => '1',
            'unit_amount' => '15599', // Significa R$ 155,99
        ]
    ],
    'notification_urls' => ['https://meusite.com/notificacoes'],
    'charges' => [
        [
            'reference_id' => 'charge-id-001',
            'description' => 'descricao da cobranca',
            'amount' => [
                'value' => '15599', // Significa R$ 155,99
                'currency' => 'BRL',
            ],
            'payment_method' => [
                'type' => 'CREDIT_CARD',
                'installments' => '1',
                'capture' => true,
                'card' => [
                    'holder' => [
                        'name' => "Jose da Silva",
                    ],
                    'store' => false,
                    
                    // Pode passar diretamente os dados do cartão
                    'number' => '4242424242424242',
                    'exp_month' => '12',
                    'exp_year' => '2032',

                     // Ou pode passar o cartão criptografado pelo javascript do PagSeguro
                     //'encrypted' => $encryptedCard,
                ],
            ]
        ]
    ],
]);

Mais exemplos

Mais exemplos podem ser encontrados na pasta docs/examples

Abrangência

Total de Endpoints 35
Total de Endpoints abrangidos 6
Percentual abrangido 17,14%

Lista de API's

Grupo Recurso Situação
Chaves Públicas [POST] Criar chave pública 100%
Chaves Públicas [GET] Consultar chave pública 100%
Chaves Públicas [PUT] Alterar chave pública 0%
Connect [POST] Criar aplicação 0%
Connect [GET] Consultar aplicação 0%
Connect [POST] Solicitar autorização via SMS 0%
Connect [POST] Obter access token 0%
Connect [POST] Obter access token para transferência 0%
Connect [POST] Renovar access token 0%
Connect [POST] Revogar access token 0%
Certificado Digital [POST] Criar certificado digital 0%
Cadastro [POST] Criar conta 0%
Cadastro [GET] Consultar conta 0%
Pedidos & Pagamentos (Order) [POST] Criar pedido 100%
Pedidos & Pagamentos (Order) [GET] Consultar pedido 100%
Pedidos & Pagamentos (Order) [GET] Consultar pedido através de parâmetros 0%
Pedidos & Pagamentos (Order) [POST] Pagar pedido 0%
Pedidos & Pagamentos (Order) [GET] Consultar pagamento 100%
Pedidos & Pagamentos (Order) [POST] Capturar pagamento 0%
Pedidos & Pagamentos (Order) [POST] Cancelar pagamento 0%
Pedidos & Pagamentos (Order) [POST] Criar sessão de autenticação 3DS 0%
Pedidos & Pagamentos (Order) [GET] Consultar juros de uma transação 100%
Pedidos & Pagamentos (Order) [POST] Validar e armazenar um cartão no PagBank 0%
Pedidos com Divisão do Pagamento [POST] Criar um pedido com divisão do pagamento 0%
Pedidos com Divisão do Pagamento [GET] Consultar um pedido com divisão do pagamento 0%
Pedidos com Divisão do Pagamento [GET] Consultar dados da divisão do pagamento 0%
Pedidos com Divisão do Pagamento [POST] Cancelar um pedido com divisão do pagamento 0%
Transferência [POST] Criar transferência 0%
Transferência [GET] Consultar transferência pelo código da transação 0%
Transferência [GET] Consultar transferência pelo ID do cliente ou período 0%
Transferência [GET] Consultar transferência pelo ID 0%
Checkout PagBank [POST] Criar um Checkout 0%
Checkout PagBank [GET] Consultar um Checkout 0%
Checkout PagBank [POST] Ativar um Checkout 0%
Checkout PagBank [POST] Inativar um Checkout 0%

Licença

  • MIT License

canislupus/api-client-pagseguro 适用场景与选型建议

canislupus/api-client-pagseguro 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 14 次下载、GitHub Stars 达 0, 最近一次更新时间为 2023 年 10 月 14 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「ecommerce」 「api」 「client」 「payments」 「Pagseguro」 「canis lupus」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 canislupus/api-client-pagseguro 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 canislupus/api-client-pagseguro 我们能提供哪些服务?
定制开发 / 二次开发

基于 canislupus/api-client-pagseguro 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 14
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 11
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-10-14