laravel paypal
1.0.0
文件
用法
支援
重要的
Laravel 11 將是 v3.0 支援的最後一個版本。 v4 正在積極開發中,將於 2024 年 10 月下旬發布。
需要 PHP 8.1+。
需要 Laravel 10 以上版本。
整合 PayPal JS SDK。
Symfony 插件。
可以透過點擊以下連結查看該包的文檔:
https://laravel-paypal.readthedocs.io/en/latest/
舊文檔可以在以下連結中找到:
https://srmklive.github.io/laravel-paypal/docs.html
以下是您可以存取 PayPal 提供者的一些方法:
// 先導入類別命名空間,然後直接使用use SrmklivePayPalServicesPayPal as PayPalClient;$provider = new PayPalClient;// 透過facade。無需導入命名空間$provider = PayPal::setProvider();
設定檔paypal.php位於config資料夾中。以下為發佈時的內容:
return ['mode' => env('PAYPAL_MODE', 'sandbox'), // 只能是 'sandbox' 或 'live'。如果為空或無效,則使用 'live'。 ' => 'APP-80W284485P519543T', ],'live' => ['client_id' => env('PAYPAL_LIVE_CLIENT_ID', ''),'client_secret' => env('PAYPAL_LIVE_CLIENT_SECRET', ''),'app_id' => env('PAY_PAL_LIVE, ' '), ],' payment_action' => env('PAYPAL_PAYMENT_ACTION', '銷售'), // 只能是'銷售'、'授權'或'訂單''貨幣' => env('PAYPAL_CURRENCY', 'USD'), 'notify_url' => env('PAYPAL_NOTIFY_URL', ''), // 根據您的應用程式進行相應更改。 , es_ES, en_US ...(僅適用於快速結帳)'validate_ssl' => env('PAYPAL_VALIDATE_SSL', true), // 建立 api 用戶端時驗證 SSL。
您可以透過呼叫setApiCredentials
方法來覆寫 PayPal API 配置:
$config = ['mode' => 'live','live' => ['client_id' => 'PAYPAL_LIVE_CLIENT_ID','client_secret' => 'PAYPAL_LIVE_CLIENT_SECRET','app_id' => 'PAYPAL_LIVE_APP_ID', ],' payment_action' => '銷售','currency' => '美元','notify_url' => 'https://your-site.com/paypal/notify','locale' => 'en_US', 'validate_ssl' => 真, ];$provider->setApiCredentials($config);
透過呼叫setApiCredentials
方法設定 PayPal API 配置後。在執行任何 API 呼叫之前,您需要取得存取令牌
$provider->getAccessToken();
預設情況下,使用的貨幣是USD
。如果您想更改它,您可以在呼叫任何相應的 API 方法之前呼叫setCurrency
方法來設定不同的貨幣:
$provider->setCurrency('EUR');
請注意,在下面的範例中,對
addPlanTrialPricing
的呼叫是可選的,當您建立沒有試用期的訂閱時可以省略它。
setReturnAndCancelUrl()
是可選的。如果您設定網址,則必須使用真實的網域名稱。例如 localhost,project.test 不起作用。
$response = $provider->addProduct('演示產品', '演示產品', '服務', '軟體') ->addPlanTrialPricing('DAY', 7) ->addDailyPlan('演示計劃', '演示計劃', 1.50) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $provider->addProduct('演示產品', '演示產品', '服務', '軟體') ->addPlanTrialPricing('DAY', 7) ->addWeeklyPlan('演示計劃', '演示計劃', 30) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $provider->addProduct('演示產品', '演示產品', '服務', '軟體') ->addPlanTrialPricing('DAY', 7) ->addMonthlyPlan('示範計畫', '示範計畫', 100) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $provider->addProduct('演示產品', '演示產品', '服務', '軟體') ->addPlanTrialPricing('DAY', 7) ->addAnnualPlan('演示計劃', '演示計劃', 600) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $provider->addProduct('演示產品', '演示產品', '服務', '軟體') ->addCustomPlan('演示計劃', '演示計劃', 150, '月份', 3) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $this->client->addProductById('PROD-XYAB12ABSB7868434') ->addBillingPlanById('P-5ML4271244454362WXNWU5NQ') ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', $start_date);
此版本支援 Laravel 6 或更高版本。
如有任何問題,請在問題部分建立一個。
如果您願意貢獻:
分叉這個儲存庫。
實現您的功能。
產生拉取請求。