wearede / tbcpay-php
在线支付PHP SDK - 通过TbcBank处理器收取信用卡支付
0.12.0
2022-03-23 07:37 UTC
Requires
- php: >=5.4.0
README
TBC信用卡支付网关(PHP库)
在您的网站(通过当地银行)上实现信用卡支付非常痛苦!因此,为了使每个人的生活都变得容易一些,我们在GitHub上分享这个PHP库。
短信 / DMS
此系统中存在两种交易类型:短信 和 DMS。
短信 - 是一种直接支付方式,资金在1个事件中扣除,客户输入信用卡详情并点击继续后立即扣除。
DMS - 是一种两步方法,第一步事件冻结卡片上的资金(最多30天),第二步事件捕获资金(例如,当产品运送给客户时可以执行第二步事件)。
每24小时,商户必须关闭营业日。
安装
您可以直接包含此库 查看示例,但建议使用composer。
在终端中运行
composer require wearede/tbcpay-php
创建对象
$Payment = new TbcPayProcessor('/cert/tbcpay.pem', '0DhJ4AdxVuPZmz3F4y', $_SERVER['REMOTE_ADDR']);
- 证书绝对路径
- 证书密码
- 客户端IP地址
方法
示例实现
说明
适用于 此处简单示例。
任务
- 请TBC生成证书。
- 告诉TBC您的服务器IP地址,以便他们可以将它列入白名单。
- 创建
example.com/ok.php
和example.com/fail.php
网址,并将其告知TBC。- ok url - 在几乎所有情况下都用于将用户重定向回(即使卡片资金不足且交易失败!)。
- fail url - 当发生技术错误时用于将用户重定向回(非常罕见)。
流程
start.example
我们从这里开始我们的过程。我们使用sms_start_transaction()
调用TBC服务器,并返回$trans_id
。- 我们使用返回的
$trans_id
将用户重定向到TBC页面,用户可以在此处输入信用卡信息。 - 用户填写完卡片信息后,将被重定向回我们的
ok.example
服务器URL。
- 我们使用返回的
- 查看
ok.example
。我们从TBC返回$trans_id
,并将其插入get_transaction_result($trans_id)
。 get_transaction_result($trans_id)
告诉我们交易是否成功。例如,array('RESULT' => 'OK')
是成功消息,交易已通过。
常见问题
- TBC银行为SSL证书提供.p12格式,我们需要.pem格式,可以使用以下命令进行转换:
openssl pkcs12 -in *.p12 -out tbcpay.pem
。 - 将证书目录移动到非公开位置作为安全措施。赋予它正确的权限,以便PHP可以读取它。
- SDK需要打开出站端口18443以与TBC通信。一些托管服务不允许这样做。