worldstream-labs/omnipay-paysafe-payment-hub
最新稳定版本:v1.1.0
Composer 安装命令:
composer require worldstream-labs/omnipay-paysafe-payment-hub
包简介
Paysafe Payment Hub driver for the Omnipay payment processing library used for Neteller
README 文档
README
Paysafe Payment Hub library for the Omnipay V3 payment library, used for Neteller (and Skrill later).
Installation
Use composer to add the library as dependency for your project
composer require league/omnipay worldstream-labs/omnipay-paysafe-payment-hub
Development
To set up for development:
composer install
Usage
Setup
<?php require 'vendor/autoload.php'; use Omnipay\Omnipay; $gateway = Omnipay::create('PaysafePaymentHub'); $gateway->setApiKey('yourApiKey'); // When deploying to production, don't forget to set test mode to false $gateway->setTestMode(false);
Creating a payment handle for Neteller
<?php require 'vendor/autoload.php'; use Omnipay\Omnipay; $gateway = Omnipay::create('PaysafePaymentHub'); $gateway->setApiKey('yourApiKey'); $response = $gateway->purchase([ 'amount' => 11.00, 'currency' => 'EUR', 'successUrl' => 'https://url/success', 'failureUrl' => 'https://url/failure', 'returnUrl' => 'https://url/return', 'consumerId' => 'consumer@example.com', 'merchantRefNum' => 'abcdefg', 'description' => 'description', 'text' => 'text', 'paymentMethod' => 'neteller', ])->send(); redirect($response->getRedirectUrl());
This call will return the PurchaseResponse object. If the call is succesful then you can redirect the customer to the redirectUrl. Depending on the result in the next screen the customer will be redirected to the success or failure url.
Note: consumerId is optional in the request, don't forget to add consumerIdLocked with value false when leaving consumerId out.
Finalize Payment
Before you can finalize the payment, make sure the payment handle is successfully created and payable using the getPaymentHandle call.
<?php $gateway = Omnipay::create('PaysafePaymentHub'); $gateway->setApiKey('yourApiKey'); $response = $gateway->getPaymentHandle([ 'paymentHandleId' = $paymentHandleId, ])->send(); $paymentHandle = $response->getPaymentHandle(); if ($response->getPaymentHandle()->isPayable()) { $completePurchaseResponse = $gateway->completePurchase([ 'amount' => 11.00, 'currency' => 'EUR', 'paymentHandleToken' => $paymentHandle->getPaymentHandleToken(), 'merchantRefNum' => 'ref2', 'dupCheck' => false, 'settleWithAuth' => true, 'customerIp' => '172.0.0.1', 'description' => 'description', ])->send(); }
Fetch transaction
<?php $gateway = Omnipay::create('PaysafePaymentHub'); $gateway->setApiKey('yourApiKey'); $response = $gateway->fetchTransaction([ 'transactionId' => $webhook['payload']['id'], ])->send(); if ($response->isComplete()) { // payment is complete }
Tests
Run the unit tests with composer run test
Support
If you are having general issues with Omnipay, we suggest posting on Stack Overflow. Be sure to add the omnipay tag so it can be easily found.
If you believe you have found a bug, please report it using the GitHub issue tracker, or better yet, fork the library and submit a pull request.
References
统计信息
- 总下载量: 7.83k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-07-16