ambroisemaupate / omnipay-sips2
Omnipay网关,用于Worldline Sips PayPage POST API(Atos Sips 2.0)
1.0.2
2018-01-26 10:23 UTC
Requires
- omnipay/common: ~2.0|~2.5
Requires (Dev)
- omnipay/tests: ~2.0|~2.5
This package is auto-updated.
Last update: 2024-08-28 06:59:40 UTC
README
此网关仅实现了Sips PayPage POST API。
网关参数
网关默认提供Sogenactif(法国兴业银行)的测试凭证。
请注意,在测试模式下,transactionReference
参数是必需的。
使用方法
第一步:离线支付
$gateway = \Omnipay\Omnipay::create('SipsPayPage'); $gateway->setMerchantId('XXXXXXXXXXXXXXXXX'); $gateway->setSecretKey('XXXXXXXXXXXXXXXXX'); $gateway->setUrl('https://payment-webinit.simu.sips-atos.com'); $card = new \Omnipay\Sips\OffsiteCreditCard(); $card->setEmail('test@test.com'); // Send purchase request $request = $gateway->purchase( [ 'clientIp' => $request->getClientIp(), 'amount' => '10.00', 'currency' => 'EUR', 'returnUrl' => $this->generateUrl('completePurchaseRoute', [], UrlGenerator::ABSOLUTE_URL), 'notifyUrl' => $this->generateUrl('completePurchaseRoute', [], UrlGenerator::ABSOLUTE_URL), 'cancelUrl' => $this->generateUrl('cancelRoute', [], UrlGenerator::ABSOLUTE_URL), 'card' => $card ] ); $response = $request->send(); if ($response->isRedirect()) { $response->redirect(); // this will automatically forward the customer }
第二步:手动和自动响应
$gateway = \Omnipay\Omnipay::create('SipsPayPage'); $gateway->setMerchantId('XXXXXXXXXXXXXXXXX'); $gateway->setSecretKey('XXXXXXXXXXXXXXXXX'); $gateway->setUrl('https://payment-webinit.simu.sips-atos.com'); // Send completePurchase request $request = $gateway->completePurchase(); $response = $request->send(); if ($response->isSuccessful()) { // DO your store logic. $bankTransactionRef = $response->getTransactionReference(); $websiteOrderId = $response->getTransactionId(); } elseif ($response->isPending()) { // Do temporary things until we get a success/failed tranaction response. } else { echo $response->getMessage(); }