用于处理Global Payments付款的PHP SDK,包括Heartland Payment Systems和Realex Payments


README

Global Payments logo

全球支付与Heartland PHP SDK

此SDK使您轻松地将PHP应用程序与我们的无卡支付和有卡支付API集成。

解决方案

通用/全渠道

  • API付款处理
  • Apple Pay & Google Pay
  • 安全卡存储与客户管理
  • 订阅/定期计费解决方案
  • 信用卡、借记卡、礼品卡与忠诚度,以及电子支票/ACH

无卡支付(电子商务和MOTO)特定

  • 通过托管支付解决方案最小化PCI合规性要求
  • 140+种授权货币和16种结算货币
  • 全球150+种本地支付方式
  • 账户更新器
  • 内置欺诈预防规则
  • 3D Secure、AVS和CVV检查
  • 260+全球企业欺诈规则

有卡支付(终端和POS)特定

  • 安全端到端加密

要求

  • PHP 8.0.0+
  • OpenSSL 1.0.1+
  • PHP Curl扩展
  • PHP DOM扩展
  • PHP OpenSSL扩展

安装

将SDK安装到您的解决方案中通常通过使用Composer/Packagist,或者将项目添加到您的解决方案中并直接引用它来完成。

通过 Composer/Packagist 安装

composer require globalpayments/php-sdk

通过直接下载安装

下载并解压或,使用Git,从GitHub 克隆仓库。有关如何克隆仓库的更多信息,请参阅 如何克隆仓库

git clone https://github.com/globalpayments/php-sdk

文档和示例

您可以在Global Payments和Heartland开发者中心找到最新的SDK文档,包括代码示例和测试卡Global PaymentsHeartland

此外,您还可以在我们的示例代码仓库中找到工作示例。

提示:包含的 测试套件 可以是使用SDK的代码示例的绝佳来源!

处理付款示例

$card = new CreditCardData();
$card->number = "4111111111111111";
$card->expMonth = "12";
$card->expYear = "2025";
$card->cvn = "123";

try {
    $response = $card->charge(129.99)
        ->withCurrency("EUR")
        ->execute();

    $result = $response->responseCode; // 00 == Success
    $message = $response->responseMessage; // [ test system ] AUTHORISED
} catch (ApiException $e) {
    // handle errors
}

测试卡数据

测试异常

在您的集成过程中,您可能希望测试特定发卡行的响应,例如“卡片拒绝”。由于我们的沙箱环境实际上不会与发卡行进行授权交互,因此存在特定的交易金额和/或卡号会触发网关和发卡行的响应。请联系您的支持代表以获取用于模拟交易AVS/CVV结果、拒绝、错误和其他可以在您的代码中捕获的响应的完整值列表。示例错误处理代码

try {
    $response = $card->charge(129.99)
        ->withCurrency("EUR")
        ->execute();
} catch (BuilderException $e) {
    // handle builder errors
} catch (ConfigurationException $e) {
    // handle errors related to your services configuration
} catch (GatewayException $e) {
    // handle gateway errors/exceptions
} catch (UnsupportedTransactionException $e) {
    // handle errors when the configured gateway doesn't support
    // desired transaction
} catch (ApiException $e) {
    // handle all other errors
}

贡献

我们所有的代码都是开源的,我们鼓励其他开发者贡献并帮助改进它!

  1. 分叉它
  2. 创建您的功能分支(git checkout -b my-new-feature
  3. 确保SDK测试通过
  4. 提交您的更改(git commit -am 'Add some feature'
  5. 推送到分支(git push origin my-new-feature
  6. 创建新的拉取请求

许可证

本项目遵循GNU通用公共许可证v2.0授权。请参阅位于项目根目录的LICENSE.md以获取更多详细信息。