程序员/perfect-money

Laravel 完美钱包支付包

v1.3 2022-02-05 20:40 UTC

This package is auto-updated.

Last update: 2024-09-07 10:59:59 UTC


README

Latest Version on Packagist Software License Total Downloads

安装

通过 Composer

$ composer require tuyenlaptrinh/perfect-money

添加提供者

tuyenlaptrinh\PerfectMoney\PerfectMoneyServiceProvider::class,

添加别名

'PerfectMoney' => tuyenlaptrinh\PerfectMoney\PerfectMoney::class,

配置

发布配置文件

php artisan vendor:publish --provider="tuyenlaptrinh\PerfectMoney\PerfectMoneyServiceProvider" --tag="config"

编辑 .env

在 .env 文件中添加以下行,遵循 config/perfectmoney.php 中的配置描述。

PM_ACCOUNTID=100000
PM_PASSPHRASE=your_pm_password
PM_MARCHANTID=U123456
PM_MARCHANT_NAME="My Company"
PM_UNITS=USD
PM_ALT_PASSPHRASE=your_alt_passphrase
PM_PAYMENT_URL=http://example.com/success
PM_PAYMENT_URL_METHOD=null
PM_NOPAYMENT_URL=http://example.com/fail
PM_NOPAYMENT_URL_METHOD=null
PM_STATUS_URL=null
PM_SUGGESTED_MEMO=null

使用方法

### 渲染购物车输入表单

PerfectMoney::render();

有时您可能需要自定义支付表单。只需将参数传递给渲染方法即可。

PerfectMoney::render(['PAYMENT_UNITS' => 'EUR']);

API 模块

获取钱包

$pm = new PerfectMoney;
$wallets = $pm->wallets();

if($wallets['status'] == 'success')
{
    foreach($wallets['wallets'] as $wallet){
        echo $wallet['account'].': '.$wallet['balance']; // U1935xxx: 10.00
    }
}

发送钱款

// Required Fields
$amount = 10.00;
$sendTo = 'U1234567';

// Optional Fields
$description = 'Optional Description for send money';
$payment_id = 'Optional_payment_id';

$pm = new PerfectMoney;

// Send Funds with all fields
$sendMoney = $pm->transfer($sendTo, $amount, $description, $payment_id);
if($sendMoney['status'] == 'success')
{
	// Some code here
}

// Send Funds with required fields
$sendMoney = $pm->transfer($sendTo, $amount);
if($sendMoney['status'] == 'error')
{
	// Payment Failed
	return $sendMoney['message'];
}

变更日志

请参阅 CHANGELOG 获取最近更改的更多信息。

贡献

请参阅 CONTRIBUTINGCONDUCT 获取详细信息。

安全

如果您发现任何安全相关的问题,请通过 tuyenlaptrinh@gmail.com 发送电子邮件,而不是使用问题跟踪器。

致谢

许可证

MIT 许可证 (MIT)。请参阅 许可证文件 获取更多信息。