churakovmike / yii2-free-kassa
Free Kassa 的 Yii2 扩展
1.3
2020-03-25 12:54 UTC
Requires
- php: >=5.4.0
- yiisoft/yii2: ~2
README
Yii2 free kassa 扩展。本包为您提供了表单、动作过滤器组件。
入门指南
安装
该包可在 Packagist 上找到。
composer require churakovmike/yii2-free-kassa
或添加到 require 部分
"churakovmike/yii2-free-kassa": "~1.3"
添加组件到配置
您需要在 main-local.php 中添加组件配置
'freeKassaComponent' => [ 'class' => \ChurakovMike\Freekassa\FreeKassaComponent::class, 'merchantId' => 'merchant-id', 'firstSecret' => 'your-first-secret', 'secondSecret' => 'your-second-secret', ],
添加动作过滤器(可选)
如果您想检查回调发送者,您需要在行为中添加 CheckIpFilter
public function behaviors() { return [ ChurakovMike\Freekassa\filters\CheckIpFilter::class, ] }
表单使用
本包为您提供了用于快速加载和验证 free-kassa 回调的表单。
$form = new ChurakovMike\Freekassa\forms\SuccessPayForm(); $form->setAttributes(\Yii::$app->request->post()); $form->validate();
组件使用
/** @var FreeKassaComponent $component */ $component = \Yii::$app->freeKassaComponent;
使用组件检查签名
/** @var FreeKassaComponent $component */ $component = \Yii::$app->freeKassaComponent; $component->validateSignature($amount, $orderId, $signature);
您可以从 SuccessPayForm 的 $form->sign 属性中获取签名
生成支付链接
/** @var FreeKassaComponent $component */ $component = \Yii::$app->freeKassaComponent; $component->generatePaymentLink($orderId, $sum, $description);
将订单导出到 XML
$orders = $component->exportOrders($limit, $offset, $status, $dateFrom, $dateTo);
检查余额
$balance = $component->getBalance();
检查订单
$balance = $component->getOrder($orderId, $intid);
提款
$withdraw = $component->withdraw($amount, $currency);
发票
$invoice = $component->invoice($email, $amount, $description);
获取钱包余额
$balance = $component->getWalletBalance();
从钱包提款
$withdraw = $component->walletWithdraw($purse, $amount, $currency, $desc, $disableExchange);
获取钱包操作状态
$status = $component->getOperationStatus($paymentId);
向另一个钱包转账
$transfer = $component->transferMoney($purse, $amount);
在线服务支付
$payment = $component->onlinePayment($serviceId, $account, $amount);
获取在线支付服务列表
$list = $component->getOnlineServices();
检查在线支付状态
$status = $component->getOnlinePaymentStatus($paymentId);
创建加密钱包地址
$btc = $component->createBTCAddress(); $ltc = $component->createLTCAddress(); $eth = $component->createETHAddress();
获取加密钱包地址
$btc = $component->getBTCAddress(); $ltc = $component->getLTCAddress(); $eth = $component->getETHAddress();
获取交易信息
$btcTransaction = $component->getBTCTransaction(); $ltcTransaction = $component->getLTCTransaction(); $ethTransaction = $component->getETHTransaction();