integrad/mercadopago-sdk
Composer 安装命令:
composer require integrad/mercadopago-sdk
包简介
SDK PHP agnóstico para a API do Mercado Pago (Clientes, Cartões e Pagamentos)
README 文档
README
SDK PHP agnóstico de framework para a API do Mercado Pago. Fornece recursos para Clientes, Cartões e Pagamentos (Pix e Cartão de Crédito), com objetos de resposta tipados (DTOs), tratamento de erros com exceções customizadas e suíte de testes baseada em mocks.
Requisitos mínimos: PHP >= 8.1
Instalação
Via Composer:
composer require integrad/mercadopago-sdk
Configuração
- Crie um arquivo
.envbaseado noexamples/.env.example:
cp examples/.env.example .env
- Edite o
.enve preencha o seu token de acesso:
MERCADOPAGO_TOKEN=SEU_ACCESS_TOKEN_AQUI
- Carregue o autoload do Composer e (opcionalmente) use
vlucas/phpdotenvnos exemplos e testes.
Uso Básico
Instanciando um recurso
use Integrad\MercadoPagoSDK\Customers;
$customers = new Customers($_ENV['MERCADOPAGO_TOKEN']);
Criar um cliente
$customer = $customers->create([
'email' => 'john.doe@example.com',
'first_name' => 'John',
'last_name' => 'Doe',
]);
echo $customer->getFullName(); // "John Doe"
// Atualizar (objeto ativo)
$customer = $customer->update(['first_name' => 'Johnny']);
Listar cartões de um cliente
use Integrad\MercadoPagoSDK\Cards;
$cards = new Cards($_ENV['MERCADOPAGO_TOKEN']);
$list = $cards->listAll('CUSTOMER_ID');
foreach ($list as $card) {
echo $card->getMaskedNumber();
}
Criar um pagamento Pix
use Integrad\MercadoPagoSDK\Payments;
$payments = new Payments($_ENV['MERCADOPAGO_TOKEN']);
$payment = $payments->createPix([
'transaction_amount' => 25.90,
'description' => 'Order #123',
'payer' => ['email' => 'buyer@example.com']
]);
// Renderizar QR Code
echo $payment->getPixQrCodeAsHtmlImage(['alt' => 'Pix QR Code']);
Criar um pagamento com Cartão de Crédito
$payment = $payments->createWithCard([
'token' => 'CARD_TOKEN_FROM_FRONTEND',
'transaction_amount' => 99.90,
'installments' => 1,
'payer' => ['email' => 'buyer@example.com']
]);
if ($payment->isApproved()) {
echo 'Pagamento aprovado!';
}
Tratamento de Erros
Todos os erros HTTP são convertidos para exceções específicas que herdam de MercadoPagoException:
InvalidRequestException(400)AuthenticationException(401/403)NotFoundException(404)ServerException(5xx)
Exemplo:
use Integrad\MercadoPagoSDK\Exceptions\MercadoPagoException;
try {
$customer = $customers->create(['email' => 'invalid']);
} catch (MercadoPagoException $e) {
// Log, tratar e exibir mensagem amigável
error_log($e->getMessage());
$context = $e->getResponseBody(); // corpo JSON de erro (se disponível)
}
Testes Automatizados
Este projeto utiliza Pest e mocks do Guzzle para evitar chamadas reais à API.
- Rodar a suíte:
composer test
Os testes cobrem os métodos públicos dos recursos e validam mapeamento para DTOs e lançamento de exceções customizadas.
Estrutura
src/Client.php: cliente base com Guzzle e mapeamento de exceções.src/Customers.php,src/Cards.php,src/Payments.php: classes de recurso.src/Responses/*: DTOs (imutáveis) para respostas de API, com helpers úteis.src/Exceptions/*: hierarquia de exceções customizadas.tests/: suíte de testes com Pest e mocks do Guzzle.examples/: scripts de exemplo para uso local.
Observações
- SDK agnóstico de framework (sem dependências de Laravel, Symfony etc.).
- Segue PSR-12 e boas práticas de SOLID na arquitetura.
integrad/mercadopago-sdk 适用场景与选型建议
integrad/mercadopago-sdk 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 4 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 10 月 09 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 integrad/mercadopago-sdk 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 integrad/mercadopago-sdk 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 4
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 26
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-10-09