alsharie/sabacash-payment

SabaCash支付网关

1.1 2023-12-17 08:36 UTC

This package is auto-updated.

Last update: 2024-09-26 08:13:56 UTC


README

img.svg

用于SabaCash支付网关的Laravel包,安装该包: composer require alsharie/sabacash-payment

您可以使用以下命令发布

php artisan vendor:publish --provider="Alsharie\SabaCashPayment\SabaCashServiceProvider"

发布后,配置文件 config/sabaCash.php 包含

return [
    'auth' => [
        'username' => env('SABACASH_MERCHANT_USERNAME'),
        'password' => env('SABACASH_MERCHANT_PASSWORD'),
    ],
    'url' => [
        'base' => env('SABACASH_BASE_URL', 'https://api.sabacash.ye:49901'),
    ]
];

登录

    $sabaCash = new SabaCash();
    $response = $sabaCash->login();

    if ($response->isSuccess()) {
        $response->getToken();
    }

使用SabaCash支付购买

1. 购买

    $sabaCash = new SabaCash();
    $response = $sabaCash
        ->setCurrency(2)
        ->setNote('this is simple note')
        ->setAmount(3000)
        ->setBeneficiaryTerminal(1)
        ->setSourceCode(/*phone number*/)
        ->initPayment();

    if ($response->isSuccess()) {
        $response->getAdjustment();
        ... 
        ...
    } 
       

2. 确认购买

    $sabaCash = new SabaCash();
    $response = $sabaCash
        ->setAdjustmentId(603414)
        ->setOtp(5761)
        ->setOperationApprove()
        ->setNote('تاكيد عملية الدفع')
        ->confirmPayment();
    if ($response->isSuccess()) {
        return $response->getTransactionId();
    }

3. 检查交易状态

    $sabaCash = new SabaCash();
    $response = $sabaCash
        ->setTransactionId(/*tranId*/)
        ->checkTransactionStatus();

    if ($response->isSuccess()) {
        return $response->getStatus();
    }

对于所有请求,您可以使用 $response->body() 获取完整的 响应体