bishwajitcadhikary/omnipay-myfatoorah

适用于 Omnipay 支付处理库的 MyFatoorah 驱动程序

v3.2.3 2023-11-02 10:31 UTC

README

适用于 Omnipay PHP 支付处理库的 MyFatoorah 网关集成

简介

Build Status Scrutinizer Code Quality Code Intelligence Status Total Downloads

Omnipay 是一个框架无关的多网关支付处理库,适用于 PHP 5.3+。此包实现了 Omnipay 的 acapture 支持。

安装

要安装,您可以使用 composer require 包;

$ composer require myfatoorah/omnipay

您也可以直接在 composer.json 文件中包含此包

{
    "require": {
        "myfatoorah/omnipay": "dev-master"
    }
}

使用方法

创建支付链接

use Omnipay\Omnipay;

$data                      = array();
$data['Amount']            = '50';
$data['OrderRef']          = 'orderId-123'; 
$data['Currency']          = 'KWD';
$data['returnUrl']         = 'http://websiteurl.com/callback.php';
$data['Card']['firstName'] = 'fname';
$data['Card']['lastName']  = 'lname';
$data['Card']['email']     = 'test@test.com';
//
// Do a purchase transaction on the gateway
$transaction               = $gateway->purchase($data)->send();
if ($transaction->isSuccessful()) {
    $invoiceId   = $transaction->getTransactionReference();
    echo "Invoice Id = " . $invoiceId . "<br>";
    $redirectUrl = $transaction->getRedirectUrl();
    echo "Redirect Url = <a href='$redirectUrl' target='_blank'>" . $redirectUrl . "</a><br>";
} else {
    echo $transaction->getMessage();
}

检查支付状态

在回调中,获取特定 Payment ID 的支付状态

$callBackData = ['paymentId' => '100202113817903101'];
// or 
$callBackData = ['invoiceid' => '75896'];
$callback     = $gateway->completePurchase($callBackData)->send();
if ($callback->isSuccessful()) {
    echo "<pre>";
    print_r($callback->getPaymentStatus('orderId-123', '100202113817903101'));
} else {
    echo $callback->getMessage();
}

进行退款

退款特定 Payment ID

$refundData = ['paymentId' => '100202113817903101', 'Amount'=>1];
$refund     = $gateway->refund($refundData)->send();
if ($refund->isSuccessful()) {
    echo "<pre>";
    print_r($refund->getRefundInfo());
} else {
    echo $refund->getMessage();
}