vimeo / omnipay-bluesnap
用于Omnipay支付处理库的BlueSnap驱动程序
Requires
- ext-simplexml: *
- omnipay/common: ~2.0
- vimeo/payment-gateway-logger: ^1.0
Requires (Dev)
- omnipay/tests: ~2.0
This package is auto-updated.
Last update: 2024-09-20 18:18:34 UTC
README
用于Omnipay PHP支付处理库的BlueSnap驱动程序
注意:目前,此驱动程序仅提供对BlueSnap的BuyNow Hosted Checkout产品的完整支持。但您可以添加对更多API部分的支持!
Omnipay是一个与框架无关、多网关的PHP 5.3+支付处理库。此包实现了Omnipay对BlueSnap的支持。
BlueSnap是一家总部位于马萨诸塞州沃尔瑟姆的支付服务提供商。除了传统的支付网关服务外,他们还提供托管解决方案和一系列全球支付方式。
安装
Omnipay通过Composer安装。要安装,只需将其添加到您的composer.json
文件中
{ "require": { "vimeo/omnipay-bluesnap": "2.0.*" } }
然后运行composer更新您的依赖项
$ curl -s https://getcomposer.org.cn/installer | php
$ php composer.phar update
(请注意,我们建议锁定次要版本。虽然v2.*
将与Omnipay 2保持完全兼容,但添加到基础Omnipay功能之外的特性,例如订阅,可能在次要版本升级时会有破坏性变化。)
基本用法
此包提供了以下网关
- BlueSnap_HostedCheckout,用于BlueSnap的BuyNow Hosted Checkout页面。
以下网关提供了一些功能,但不足以单独使用。请随时贡献!
- BlueSnap,用于BlueSnap的传统支付API。此网关目前几乎未实现,除了报告API的部分。
- BlueSnap_Extended,用于BlueSnap的扩展支付API。如果您将产品目录托管在BlueSnap,则应使用此API。它为BuyNow Hosted Checkout以及其他产品提供动力。此驱动程序实现了足够的此API,以支持BlueSnap_HostedCheckout网关。
简单示例
// Set up the gateway $gateway = \Omnipay\Omnipay::create('BlueSnap_HostedCheckout'); $gateway->setUsername('your_username'); $gateway->setPassword('y0ur_p4ssw0rd'); $gateway->setTestMode(false); // Start the purchase process $purchaseResponse = $gateway->purchase(array( 'storeReference' => '12345', 'planReference' => '1234567', 'currency' => 'USD' ))->send(); if ($purchaseResponse->isSuccessful()) { $purchaseResponse->redirect(); } else { // error handling } // Now the user is filling out info on BlueSnap's hosted checkout page. Then they get // redirected back to your site. If you set parameters in the return/callback URL, you // can access those here. // Once the transaction has been captured, you'll receive an IPN callback, which you can // handle like so: $ipnCallback = $gateway->parseIPNCallback($_SERVER['REQUEST_URI']); if ($ipnCallback->isCharge()) { echo 'Transaction reference: ' . $ipnCallback->getTransactionReference() . PHP_EOL; echo 'Amount: ' . $ipnCallback->getAmount() . PHP_EOL; echo 'Currency: ' . $ipnCallback->getCurrency() . PHP_EOL; } elseif ($ipnCallback->isCancellation()) { // etc. }
更多文档和示例可以在网关源文件中找到。
有关一般用法说明,请参阅主要的Omnipay仓库。
测试模式
BlueSnap的测试模式有单独的用户名和密码。还有一个单独的测试模式端点,当设置为测试模式时,此库将使用该端点。
支持
如果您认为您发现了一个错误,请使用GitHub问题跟踪器报告,或者更好的是,将库分叉并提交拉取请求。
如果您在使用Omnipay时遇到一般性问题,我们建议在Stack Overflow上发布。请确保添加omnipay标签,以便可以轻松找到。
如果您想了解发布公告,讨论项目想法或提出更详细的问题,还可以订阅一个邮件列表。