Heim >Backend-Entwicklung >PHP-Tutorial >Bezahlen Sie mit PHP und der PayPal-API

Bezahlen Sie mit PHP und der PayPal-API

王林
王林Original
2023-06-19 16:13:192897Durchsuche

Mit der zunehmenden Beliebtheit von Online-Transaktionen diversifizieren sich die Zahlungsmethoden allmählich, wobei PayPal als weit verbreitete Zahlungsmethode sehr beliebt ist. Wenn Sie PayPal zur Abwicklung von Transaktionen auf Ihrer Website oder App nutzen möchten, können Sie PHP und die PayPal-API verwenden, um den Zahlungsvorgang einfach abzuschließen.

Die PayPal-API ist eine Reihe von Programmierschnittstellen für die Interaktion mit PayPal. Über die API können Sie Benachrichtigungen von PayPal erhalten, die neuesten Transaktionsinformationen abfragen, Zahlungsanfragen initiieren und vieles mehr. In diesem Artikel erklären wir, wie Sie Zahlungen mit PHP und der PayPal-API durchführen. Fangen wir an!

Schritt 1: PayPal-API-Anmeldeinformationen erhalten

Bevor Sie die PayPal-API verwenden, müssen Sie API-Anmeldeinformationen erhalten. Dadurch können Sie über die API mit PayPal kommunizieren und Transaktionen durchführen. Um Anmeldeinformationen zu erhalten, befolgen Sie diese Schritte:

1. Besuchen Sie die PayPal-Entwickler-Website, melden Sie sich bei Ihrem Konto an und klicken Sie auf Kontocenter.

2. Klicken Sie auf „Profil“.

3. Klicken Sie auf „Meine Apps und Anmeldeinformationen“.

4. Klicken Sie auf „Anmeldeinformationen erstellen“.

5. Wählen Sie den API-Anmeldeinformationstyp (und so weiter):

– „Zahlung“ stellt die Anwendung dar, von der Sie Zahlungen erhalten.
– „Auszahlungen“ stellen Zahlungen an Benutzer dar, die Ihre Anwendung durchführen wird.
- „Abonnements und Vereinbarungen“ stellen wiederkehrende Zahlungen dar, die von Ihrer Anwendung ausgeführt werden.

6. Geben Sie Ihren Anwendungsnamen und optional eine Beschreibung ein und klicken Sie auf Anmeldeinformationen erstellen.

7. Sie sehen Ihre API-Anmeldeinformationen. Bitte bewahren Sie sie an einem sicheren Ort auf, da Sie sie in Ihrem Code benötigen.

Schritt 2: Mit PayPal verbinden

Jetzt müssen Sie im Code eine Verbindung zur PayPal-API herstellen. Um eine Verbindung zu PayPal herzustellen, verwenden Sie den folgenden Code:

$api_endpoint = 'https://api.sandbox.paypal.com'; // Sandbox endpoint
// $api_endpoint = 'https://api.paypal.com'; // Live endpoint
$client_id = 'YOUR_CLIENT_ID_HERE';
$client_secret = 'YOUR_CLIENT_SECRET_HERE';

 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL, $api_endpoint."/v1/oauth2/token");
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt($ch, CURLOPT_POST, 1);
 curl_setopt($ch, CURLOPT_USERPWD, $client_id.":".$client_secret);
 curl_setopt($ch, CURLOPT_POSTFIELDS, "grant_type=client_credentials");
 
 $result = curl_exec($ch);
 $response = json_decode($result);
 
 $access_token = $response->access_token;

Dadurch wird in einer Testumgebung eine Verbindung zur PayPal-API hergestellt. Um eine Verbindung zur Produktionsumgebung herzustellen, kommentieren Sie Zeile 5 aus und kommentieren Sie Zeile 4.

Schritt 3: Eine Zahlungsanfrage initiieren

Da Sie nun mit der PayPal-API verbunden sind, können Sie eine Zahlungsanfrage initiieren. Um eine Zahlungsanforderung zu initiieren, verwenden Sie den folgenden Code:

$post_data = '{
   "intent": "sale",
   "payer": {
     "payment_method": "paypal"
   },
   "transactions": [{
     "amount": {
       "total": "10.00",
       "currency": "USD"
     }
   }],
   "redirect_urls": {
     "return_url": "https://example.com/success",
     "cancel_url": "https://example.com/cancel"
   }
 }';

$ch = curl_init();
 curl_setopt($ch, CURLOPT_URL, $api_endpoint."/v1/payments/payment");
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt($ch, CURLOPT_POST, 1);
 curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
 
 $headers = array(
   "Content-Type: application/json",
   "Authorization: Bearer ".$access_token
 );
 curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
 
 $result = curl_exec($ch);
 $response = json_decode($result);

Dadurch wird eine Zahlungsanforderung über 10 $ initiiert und der Benutzer auf eine Erfolgs- oder Stornierungsseite weitergeleitet. Sie können den Betrag und die Währung nach Bedarf ändern.

Schritt 4: Zahlungsdaten abrufen

Nach erfolgreicher Zahlung müssen Sie die PayPal-Zahlungsdaten abrufen, um sie in der Datenbank zu speichern oder anderweitig zu verarbeiten. Um die Zahlungsanmeldeinformationen zu erhalten, verwenden Sie den folgenden Code:

$payment_id = $response->id;
 $payer_id = $_GET['PayerID'] // Payer ID from the URL parameter
 $execute_payment = '{
   "payer_id": "'.$payer_id.'"
 }';
 
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL, $api_endpoint."/v1/payments/payment/".$payment_id."/execute");
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 curl_setopt($ch, CURLOPT_POST, 1);
 curl_setopt($ch, CURLOPT_POSTFIELDS, $execute_payment);
 
 $headers = array(
   "Content-Type: application/json",
   "Authorization: Bearer ".$access_token
 );
 curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
 
 $result = curl_exec($ch);
 $response = json_decode($result);
 $transaction_id = $response->transactions[0]->related_resources[0]->sale->id;

Dadurch werden die Zahlungs-ID und die Transaktions-ID abgerufen. Sie können diese in der Datenbank speichern oder auf andere Weise verarbeiten.

Schritt 5: PayPal-Benachrichtigungen bearbeiten

Abschließend sendet PayPal Benachrichtigungen an Ihre Anwendung, wenn eine Transaktion stattfindet. Sie können Benachrichtigungen mit dem folgenden Code bearbeiten:

$http_body = file_get_contents('php://input');
 $notification = json_decode($http_body);
 
 if($notification->event_type == "PAYMENT.SALE.COMPLETED") {
   $payment_id = $notification->resource->parent_payment;
   $sale_id = $notification->resource->id;
   // Process the completed sale
 } elseif($notification->event_type == "PAYMENT.SALE.REFUNDED") {
   $payment_id = $notification->resource->parent_payment;
   $refund_id = $notification->resource->id;
   // Process the refunded sale
 } else {
   // Handle other event types
 }

Sie können Zahlungsabschluss- und Rückerstattungsbenachrichtigungen nach Bedarf bearbeiten.

Zusammenfassung

Durch die Verwendung der PHP- und PayPal-API können Sie problemlos Zahlungsanfragen bearbeiten, Zahlungsbelege erhalten und Benachrichtigungen bearbeiten. Mithilfe dieser Codefragmente können Sie Zahlungen über PayPal akzeptieren und Zahlungsinformationen problemlos in Ihren eigenen Anwendungen verwalten.

Das obige ist der detaillierte Inhalt vonBezahlen Sie mit PHP und der PayPal-API. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn