joseph-bing-han/omnipay-windcave
Composer 安装命令:
composer require joseph-bing-han/omnipay-windcave
包简介
Windcave (Payment Express) REST API driver for the Omnipay payment processing library
README 文档
README
This is a maintained fork of the Windcave REST API driver for Omnipay, published as joseph-bing-han/omnipay-windcave.
It keeps the original PHP namespace Omnipay\Windcave for maximum compatibility.
Why this fork?
- Visa 3DS requirement: at least one of Cardholder Email Address or Cardholder Phone Number must be provided during authentication.
- The library enforces this rule at session creation time by requiring at least one of email or phone to be supplied.
References:
- Packagist:
https://packagist.org/ - Windcave REST 3DS fields:
https://www.windcave.com/developer-e-commerce-api-rest#3DSecure_Fields - Windcave PxPay required fields:
https://www.windcave.com/developer-e-commerce-hosted-pxpay#Required_Fields
Install
composer require joseph-bing-han/omnipay-windcave
Basic Usage (Laravel / Omnipay)
use Omnipay\Omnipay; use Omnipay\Common\CreditCard; // 网关初始化(示例) $gateway = Omnipay::create('Windcave'); $gateway->setUsername('your-windcave-username'); // 商户号 $gateway->setApiKey('your-windcave-api-key'); // API Key $gateway->setTestMode(true); // 测试环境:uat,生产:sec // 准备持卡人信息(推荐通过CreditCard提供Email/Phone) $card = new CreditCard([ 'firstName' => 'John', 'lastName' => 'Doe', 'number' => '4111111111111111', 'expiryMonth' => '12', 'expiryYear' => '2030', 'cvv' => '123', 'email' => 'john@example.com', // 满足3DS要求的方式之一 // 'billingPhone' => '+64-21-000-0000', // 或者提供电话号码 ]); // 创建会话(遵循3DS要求:至少提供邮箱或电话) $request = $gateway->createSession([ 'amount' => '10.00', 'currency' => 'NZD', 'merchantReference' => 'ORDER-123456', 'callbackUrls' => [ 'approved' => 'https://example.com/pay/callback?status=approved', 'declined' => 'https://example.com/pay/callback?status=declined', 'cancelled' => 'https://example.com/pay/callback?status=cancelled', ], 'card' => $card, // 也可通过参数直接提供(将覆盖CreditCard中的值): // 'cardholderEmail' => 'john@example.com', // 'cardholderPhone' => '+64-21-000-0000', // 可选:关闭强制(不建议) // 'enforce3dsContact' => false, ]); $response = $request->send(); if ($response->isSuccessful()) { // 成功创建会话 $sessionId = $response->getSessionId(); $purchaseUrl = $response->getPurchaseUrl(); // 将用户引导至 $purchaseUrl 完成支付 } else { // 处理错误 // logger('Windcave createSession failed: '.$response->getMessage()); }
Enforcing 3DS Contact
- The library validates cardholder contact on createSession: either email or phone must be present.
- By default it is enforced (
enforce3dsContact = true). You can turn it off per request by passingenforce3dsContact => false(not recommended).
Notes
- Namespace remains
Omnipay\Windcave, so existing integrations should keep working after switching the package name. - For production, ensure you are using the
secenvironment by disabling test mode. - Always provide at least one of email or phone to satisfy Visa 3DS.
joseph-bing-han/omnipay-windcave 适用场景与选型建议
joseph-bing-han/omnipay-windcave 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 531 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 11 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「payment」 「pay」 「gateway」 「merchant」 「omnipay」 「payment express」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 joseph-bing-han/omnipay-windcave 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 joseph-bing-han/omnipay-windcave 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 joseph-bing-han/omnipay-windcave 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
repository php library
Payyo Gateway for the Omnipay payment processing library
Библиотека для приема платежей через Альфабанк.
Some pre-defined rules for validation in Omnipay payment processing library.
BluePay gateway for the Omnipay payment processing library
支付宝接口扩展包
统计信息
- 总下载量: 531
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 32
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-11-06