deyjandi /
为laravel项目实现Viva Wallet的API
v0.9.0
2022-03-31 08:21 UTC
Requires
- php: ^8.1.0
- guzzlehttp/guzzle: ^7.4
- illuminate/contracts: ^9.0
- spatie/laravel-package-tools: ^1.9.2
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.8
- nunomaduro/collision: ^6.0
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^7.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
- spatie/laravel-ray: ^1.26
This package is auto-updated.
Last update: 2024-09-24 03:59:42 UTC
README
安装步骤
1. 使用composer安装包
composer require deyjandi/laravel-viva-wallet
2. 使用以下命令发布config
文件
php artisan vendor:publish --tag="viva-wallet-config"
3. 至少添加以下内容到.env
文件中
VIVA_WALLET_MERCHANT_ID=<your-merchant-id> VIVA_WALLET_API_KEY=<your-api-id> VIVA_WALLET_CLIENT_ID=<your-smart-checkout-client-id> VIVA_WALLET_CLIENT_SECRET=<your-smart-checkout-secret>
您可以参考./config/viva-wallet-config.php
以获取更多配置选项
用法
使用默认配置创建支付订单
... use Deyjandi\VivaWallet\Facades\VivaWallet; use Deyjandi\VivaWallet\Payment; ... $payment = new Payment($amount = 1000); $checkoutUrl = VivaWallet::createPaymentOrder($payment); ...
指定每个可配置选项创建支付订单
... use Deyjandi\VivaWallet\Enums\RequestLang; use Deyjandi\VivaWallet\Enums\PaymentMethod; use Deyjandi\VivaWallet\Facades\VivaWallet; use Deyjandi\VivaWallet\Customer; use Deyjandi\VivaWallet\Payment; ... $customer = new Customer( $email = 'example@test.com', $fullName = 'John Doe', $phone = '+306987654321', $countryCode = 'GR', $requestLang = RequestLang::Greek, ); $payment = new Payment(); $payment ->setAmount(2500) ->setCustomerTrns('short description of the items/services being purchased') ->setCustomer($customer) ->setPaymentTimeout(3600) ->setPreauth(false) ->setAllowRecurring(true) ->setMaxInstallments(3) ->setPaymentNotification(true) ->setTipAmount(250) ->setDisableExactAmount(false) ->setDisableCash(true) ->setDisableWallet(false) ->setSourceCode(1234) ->setMerchantTrns('customer order reference number') ->setTags(['tag-1', 'tag-2']) ->setBrandColor('009688') ->setPreselectedPaymentMethod(PaymentMethod::PayPal); $checkoutUrl = VivaWallet::createPaymentOrder($payment); ...
检索交易
... use Deyjandi\VivaWallet\Facades\VivaWallet; ... $transaction = VivaWallet::retrieveTransaction($transactionId);
请求webhook验证密钥
php artisan viva-wallet:webhook-key
webhook验证密钥将自动存储到.env
文件中
测试
composer test
更新日志
有关最近更改的更多信息,请参阅更新日志。
贡献
有关详细信息,请参阅贡献指南。
安全漏洞
有关如何报告安全漏洞的详细信息,请参阅我们的安全策略。
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。