treerful/laravel-newebpay

连接newebpay API服务的库。

1.0.6 2022-05-05 06:51 UTC

This package is auto-updated.

Last update: 2024-09-05 12:00:40 UTC


README

Laravel-NewebPay 是针对 Laravel 编写的支付套件,主要实现蓝新金流(原智付通)功能。

主要实现项目:

  • NewebPay MPG - 多功能收款
  • NewebPay Cancel - 信用卡取消授权
  • NewebPay Close - 信用卡退款

安装

  1. 通过 composer 安装

    composer require treerful/laravel-newebpay
    
  2. 复制配置文件(两种方法)

(a)在 config/app.php

 'providers' => [
        /*
         * Laravel Framework Service Providers...
         */
        Illuminate\Auth\AuthServiceProvider::class,
        Illuminate\Broadcasting\BroadcastServiceProvider::class,
        ...
        ...
        Treerful\NewebPay\NewebPayServiceProvider::class,

添加 ServiceProvider 后,发布配置文件。

php artisan vendor:publish

(b)不添加 provider 手动复制。

cp vendor/treerful/laravel-newebpay/config/newebpay.php config/newebpay.php

请注意,文件名 newebpay.php 不应更改!

  1. config/app.php 中添加别名

     'aliases' => [
      ...
     'Storage' => Illuminate\Support\Facades\Storage::class,
     'URL' => Illuminate\Support\Facades\URL::class,
     'Validator' => Illuminate\Support\Facades\Validator::class,
     'View' => Illuminate\Support\Facades\View::class,
    
     'NewebPay' => Treerful\NewebPay\NewebPay::class,
     ]
    

用法

设置 .env 文件

// .env

CASH_STORE_ID= ...
CASH_STORE_HASH_KEY= ...
CASH_STORE_HASH_IV= ...
CASH_STORE_DEBUG=true/false

CASH_RETURN_URL= ...
CASH_NOTIFY_URL= ...
CASH_CLIENT_BACK_URL= ...

设置 config/newebpay.php

可依个人商业使用进行调整。

引用、初始化类:

use Treerful\Pay2goInvoice\Invoice;

$newebpay = new NewebPay();

NewebPay MPG - 多功能支付

function order() 
{
    $newebpay = new NewebPay();
    return $newebpay->payment(
        no, // 訂單編號
        amt, // 交易金額
        desc, // 交易描述
        email // 付款人信箱
    )->submit();
}

基本上一般交易可直接在 config/newebpay.php 中设置,其中包含详细的说明,但若遇到特殊情况,可针对个别交易进行个别函数设置。

$newebpay = new NewebPay();
return $newebpay->payment(
    no, // 訂單編號
    amt, // 交易金額
    desc, // 交易描述
    email // 付款人信箱
)
->setTespondType() // 回傳格式
->setLangType() // 語言設定
->setTradeLimit() // 交易秒數限制
->setExpireDate() // 交易截止日
->setReturnURL() // 由藍新回傳後前景畫面要接收資料顯示的網址
->setNotifyURL() // 由藍新回傳後背景處理資料的接收網址
->setCutomerURL() // 商店取號網址
->setClientBackURL() // 付款取消後返回的網址
->setEmailModify() // 是否開放 email 修改
->setLoginType() // 是否需要登入智付寶會員
->setOrderComment() //商店備註
->setPaymentMethod() //付款方式 *依照 config 格式傳送*
->setCVSCOM() // 物流方式
->setTokenTerm() // 快速付款 token
->submit();

此版本1.5由篮新金流返回后为加密信息,因此返回后需要进行解码!

function returnURL(Request $request)
{
    $retrunData = $request->all();

    $newebpay = new NewebPay();
    $retrunData['data'] = $newebpay->decodeCallback($retrunData['TradeInfo']);

    return $retrunData;
}

NewebPay Cancel - 信用卡取消授权

function creditCancel()
{
    $newebpay = new NewebPay();
    return $newebpay->creditCancel(
        no, // 該筆交易的訂單編號
        amt,  // 該筆交易的金額
        'order' // 可選擇是由 order->訂單編號 或是 trade->藍新交易編號來做申請
        )->submit();
}

NewebPay Close - 信用卡退款

function requestPayment()
{
    $newebpay = new NewebPay();
    return $newebpay->requestPayment(
        no, // 該筆交易的訂單編號
        amt,  // 該筆交易的金額
        'order' // 可選擇是由 order->訂單編號 或是 trade->藍新交易編號來做申請
        )->submit();
}

NewebPay close - 信用卡退款

function requestRefund()
{
    $newebpay = new NewebPay();
    return $newebpay->requestRefund(
        no, // 該筆交易的訂單編號
        amt,  // 該筆交易的金額
        'order' // 可選擇是由 order->訂單編號 或是 trade->藍新交易編號來做申請
        )->submit();
}

作者

官方参考

NewebPay Payment API

许可证

MIT