Sponsor-Board.de

Normale Version: [PHP] PayPal IPN
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Moin,

bin grad bissl am Verzweifeln mit PayPal IPN. Könnte mir da evtl jemand helfen? Geht um ein public Projekt für mein SourceMod-Plugin 'PayPal Donations'.

[Link: Registrierung erforderlich]

Eventuell mag ja jemand helfen.
Da müsstest du schon etwas genauer werden, wo das Problme ist und was du gemacht hast.
Ich möchte, dass wenn die Zahlung erfolgreich war, oder eben nicht, dass man auf die file "ipn-listener.php" zurückkommt, welche nun eben prüft, anhand von $_POST, ob die Zahlung nun erfolgreich war oder eben nicht.

die ipn-listener.php-Datei sieht folgendermaßen aus:

PHP-Code:
<?php namespace Listener;
require 
__DIR__.'/classes/paypal-ipn.php';
require 
__DIR__.'/classes/Helper.php';
use 
PaypalIPN;
$ipn = new PaypalIPN();
// Use the sandbox endpoint during testing.
$ipn->useSandbox();
$verified $ipn->verifyIPN();
if (
$verified) {
    
/*
     * Process IPN
     * A list of variables is available here:
     * https://developer.paypal.com/webapps/developer/docs/classic/ipn/integration-guide/IPNandPDTVariables/
     */
     
Helper::redirect('verify_success.php');
}
else {
  
Helper::redirect('verify_error.php');
}
// Reply with an empty 200 response to indicate to paypal the IPN was received correctly.
header("HTTP/1.1 200 OK"); 


Anhang der if ($verify)-Funktion müsste das ganze ja so möglich sein. Das Problem, welches sich mir nun stellt ist, dass wenn ich als success_url die ipn-listener.php angebe, dass mir im Apache-Errorlog ausgespuckt wird, dass keine $_POST-Daten vorhanden sind, anhand welches das Script abgleichen könnte.

Du musst bei PayPal bei einer Zahlung auch die URL als IPN Listener eintragen, hast du dies in deinem Händlerkonto gemacht?

Und PayPal sendet einen IPN Callback nicht der Benutzer löst diesen aus.
Die IPN Listener URL muss nicht zwangsläufig im Händlerkonto stehen. Diese kann man auch über die HTML Form übergeben. Dafür ist der PayPal-Parameter 'notify_url' da.

Könntest du mich eventuell mal in Telegram oder so anschreiben? ggf. könntest du mir ja helfen^^
Gerade nachgesehen, ja das geht auch.
Hast du bei PayPal das erhalten von IPNs aktiviert, das wird jedoch vorausgesetzt.

Der IPN ist nicht für den Benutzer sondern für PayPal. Das heißt du brauchst zwei Seiten, einmal den Teil oben den Ipn listener und eine sucess_url für den Kunden. Bei den Kunden ma hat du nichts, da du keine Informationen hast. Jedoch bei dem IPN Listener kannst du prüfen ob die Zahlung erfolgreich war.


Und nein, Telegramm habe ich nicht.
Ja ist aktiviert. Hab dich ma in skype geaddet. Kannste mir evtl eben helfen?
Referenz-URLs