ドキュメント
使用法
サポート
重要
Laravel 11 は、v3.0 でサポートされる最後のバージョンになります。 v4 は現在積極的に開発されており、2024 年 10 月末までにリリースされる予定です。v4 では、次の変更が導入されます。
PHP 8.1 以降が必要です。
Laravel 10以降が必要です。
PayPal JS SDKの統合。
シンフォニープラグイン。
パッケージのドキュメントは、次のリンクをクリックすると表示できます。
https://laravel-paypal.readthedocs.io/en/latest/
古いドキュメントは次のリンクから参照できます。
https://srmklive.github.io/laravel-paypal/docs.html
PayPal プロバイダーにアクセスする方法は次のとおりです。
// 直接使用する前に、まずクラスの名前空間をインポートしますuse SrmklivePayPalServicesPayPal as PayPalClient;$provider = new PayPalClient;// ファサード経由。 namespaces$provider = PayPal::setProvider(); をインポートする必要はありません。
構成ファイルpaypal.phpはconfigフォルダーにあります。公開時の内容は以下の通りです。
return ['mode' => env('PAYPAL_MODE', 'sandbox'), // 'sandbox' または 'live' のみにすることができます。空または無効な場合は、「live」が使用されます。'sandbox' => ['client_id' => env('PAYPAL_SANDBOX_CLIENT_ID', ''),'client_secret' => env('PAYPAL_SANDBOX_CLIENT_SECRET', ''),'app_id ' => 「APP-80W284485P519543T」、 ],'live' => ['client_id' => env('PAYPAL_LIVE_CLIENT_ID', ''),'client_secret' => env('PAYPAL_LIVE_CLIENT_SECRET', ''),'app_id' => env('PAYPAL_LIVE_APP_ID', ' ')、 ],'payment_action' => env('PAYPAL_PAYMENT_ACTION', 'Sale'), // 'Sale'、'Authorization'、または 'Order''currency' => env('PAYPAL_CURRENCY', 'USD'), 'notify_url' => env('PAYPAL_NOTIFY_URL', ''), // 状況に応じてこれを変更してくださいapplication.'locale' => env('PAYPAL_LOCALE', 'en_US'), // 強制ゲートウェイ言語、つまり it_IT、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' => 'Sale','currency' => 'USD','notify_url' => 'https://your-site.com/paypal/notify','locale' => 'en_US', 'validate_ssl' => true、 ];$provider->setApiCredentials($config);
setApiCredentials
メソッドを呼び出して PayPal API 構成を設定した後。 API呼び出しを実行する前にアクセストークンを取得する必要があります
$provider->getAccessToken();
デフォルトでは、使用される通貨はUSD
です。変更したい場合は、それぞれの API メソッドを呼び出す前に、 setCurrency
メソッドを呼び出して別の通貨を設定できます。
$provider->setCurrency('EUR');
以下の例では、
addPlanTrialPricing
の呼び出しはオプションであり、試用期間なしでサブスクリプションを作成する場合は省略できることに注意してください。
setReturnAndCancelUrl()
はオプションです。 URL を設定する場合は、実際のドメインを使用する必要があります。たとえば、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, 'MONTH', 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 以降をサポートします。
問題がある場合は、「問題」セクションに問題を作成してください。
貢献したい場合:
このリポジトリをフォークします。
機能を実装します。
プルリクエストを生成します。