pwf/paysdk

1.0 2022-07-27 13:14 UTC

This package is not auto-updated.

Last update: 2024-09-27 18:26:09 UTC


README

欢迎使用 PWFPAY SDK for PHP 。

环境要求

  1. PWFPAY SDK for PHP 需要 PHP 5.5 以上的开发环境。

  2. 在开始使用 PWFPAY SDK for PHP 之前,您需要先访问 https://pwf.com 申请开通账号并完成开发者接入的一些准备工作,包括创建应用、为应用设置接口相关配置等。

  3. 准备工作完成后,请注意保存以下信息,后续将作为使用SDK的输入。

  • 加签模式为公私钥证书模式

AppID应用的私钥PWF公钥

快速使用

  1. Composer 安装
composer require pwf/paysdk 
  1. 示例代码
<?php

require 'vendor/autoload.php';

use Pwf\PaySDK\Base\PwfClient;
use Pwf\PaySDK\Base\Config;
    
    
//加载配置文件
$pwfClient = new PwfClient(getOptions());


 //订单支付請求接口
$params = [
    "trade_name" => "trade_name",
    "fiat_currency" => "EUR",
    "fiat_amount" => 0.01,
    "out_trade_no" => "20200326235526001",
    "subject" => "eur_pay",
    "timestamp" => 1657895835,
    "notify_url"=> "https://www.notify.com/notify", //此處的異步回調通知地址需與商戶中心配置的異步通知地址一致
    "return_url" => "https://www.return.com/return",
    "collection_model" => 1,
    "merchant_no" => "<-- 請填寫您的商戶號,例如:2022......81170 -->",
];

$result = $pwfClient->execute("/api/v2/wallet/payAddress",$params);
if($result->isSuccess()){

    if($result->verify()){

        print_r($result->dataMap());
    }else{
        throw new \Exception("驗簽失敗,請檢查Pwf平台公鑰或商戶私鑰是否配置正確。");
    }
    
}else{
    throw new \Exception($result->ret() .":".$result->msg());
}


//异步回调通知處理示例
$json_string = '{"ret":1000,"msg":"\u8bf7\u6c42\u6210\u529f","data":"WDlwdnBoSkFDeS96bVdIYjg4WUNaaXVuV3NTQ......."}';
$result = $pwfClient->getApiResponse($json_string);
if($result->isSuccess()){

    if($result->verify()){

        print_r($result->dataMap());
    }else{
        throw new \Exception("驗簽失敗,請檢查Pwf平台公鑰或商戶私鑰是否配置正確。");
    }   
}


function getOptions()
{
    $options = new Config();

    $options->apiUrl = "<-- 請填寫平台分配的接口域名,例如:https://xxx.pwf.com/ -->";
    $options->appToken = "<-- 請填寫您的appToken,例如:377b26eb8c25bd... -->";

    //語系(參考文檔中最下方語系表,如:TC)
    $options->lang = "TC";
    
    $options->merchantPrivateCertPath = "<-- 請填寫您的應用私鑰路徑,例如:/foo/MyPrivateKey.pem -->";
    $options->pwfPublicCertPath = "<-- 請填寫PWF平台公鑰證書文件路徑,例如:/foo/PwfPublicKey.pem -->";

    return $options;
}