cinghie/yii2-paypal

用于管理 Yii 2 项目中 PayPal 支付的 Yii2 Paypal 扩展

安装次数: 1,956

依赖项: 0

建议者: 0

安全: 0

星标: 2

关注者: 3

分支: 5

开放问题: 1

类型:yii2-extension

0.2.4 2019-05-28 20:31 UTC

This package is auto-updated.

Last update: 2024-09-13 13:36:36 UTC


README

License Latest Stable Version Latest Release Date Latest Commit Total Downloads

Yii2 PayPal 扩展用于管理

  • PayPal 支付:[PayPal](https://www.paypal.com)
  • BrainTree 支付(PayPal 服务):[BrainTree](https://www.braintreepayments.com)
  • HyperWallet 支付(PayPal 服务):[HyperWallet](https://www.hyperwallet.com)

安装

安装此扩展的首选方式是通过 composer

运行以下命令

php composer.phar require cinghie/yii2-paypal "@dev"

或者将此行添加到你的 composer.json 文件的 require 部分。

"cinghie/yii2-paypal": "@dev"

PayPal

获取凭证

  1. 登录仪表板,并输入你的 PayPal 商业账户邮箱和密码。

  2. 在 REST API 应用程序部分,点击创建应用。此应用用于生成你的凭证。

  3. 为你的应用输入一个名称并点击创建应用。页面将显示你的沙盒应用信息,包括凭证。
    注意:要显示你的生产应用信息,切换到“生产”模式。

  4. 复制并保存你的沙盒应用的客户端 ID 和密钥。

  5. 审查你的应用详情并保存你的应用。

创建沙盒账户

  1. 登录仪表板,并输入你的 PayPal 商业账户邮箱和密码。
    注意:如果你没有商业账户,请点击注册。

  2. 在沙盒下,点击账户并点击创建账户。

  3. 要创建买家账户,选择个人账户类型。
    输入这些必填项和任何可选字段,然后点击创建账户

    • 电子邮箱地址:一个假的或有效的电子邮箱地址。
      如果你使用有效地址,当你运行测试交易时,你会收到电子邮件通知
    • 密码:一个容易记住的密码,例如 12345678
    • PayPal 余额:一个高金额,例如 5000
  4. 要创建商家账户,选择商业账户类型,输入账户信息,然后点击创建账户

文档

文档:[PayPal PHP SDK 文档](http://paypal.github.io/PayPal-PHP-SDK/docs/)
示例:[PayPal PHP SDK 示例](http://paypal.github.io/PayPal-PHP-SDK/sample/)
沙盒:[PayPal 沙盒](https://www.sandbox.paypal.com/)
SDK PHP:[PayPal PHP SDK](https://github.com/paypal/PayPal-PHP-SDK/)
支持:[PayPal 开发者支持](https://developer.paypal.com/support/)
Wiki:[PayPal PHP SDK Wiki](https://github.com/paypal/PayPal-PHP-SDK/wiki)

配置

在通用配置文件中添加

use cinghie\paypal\components\Paypal as PaypalComponent;
use cinghie\paypal\Paypal as PaypalModule;

'components' => [

    'paypal' => [
    	'class'        => 'cinghie\paypal\components\Paypal',
    	'clientId'     => 'YOUR_CLIENT_ID',
    	'clientSecret' => 'YOUR_CLIENT_SECRET',
    	'isProduction' => false,
    	'config' => [
    		'mode' => 'sandbox', // 'sandbox' (development mode) or 'live' (production mode)
    	]
    ]
    
],

'modules' => [

    'paypal' => [ 
    	'class' => PaypalModule::class, 
    	'paypalRoles' => ['admin'],
    	'showTitles' => false,
    ]
    
]
  • clientid => 你的 PayPal clientId
  • clientSecret => 你的 PayPal clientSecret
  • isProduction => 如果你的网站处于生产模式,设置为 yes,否则为 false
  • mode => 如果你的网站处于开发模式,设置为 'sandbox',在生产模式下设置为 'live'

你可以在配置数组中设置高级设置

'config' => [
	'mode' => 'sandbox', // 'sandbox' (development mode) or 'live' (production mode)
	'http.ConnectionTimeOut' => 30,
	'http.Retry' => 1,
	'log.LogEnabled' => YII_DEBUG ? 1 : 0,
	'log.FileName' => '@runtime/logs/paypal.log',
	'log.LogLevel' => 'ERROR',
],

在配置文件中模块部分添加

'paypal' => [
	'class' => 'cinghie\paypal\Paypal',
	'paypalRoles' => ['admin'],
	'showTitles' => false,
],

在后端配置文件中添加

use cinghie\paypal\filters\BackendFilter as PaypalBackendFilter;

'modules' => [

    'paypal' => [
        'as backend' => PaypalBackendFilter::class,
    ],    

]

在前端配置文件中添加

use cinghie\paypal\filters\FrontendFilter as PaypalFrontendFilter;

'modules' => [

    'paypal' => [
        'as backend' => PaypalBackendFilter::class,
    ],  

]

BrainTree 配置

在通用配置文件中添加

use cinghie\paypal\components\Braintree as BraintreeComponent;

'braintree' => [
	'class' => BraintreeComponent::class,
	'environment' => 'sandbox',
	'merchantId' => 'your_merchant_id',
	'publicKey' => 'your_public_key',
	'privateKey' => 'your_private_key'
],

HyperWallet 配置

在通用配置文件中添加

use cinghie\paypal\components\Hyperwallet as HyperwalletComponent;

'hyperwallet' => [
	'class' => HyperwalletComponent::class,
	'username' => 'HYPERWALLET_SERVER',
	'password' => 'HYPERWALLET_PASSWORD',
	'token' => 'HYPERWALLET_PROGRAM_TOKEN',
	'server' => 'https://sandbox.hyperwallet.com'
],

创建数据库模式

运行以下命令

$ php yii migrate/up --migrationPath=@vendor/cinghie/yii2-paypal/migrations

使用组件

\Yii::$app->braintree;
\Yii::$app->hyperwallet;
\Yii::$app->paypal;

使用演示(仅在沙盒模式下可用)

$demo = new \cinghie\paypal\models\Demo();
$demo->payByCreditCardDemo();
$demo->payByPaypalDemo();