logicssoftware/braspag-php-sdk
Composer 安装命令:
composer require logicssoftware/braspag-php-sdk
包简介
SDK de integração com a API de pagamentos da Braspag
README 文档
README
SDK de integração com a API da Braspag.
Recursos
Este SDK contempla tanto o modelo de pagamento com split (Marketplace), quanto o pagamento direto.
Recursos testados:
- Tokenização de cartão.
- Pagamentos por cartão de crédito.
- Consulta de pagamentos.
- Cancelamento de pagamento.
- Pagamentos recorrentes.
- Com autorização na primeira recorrência.
- Com autorização a partir da primeira recorrência.
- Pagamentos por cartão de débito.
- Pagamentos por boleto.
- Pagamentos por transferência eletrônica.
Observações
Caso seha necessário qualquer tipo de redirecionamento do usuário, o desenvolvedor deverá utilizar o SDK para gerar o pagamento e, com o link retornado pela Braspag, providenciar o redirecionamento do usuário.
Algumas funcionalidades ainda não foram testadas, por isso ainda não estão marcadas em Recursos.
Disposto a ajudar? Faça um fork e envie um pull request com testes e build ok.
Dependências
- PHP >= 7.1
Instalando o SDK
Caso ainda não possua o Composer instalado, siga as instruções em getcomposer.org.
Se já possui um arquivo composer.json, basta executar diretamente em seu terminal:
composer require "logicssoftware/braspag-php-sdk"
Exemplos de uso
Card Tokenization:
Caso não queira guardar os dados sensíveis do cartão, e evitar ter que implementar uma PCI Compliance, você pode gerar um token do cartão para usar posteriormente nas transações:
<?php require 'vendor/autoload.php'; use Braspag\API\Braspag; use Braspag\API\CreditCard; use Braspag\API\Environment; use Braspag\Authenticator; // Cria uma instância do cartão para enviar à Cielo $card = new CreditCard(); $card->setCustomerName('John Rambo'); $card->setCardNumber('0000000000000001'); $card->setHolder('John Rambo'); $card->setExpirationDate('09/2020'); $card->setBrand('Master'); // Configure os tokens de autenticação (adquiridos junto à Braspag) $auth = new Authenticator('CLIENT_SECRET', 'MERCHANT_ID', 'MERCHANT_KEY'); // Solicita a tokenização do card $card = Braspag::shared($auth, Environment::sandbox())->tokenizeCard($card); // Get the card token $cardToken = $card->getCardToken();
Split de Pagamentos - (Marketplace)
Caso queira efetivar um pagamento com split transacional:
<?php require 'vendor/autoload.php'; use Braspag\API\Braspag; use Braspag\API\Cart; use Braspag\API\CreditCard; use Braspag\API\Customer; use Braspag\API\Environment; use Braspag\API\FraudAnalysis; use Braspag\API\Product; use Braspag\API\Sale; use Braspag\API\SplitPayment; use Braspag\Authenticator; use Braspag\API\Payment; $auth = new Authenticator('CLIENT_SECRET', 'MERCHANT_ID', 'MERCHANT_KEY'); $auth->authenticate(Environment::sandbox()); // Crie uma instância de Sale informando o ID do pedido na loja $sale = new Sale('123'); // Crie uma instância de Customer informando os dados do cliente $customer = (new Customer('Teste Accept')) ->setEmail('teste@teste.com.br') ->setIdentity('11111111111') ->setIdentityType('CPF') ; $sale->setCustomer($customer); // Define os Produtos $products[] = (new Product()) ->setName('Produto Teste') ->setSku('123') ->setQuantity(1) ->setUnitPrice(15700) ; $cart = new Cart($products); /** * Informa os dados para análise anti-fraude (obrigatório non caso de Marketplace): * fingerPrintId, valor, Cart e MerchantDefinedFields - esse último precisa ter ao menos o item 1 e 4 da tabela: * @see https://braspag.github.io//manual/antifraude#tabela-31-merchantdefineddata-(cybersource) */ $fraudAnalysis = new FraudAnalysis( "123456654322", 15700, $cart, ['1' => 'Guest', '4' => 'Web'] ); // Defina as regras de split dos subordinados $splitPayments = [ new SplitPayment('SUBORDINATE_MERCHANT_ID', 15700, 3, 10) ]; // Crie uma instância de Payment informando o valor do pagamento sem separador de decimais $payment = $sale->payment(15700, 1, $splitPayments); // Informa os dados de análise de fraude $payment->setFraudAnalysis($fraudAnalysis); // Você pode definir a captura automatica, ou fazê-la depois $payment->setCapture(true); // Crie uma instância de Credit Card utilizando os dados de teste // esses dados estão disponíveis no manual de integração $payment->creditCard("123", CreditCard::VISA) ->setExpirationDate("12/2019") ->setCardNumber("0000000000000001") ->setHolder("Teste Accept") ; // Configure o SDK com seu merchant e o ambiente apropriado para criar a venda $braspag = Braspag::shared($auth, Environment::sandbox()); $sale = $braspag->createSale($sale); // Com a venda criada na Braspag, já temos o ID do pagamento, TID e demais // dados retornados pela Braspag $payment = $sale->getPayment(); // Com o Payment você pode verificar o status if ($payment->getStatus() == Payment::STATUS_AUTHORIZED) { // Usar o Payment ID, TID, etc $paymentId = $payment->getPaymentId(); }
Consulta de pagamentos
Caso queira buscar uma venda para pegar os dados de um pagamento direto na Braspag:
<?php require 'vendor/autoload.php'; use Braspag\API\Braspag; use Braspag\API\Environment; use Braspag\Authenticator; // Configure os tokens de autenticação (adquiridos junto à Braspag) $auth = new Authenticator('CLIENT_SECRET', 'MERCHANT_ID', 'MERCHANT_KEY'); // Consulta a venda informando o PaymentId $sale = Braspag::shared($auth, Environment::sandbox())->getSale(123304883); $payment = $sale->getPayment();
Cancelamento de pagamento
Caso queira efetivar o cancelamento total de um pagamento:
<?php require 'vendor/autoload.php'; use Braspag\API\Braspag; use Braspag\API\Payment; use Braspag\API\Environment; use Braspag\Authenticator; // Configure os tokens de autenticação (adquiridos junto à Braspag) $auth = new Authenticator('CLIENT_SECRET', 'MERCHANT_ID', 'MERCHANT_KEY'); // Solicita o cancelamento do pagamento informando o PaymentId $payment = Braspag::shared($auth, Environment::sandbox())->cancelSale(123304883); // Verifica se tudo ocorreu bem $success = $payment->getStatus() == Payment::STATUS_VOIDED;
Produtos e Bandeiras suportadas e suas constantes
| Bandeira | Constante | Crédito à vista | Crédito parcelado Loja | Débito | Voucher |
|---|---|---|---|---|---|
| Visa | CreditCard::VISA | Sim | Sim | Sim | Não |
| Master Card | CreditCard::MASTERCARD | Sim | Sim | Sim | Não |
| American Express | CreditCard::AMEX | Sim | Sim | Não | Não |
| Elo | CreditCard::ELO | Sim | Sim | Não | Não |
| Diners Club | CreditCard::DINERS | Sim | Sim | Não | Não |
| Discover | CreditCard::DISCOVER | Sim | Não | Não | Não |
| JCB | CreditCard::JCB | Sim | Sim | Não | Não |
| Aura | CreditCard::AURA | Sim | Sim | Não | Não |
Manual
Para mais informações sobre a integração com a API da Braspag, vide o manual em: Split de Pagamentos | Pagador
Inspired by Cielo SDK.
logicssoftware/braspag-php-sdk 适用场景与选型建议
logicssoftware/braspag-php-sdk 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 255 次下载、GitHub Stars 达 11, 最近一次更新时间为 2019 年 06 月 07 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「php」 「payment」 「sdk」 「split」 「braspag」 「marketplace」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 logicssoftware/braspag-php-sdk 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 logicssoftware/braspag-php-sdk 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 logicssoftware/braspag-php-sdk 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Alfabank REST API integration
Zero-dependency raw PHP DNS resolver, domain-ownership verification, and intoDNS/MxToolbox-style diagnostics. Queries authoritative nameservers directly over sockets — never trusts the recursive cache for ownership checks.
A lightweight plain-PHP framework for database-backed CRUD APIs.
bughq error tracking - PHP SDK
TrinkPOS Sanal POS (Virtual POS) API client for PHP
ABsurge PHP SDK for feature flags and A/B testing
统计信息
- 总下载量: 255
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 11
- 点击次数: 8
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-06-07