gentor/omnipay-dskbank

dskbank.bg 网关用于 Omnipay 支付处理库

dev-master / 1.0.x-dev 2023-11-16 15:58 UTC

This package is auto-updated.

Last update: 2024-09-16 17:43:06 UTC


README

DSK Bank 网关用于 Omnipay 支付处理库

灵感来源于 omnipay-paymentgateru

Omnipay 是一个与框架无关、多网关的 PHP 支付处理库。本包实现了 Omnipay 对 DSK Bank 的支持。

安装

Omnipay 通过 Composer 安装。要安装,只需使用 Composer 需求 league/omnipaygentor/omnipay-dskbank

composer require league/omnipay gentor/omnipay-dskbank

基本用法

购买

$gateway = Omnipay::create('DskBank');
$gateway->setUserName($config['userName'])
    ->setPassword($config['password'])
    ->setTestMode($config['testMode']);

$response = $gateway->authorize([
    'orderNumber' => time(),
    'amount' => 5 * 100,
    'description' => 'Dsk Bank Test Purchase',
    'returnUrl' => 'http://dskbank.test/return.php',
    'failUrl' => 'http://dskbank.test/return.php',
])->send();

$bankReference = $response->getTransactionReference();

if ($response->isRedirect()) {
    // Redirect to offsite payment gateway
    $response->redirect();
} else {
    // Payment failed
    echo $response->getMessage();
}

完成购买

$status = $gateway->status($_GET)->send();
$statusExtended = $gateway->statusExtended($_GET)->send();

$orders = $gateway->getLastOrders([
    'size' => 5,
    'from' => '20200926000000',
    'to' => '20200928000000',
    'transactionStates' => 'APPROVED,REFUNDED',
])->send();

$refund = $gateway->refund([
   'orderId' => $bankReference,
   'amount' => $price * 100
])->send();

$success = $refund->isSuccessful();