Dokumentation
Verwendung
Unterstützung
Wichtig
Laravel 11 wird die letzte Version sein, die für v3.0 unterstützt wird. An Version 4 wird aktiv gearbeitet und sie wird bis Ende Oktober 2024 veröffentlicht. Für Version 4 werden folgende Änderungen eingeführt:
PHP 8.1+ erforderlich.
Laravel 10 und höher erforderlich.
Integration des PayPal JS SDK.
Symfony-Plugin.
Die Dokumentation für das Paket kann durch Klicken auf den folgenden Link angezeigt werden:
https://laravel-paypal.readthedocs.io/en/latest/
Die alte Dokumentation finden Sie unter folgendem Link:
https://srmklive.github.io/laravel-paypal/docs.html
Im Folgenden finden Sie einige Möglichkeiten, wie Sie auf den PayPal-Anbieter zugreifen können:
// Importieren Sie zuerst die Klassennamensräume, bevor Sie sie direkt verwenden. Verwenden Sie SrmklivePayPalServicesPayPal als PayPalClient;$provider = new PayPalClient;// Durch die Fassade. Namespaces müssen nicht importiert werden$provider = PayPal::setProvider();
Die Konfigurationsdatei paypal.php befindet sich im config- Ordner. Im Folgenden sind die Inhalte zum Zeitpunkt der Veröffentlichung aufgeführt:
return ['mode' => env('PAYPAL_MODE', 'sandbox'), // Kann nur 'sandbox' oder 'live' sein. Wenn leer oder ungültig, wird „live“ verwendet.'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', ' '), ],'paid_action' => env('PAYPAL_PAYMENT_ACTION', 'Sale'), // Kann nur 'Sale', 'Authorization' oder 'Order'' sein.''currency' => env('PAYPAL_CURRENCY', 'USD'), 'notify_url' => env('PAYPAL_NOTIFY_URL', ''), // Ändern Sie dies entsprechend für Ihre Anwendung.'locale' => env('PAYPAL_LOCALE', 'en_US'), // Gateway-Sprache erzwingen, z. B. it_IT, es_ES, en_US ... (nur für Express-Checkout)'validate_ssl' => env('PAYPAL_VALIDATE_SSL', true), // Validieren SSL beim Erstellen eines API-Clients.];
Sie können die PayPal-API-Konfiguration überschreiben, indem Sie die setApiCredentials
-Methode aufrufen:
$config = ['mode' => 'live','live' => ['client_id' => 'PAYPAL_LIVE_CLIENT_ID','client_secret' => 'PAYPAL_LIVE_CLIENT_SECRET','app_id' => 'PAYPAL_LIVE_APP_ID', ],'paid_action' => 'Sale','currency' => 'USD','notify_url' => 'https://your-site.com/paypal/notify','locale' => 'en_US', 'validate_ssl' => true, ];$provider->setApiCredentials($config);
Nach dem Festlegen der PayPal-API-Konfiguration durch Aufrufen setApiCredentials
-Methode. Sie müssen ein Zugriffstoken erhalten, bevor Sie API-Aufrufe durchführen
$provider->getAccessToken();
Standardmäßig wird die Währung USD
verwendet. Wenn Sie es ändern möchten, können Sie die Methode setCurrency
aufrufen, um eine andere Währung festzulegen, bevor Sie die entsprechenden API-Methoden aufrufen:
$provider->setCurrency('EUR');
Bitte beachten Sie, dass in den folgenden Beispielen der Aufruf von
addPlanTrialPricing
optional ist und weggelassen werden kann, wenn Sie Abonnements ohne Testzeitraum erstellen.
setReturnAndCancelUrl()
ist optional. Wenn Sie URLs festlegen, müssen Sie echte Domains verwenden. zB funktioniert localhost, project.test nicht.
$response = $provider->addProduct('Demo-Produkt', 'Demo-Produkt', 'SERVICE', 'SOFTWARE') ->addPlanTrialPricing('DAY', 7) ->addDailyPlan('Demo-Plan', 'Demo-Plan', 1.50) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $provider->addProduct('Demo-Produkt', 'Demo-Produkt', 'SERVICE', 'SOFTWARE') ->addPlanTrialPricing('DAY', 7) ->addWeeklyPlan('Demo-Plan', 'Demo-Plan', 30) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $provider->addProduct('Demo-Produkt', 'Demo-Produkt', 'SERVICE', 'SOFTWARE') ->addPlanTrialPricing('DAY', 7) ->addMonthlyPlan('Demo-Plan', 'Demo-Plan', 100) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $provider->addProduct('Demo-Produkt', 'Demo-Produkt', 'SERVICE', 'SOFTWARE') ->addPlanTrialPricing('DAY', 7) ->addAnnualPlan('Demo-Plan', 'Demo-Plan', 600) ->setReturnAndCancelUrl('https://example.com/paypal-success', 'https://example.com/paypal-cancel') ->setupSubscription('John Doe', '[email protected]', '2021-12-10');
$response = $provider->addProduct('Demo-Produkt', 'Demo-Produkt', 'SERVICE', 'SOFTWARE') ->addCustomPlan('Demo Plan', 'Demo Plan', 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);
Diese Version unterstützt Laravel 6 oder höher.
Bei Problemen erstellen Sie bitte eines im Abschnitt „Probleme“.
Wenn Sie einen Beitrag leisten möchten:
Forken Sie dieses Repository.
Implementieren Sie Ihre Funktionen.
Pull-Anfrage generieren.