Nach vielen Lesungen integrierte ich am Ende PayPal mit der IPN-Methode. Ich fahre 3 prüft in listener.php
die da sind:PayPal IPN: wie mit ungültiger Benachrichtigung zu antworten
- prüfen, ob die
txn_id
nicht bereits in der db (jemand einen alten bestätigten Transaktions-ID verwenden, um eine bestätigte Status zurückzukehren, soweit sie in der PayPal-Dokumentation geschrieben) - überprüfen, ob
receiver_email
Streichhölzer mit dem Verkäufer email - überprüfen, ob
custom
Streichhölzer mit der Auftrags-ID - überprüfen, ob
mc_gross
Streichhölzer mit dem Preis
Wenn alle Prüfungen richtig ausgeführt wurden, füge ich alle Daten in die db ein; Was ich jetzt vermisse, ist, was ich tun soll, wenn einer dieser Parameter nicht übereinstimmt. Kann ich eine Code-Nachricht an PayPal zurücksenden, die "hey PayPal, etwas schief gelaufen" bedeutet: Löschen Sie die Transaktion, zeigen Sie eine Fehlermeldung an und lassen Sie den Käufer es eventuell erneut versuchen "? Wenn nicht, wie würden Sie mit dieser Situation umgehen?
Meinst du das Öffnen einer Socket-Verbindung zu PayPal wie '$ fp = fsockopen ('ssl: //www.sandbox.paypal.com', 443, $ errno, $ errstr, 30);'? Meine Frage kam von der Ziehung in der [PayPal Dokumentation] (https://developer.paypal.com/docs/classic/paypal-payments-standard/integration-guide/formbasics/) am Ende der Seite; Punkt 3 sagt: 'Ihr Server muss dann die Benachrichtigung validieren, um sicherzustellen, dass es legitim ist. Was dieser Satz bedeutet, wenn nicht "Ihr Server muss die Benachrichtigung aka die Transaktion validieren"? Vielen Dank! – Brigo
Das bedeutet zuerst, dass Sie einen HTTP-Anruf an PayPal (Server zu Server) tätigen müssen, der alle Daten enthält, die Sie gerade erhalten haben. PayPal antwortet entweder "GEPRÜFT" oder "UNGÜLTIG" (oder etwas Ähnliches). Die Idee ist, dass Sie nach PayPal fragen: "Ich habe diese Zahlungsmitteilung erhalten, haben Sie es geschickt oder ist es eine Fälschung?" – Rad80