Bezahlart «Paypal» löst wiederholte Bestätigungsmails an Kunden aus

  • Seitdem ich von Joomla 3 auf Joomla 4 aktualisiert habe, bekommen Kunden, die mit PayPal bezahlen, immer wieder das gleiche Bestätigungsmail. Im konkreten Fall sind es bereits 15 Mails innerhalb von 24 Stunden. Bei anderen Bezahlarten tritt dieses Problem nicht auf.


    Ich nutze Virtuemart 4.0.12

    und Joomla 4.2.9.


    Freue mich über Tipps, wie sich das vermeiden lässt.

    Vielen Dank und Gruss
    Christof

  • Hallo Stefan


    Vielen Dank erst mal. Meine Testbestellung hat mit dieser Einstellung nicht funktioniert. Meine Zahlung wurde vom Shop-Betreiber unverzüglich zurückerstattet. Das ergab den Status «Unrecommended Erstattet». Und jetzt bekomme ich alle paar Minuten ein Mail «[7TM303102], (Teil-)Rückerstattung Ihrer Bestellung im Shop ...».


    Vielleicht verhält sich eine richtige Bestellung anders. Es muss also die nächste «richtige» Bestellung abgewartet werden.


    Vielen Dank und Gruss
    Christof

  • Nachtrag:
    Solange der Bestell-Status «Unrecommended Erstattet» ist, wird weiterhin ein Mail gesendet. Allerdings werden die Abstände immer grösser. Zu Beginn kam das Mail alle 2 Minuten, dann waren es 3 Minuten, dann 6 Minuten, dann ca. 10 Minuten, dann ca. 22 Minuten, dann ca. 42 Minuten, dann ca. 86 Minuten, dann 171 Minuten, dann 341 Minuten. Es sieht so aus, als ob der Zeitabstand jedes mal verdoppelt wird. Vielleicht hilft das bei der Fehlersuche.


    Vielen Dank und Gruss
    Christof

  • Die letzten beiden Mails wurden heute um 05:17 und gestern um 23:36 gesendet. Genau zu diesen beiden Zeitpunkten gibt's im Serverlog die folgenden Einträge:

    2023-04-01 05:17:29 Error 173.0.81.65 500 POST /index.php?option=com_virtuemart&view=vmplg&task=notify&tmpl=component&lang= HTTP/1.0

    2023-03-31 23:36:05 Error 173.0.81.65 500 POST /index.php?option=com_virtuemart&view=vmplg&task=notify&tmpl=component&lang= HTTP/1.0


    Hilft das? Ich selbst bin leider nicht in der Lage, diese Fehlermeldungen zu interpretieren. Vielen Dank!

  • Ich habe neue Erkenntnisse:


    Für Bestellungen mit dem Status «In Bearbeitung» scheint der Workaround, der hier beschrieben ist, zu funktionieren. Aber es gab in diesem Shop kürzlich zwei Bestellungen, aus denen eine Rückerstattung resultierte. Bei diesen Bestellungen ist der Bestell-Status «Unrecommended Erstattet». Und bei diesem Status werden die oben beschriebenen wiederholten Mails versendet. An den Shop-Betreiber und an den Kunden.

  • Die letzten beiden Mails wurden heute um 05:17 und gestern um 23:36 gesendet. Genau zu diesen beiden Zeitpunkten gibt's im Serverlog die folgenden Einträge:

    2023-04-01 05:17:29 Error 173.0.81.65 500 POST /index.php?option=com_virtuemart&view=vmplg&task=notify&tmpl=component&lang= HTTP/1.0

    2023-03-31 23:36:05 Error 173.0.81.65 500 POST /index.php?option=com_virtuemart&view=vmplg&task=notify&tmpl=component&lang= HTTP/1.0


    Hilft das? Ich selbst bin leider nicht in der Lage, diese Fehlermeldungen zu interpretieren. Vielen Dank!

    Hallo Christof,


    das hat mich auf eine Idee gebracht. Bei mir war es gestern auch so, dass ich eine Rückerstattung von PayPal hatte und die Mail immer wieder zugestellt wurde (auch mit den wachsenden zeitlichen Abständen). Ich hatte zuvor auch auf Joomla 4 aktualisiert.


    Kann es sein, dass in deinem Template eine component.php liegt? Ist diese eventuell nicht mit Joomla4 kompatibel? Bei mir war das anscheinend das Problem. Ich habe die Datei entfernt und noch mal eine PayPal Rückerstattung angestoßen. Diese Mail kam bislang nur 1 mal. Ich werde das weiter beobachten, bin aber gerade guter Dinge.


    Beste Grüße

    Dirk

  • Ahoj Dirk


    im Template-Ordner hat es tatsächlich eine Datei component.php. Wie finde ich heraus, ob sie mit Joomla 4 kompatibel ist. Ich bin fast sicher, dass sie es ist, denn sie stammt von Cassiopeia. Ich habe Hemmungen, diese Datei einfach zu löschen.


    Grüsse

    Christof

  • Hi,

    verwendest du Cassiopaia? Dann sollte das wirklich funktionieren.


    Du kannst einfach "?tmpl=component" an deine Domain hinten anfügen. Z.B.: deinedomain.de/?tmpl=component


    Wenn du einen Fehler bekommst, dann ist es nicht kompatibel. Wenn deine Seite blanko (ohne Styles) lädt, dann ist alles in Ordnung und der Fehler entsteht an einer anderen Stelle.


    Ich kann jetzt aber mit ziemlicher Sicherheit sagen, dass das Problem bei mir gelöst ist.

  • Wenn ich /?tmpl=component zur Domain hinzufüge, wird die Seite ohne Fehlermeldung geladen. Sie sieht einfach seltsam formatiert aus.


    Ich habe schon seit längerer Zeit keine solchen Mails mehr bekommen. Aber zugegeben: ich hatte auch schon seit längerer Zeit keine Rückerstattung von PayPal mehr. Gemäss StefanSTS ist Paypal Checkout gerade bei iStraxx in Arbeit. Ich warte mal auf die neue Version.


    Danke Dir und Grüsse

    Christof

  • Servus,


    die component.php ist für die Darstellung von Fenstern, in denen nur der Hauptinhalt dargestellt werden soll.

    Popups für AGB, Datenschutz usw. nutzen das gerne.


    Natürlich sollte die component.php aus einem alten Joomla 3-Template angepasst werden, wenn man es für Joomla 4 verwendet. Meistens muss man ja dann noch mehr verändern.


    Ich wüsste nicht, was die component.php mit den mehrfachen Bestellmails zu tun haben sollte, ich halte das eher für einen Zufall, dass es nach der Änderung funktioniert hat. Bestehen werde ich nicht darauf, dass es daran nicht liegen kann, aber ich halte es für sehr unwahrscheinlich, dass irgendwann in dem Mail- oder IPN-Prozess die component.php aufgerufen wird, und dann ein Fehler die Weiterverarbeitung behindert.


    Im Zweifelsfall würde ich an anderen Stellen suchen, und evtl. die Beschränkung der Statusänderung durch IPN auch auf Erstattet anwenden. Auf den Status Erstattung kann man ja auch manuell wechseln. (Ich lasse Paypal so etwas sowieso nie machen, nur von Status P auf C und sonst nichts.)


    Grüße

    Stefan

  • Hallo Stefan,


    in dem Error-Log oben steht folgendes:

    2023-04-01 05:17:29 Error 173.0.81.65 500 POST /index.php?option=com_virtuemart&view=vmplg&task=notify&tmpl=component&lang= HTTP/1.0


    Hier kommt das "tmpl=component" vor.


    Das hat mich auf die Idee gebracht und in meinem Fall war das wirklich die Lösung. Eventuell wird dann kein Erfolg an PayPal zurück gemeldet und PayPal denkt, es muss diese URL immer wieder triggern?


    Ich behaupte nicht, dass das jetzt die Lösung ist, aber dem einen oder anderen kann es vielleicht helfen. Ich kann mir schon vorstellen, dass diese Datei beim Upgrade manchmal vergessen wird.


    Beste Grüße

    Dirk

  • Hallo Dirk,


    danke Dir für die Erklärung. Dann scheint ja hier genau der Fall eingetreten zu sein, den ich für unwahrscheinlich gehalten hatte.

    Ich werde das einmal weiterleiten.


    Die component.php wird in der Tat oft nicht angepasst, ebenso die error.php.
    Evtl. ist das ein "Joomla-Ding", dass man zu einer solchen Funktion überhaupt ein Template aufrufen muss. Die component.php ist ja grob gesprochen eine abgespeckte index.php des Templates.


    Grüße

    Stefan

  • Achja, löschen würde ich die Datei auch nicht unbedingt.

    PS. Wenn man die component.php aus dem Template löscht, sollte die component.php des system-Templates verwendet werden.

    Löschen oder Umbenennen sollte also in diesem Fall funktionieren.
    Es wird dann nur in anderen Anwendungen (Popups usw.) nicht das richtige CSS und evtl. JS geladen.


    STS