schoolaid / powertranz
Powertranz 客户端
0.1.9
2023-11-28 01:29 UTC
Requires
- php: >=8.0
- guzzlehttp/guzzle: ^7.0
- illuminate/support: ^8.0|^9.0|^10.0
- laravel/framework: ^8.0|^9.0|^10.0
- ramsey/uuid: ^4.7
Requires (Dev)
- orchestra/testbench: 7.0|^8.0
README
此包是 BAC Powertranz 的最小客户端,目前它只是一个简单的客户端。
支持的操作
✅ 活跃
use SchoolAid\Powertranz\Actions\Alive; $response = Alive::getInstance()->submit()
✅ 捕获
use SchoolAid\Powertranz\Requests\PowertranzBody; use SchoolAid\Powertranz\Actions\Capture; $body = PowertranzBody::capturePowertranzBody($transactionIdentifier, $amount, $externalIdentifier) $response = Capture::getInstance()->setBody($body)->submit()
✅ 退款
用于回滚事务。
use SchoolAid\Powertranz\Requests\PowertranzBody; use SchoolAid\Powertranz\Actions\Refund; $body = PowertranzBody::refundPowertranzBody($transactionIdentifier, $amount, $externalIdentifier) $response = Refund::getInstance()->setBody($body)->submit()
✅ 撤销
用于撤销授权,在 API 中为:api/void
use SchoolAid\Powertranz\Requests\PowertranzBody; use SchoolAid\Powertranz\Actions\Revert; $body = PowertranzBody::voidPowertranzBody($transactionIdentifier, $cardId) $response = Revert::getInstance()->setBody($body)->submit()
✅ 销售
use SchoolAid\Powertranz\Requests\PowertranzBody; use SchoolAid\Powertranz\Actions\Sale; $body = PowertranzBody::powertranzBody( $transactionId, $orderId, $cardPan, $cardCvv, //yyMM format $cardExpiration, $cardName, $billingAddress ) $response = Sale::getInstance()->setBody($body)->submit()
✅ SPIAuth
use SchoolAid\Powertranz\Requests\PowertranzBody; use SchoolAid\Powertranz\Actions\SPIAuth; $body = PowertranzBody::powertranzBody( $transactionId, $orderId, $cardPan, $cardCvv, //yyMM format $cardExpiration, $cardName, $billingAddress ) $response = SPIAuth::getInstance()->setBody($body)->submit()
✅ SPIPayment
use SchoolAid\Powertranz\Requests\PowertranzBody; use SchoolAid\Powertranz\Actions\SPIPayment; $spiToken = '...'; $response = SPIPayment::getInstance()->setToken($token)->submit()
✅ SPISale
use SchoolAid\Powertranz\Requests\PowertranzBody; use SchoolAid\Powertranz\Actions\SPISale; $body = PowertranzBody::powertranzBody( $transactionId, $orderId, $cardPan, $cardCvv, //yyMM format $cardExpiration, $cardName, $billingAddress ) $response = SPISale::getInstance()->setBody($body)->submit()
❌ SPIRiskMgmt
构建主体的其他方式
PowertranzBody 类提供从其他方式生成销售主体的另一种方法。
use Schoolaid\Powertranz\Entities\PowertranzCreditCard; use SchoolAid\Powertranz\Requests\PowertranzBody; $cc = new PowertranzCreditCard($id, $pan, $cvv, $expDate, $name, ?$billingAddress) $body = PowertranzBody::fromCreditCard($cc); $voidBody = PowertranzBody::fromCreditCard($cc, $transactionId, true);
要设置的环境变量
POWERTRANZ_URL=https://staging.ptranz.com/
POWERTRANZ_ID=0000000
POWERTRANZ_PASSWORD=xxxxxxxx
POWERTRANZ_GATEWAY_KEY=xxxxxxx //set only if provided
POWERTRANZ_CALLBACK=https:///authorize