Werbung / Banner buchen
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: MODUL: PayPal PLUS & PayPal Checkout Zahlungsmodule für modified eCommerce Shopsoftware

    GTB

    • modified Team
    • Gravatar
    • Beiträge: 6.307
    • Geschlecht:
    @lullifatz

    ich kann anbieten, dass ich mir das direkt in deinem Shop anschaue.
    Melde dich einfach per Mail bei mir, wenn du Interesse hast.

    Gruss Gerhard

    Schreinermeister

    • Fördermitglied
    • Beiträge: 415
    • Geschlecht:
    Hallo zusammen,

    modified eCommerce Shopsoftware v2.0.7.2 rev 14622 dated: 2022-07-04
    Datenbank Version: "MOD_2.0.7.2"
    PHP Version 8.1.7

    Hab heute eine eigentümliche Bestellung erhalten und vermute, dass es mit PayPal zusammenhängt.

    Eine Privatperson aus Belgien hat heute eine Bestellung aufgegeben, obwohl das durch die Kundengruppe ausgeschlossen ist (Gast nur innerhalb Deutschland), weiterhin wurden keine Versandkosten für die Bestellung verrechnet.
    payment_method = paypal
    PayPal-Version 1.85

    Karsta und ich haben versucht die Bestellung nachzuvollziehen, haben es aber nicht geschafft.

    Gruß Chris

    lullifatz

    • Fördermitglied
    • Beiträge: 474
    Hallo,

    ist es eigentlich normal, dass bei "Wer ist online" sehr sehr viele Einträge "/callback/paypal/webhook.php" findet?

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Wenn wir eine PayPal Zahlung über den Shop erstatten, wird die Bestellung auch nicht mehr automatisch auf storniert gesetzt. Wo könnte dazu das Problem sein? Ich habe schon bei allen Webhooks, die mit refund beschrieben sind, den Status auf storniert gesetzt.

    Gruß Matthias

    bennyle

    • Neu im Forum
    • Beiträge: 16
    Hallo,

    wir haben den neuen Paypal Checkout seit ein paar Tagen aktiviert. Ein Kunde aus Indonesien hat uns jetzt mitgeteilt, dass er nicht mehr mit Paypal zahlen kann. Ich habe es nachgestellt und bei mir kommt bei Auswahl von Indonesien als Liefer- und Rechnungsanschrift, nachdem ich mich bei Paypal eingeloggt habe, folgende Fehlermeldung:

    Zitat
    Leider ist ein Systemfehler aufgetreten. Versuchen Sie es später noch einmal.

    Andere Länder wie USA, Schweden oder Philippinen funktionieren aber.

    VG, Benjamin

    bennyle

    • Neu im Forum
    • Beiträge: 16
    Hallo,

    ich habe auch noch ein weiteres Problem entdeckt. Wenn der Kunde mit Paypal (nicht Paypal Express) bezahlt, die Zahlung bei Paypal abschließt und dann zum Shop auf die Seite "checkout_confirmation.php" zurück geleitet wird, dauert es erst ein paar Sekunden bis die Bestellung verarbeitet wird und er auf die "checkout_success.php" geleitet wird. In dieser Zeit kam es bei uns vor, dass der Kunde schon einen anderen Link auf der "checkout_confirmation.php" klickt und gar nicht auf die "checkout_success.php" gelangt. Ob dann die Bestellung immer richtig abgeschlossen wird und die Bestell-Email versendet wird ist fraglich.
    Könnte man die "checkout_confirmation.php" nicht so lange mit grau überdecken bis man zur "checkout_success.php" geleitet wird?

    VG, Benjamin

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.871
    • Geschlecht:
    Mal eine Frage zum Design der Buttons:
    Wie kann ich diese denn manuell beeinflussen?

    Liegt wohl daran, dass der Button über ein Iframe eingebunden wird.

    Weder über CSS noch über einen Versuch mittels eine extra Javascript Datei in /templates/meintemplate/javascript/extra habe ich es geschafft.
    Die Idee über das Javascript dazu kam von hier: https://developer.paypal.com/sdk/js/reference/#link-style

    Mir geht es eigentlich nur um die Vergrößerung des Buttons, damit er mit meinem Template harmonisiert.

    In der Datei /includes/extra/application_bottom/10_paypal.php sind zwei Stellen definiert mit:

    Code: PHP  [Auswählen]
    height: 35

    Diese möchte ich aber ungern ändern, dann ist das wieder nicht updatefähig...

    Gibt es dazu eine Idee bzw. einen Hinweis?

    Viele Grüße
    Dominik

    karsta.de

    • Experte
    • Beiträge: 3.159
    Leider wird die PayPal-CSS nach den Templates-CSS-Dateien geladen, so dass es schwierig ist, das vorgesehene PayPal-CSS zu überschreiben. Aus diesem Grund habe ich auch die Original /includes/external/paypal/css/apms.css an meine Wünsche angepasst.
    Du könntest natürlich eine custom.css in die apms.css am Ende einfügen und laden, doch dann musst du bei Updates auch daran denken diese wieder einzufügen. Der Vorteil wäre allerdings, dass die custom.css nicht überschrieben werden würde.

    [EDIT]
    Ansonsten ist doch deine Idee mit dem Pfad /includes/extra/application_bottom/ nicht schlecht. Hast du mal die Paypal-Abfragen genutzt und dort eine zusätzlich Datei mit deinem extra_paypal_style eingefügt.

    [EDIT]
    Habe es gerade getestet, funktioniert 1A updatesicher.
    Datei 99_paypalbutton_style.php erstellt und eingefügt:

    Code: PHP  [Auswählen]
    <?php
    /* -----------------------------------------------------------------------------------------
       $Id: includes/extra/application_bottom/99_paypalbutton_style.php  $

       modified eCommerce Shopsoftware
       http://www.modified-shop.org

       Copyright (c) 2009 - 2013 [www.modified-shop.org]
       -----------------------------------------------------------------------------------------
       Released under the GNU General Public License
       ---------------------------------------------------------------------------------------*/

     
        if (basename($PHP_SELF) == FILENAME_CHECKOUT_PAYMENT
            || basename($PHP_SELF) == FILENAME_PRODUCT_INFO
            || (basename($PHP_SELF) == FILENAME_SHOPPING_CART
                && $_SESSION['cart']->count_contents() > 0
                )
            )
        {
       
       echo '<link  rel="stylesheet" property="stylesheet" type="text/css" href="templates/'.CURRENT_TEMPLATE.'/css/paypalbutton.css" media="screen"  />'.PHP_EOL;

      }

    Style im Template hinterlegt, fertig.

    BG Karsta

    karsta.de

    • Experte
    • Beiträge: 3.159
    Vielleicht noch abfragen, ob Paypal überhaupt definiert ist und verwendet wird.

    BG Karsta

    Timm

    • Fördermitglied
    • Beiträge: 6.260
    @lullifatz

    Vermutung

    Bzgl deiner Fehlermeldung, dass die Menge 0 ist:
    Schau mal bitte nochmal in das access.log. Kann es sein, dass der Kunde es mit PayPal Express probiert hat im Warenkorb? Und schau mal bitte wie lange der letzte Klick des Kunden vor dieser Fehlermeldung her war. Eventuell ist die Session schon abgelaufen, weil er den Warenkorb gefüllt hat und dann aber erst später die Bestellung abschließen wollte. Er sieht die Produkte im Warenkorb zwar noch, weil er die Seite nicht aktualisiert hat und klickt dann auf Paypal Express. In dem Moment wird die Session erneuert und der Warenkorb ist aber leer. Deshalb dann die Fehlermeldung.

    Ich konnte diese Fehlermeldung bei einem Freund gerade sehen und da war die Zeit zwischen letztem Klick und Klick auf PayPal Express 1 Stunde und 15 Minuten.

    Gruß Timm

    voodoopupp

    • Fördermitglied
    • Beiträge: 1.871
    • Geschlecht:
    [...]
    [EDIT]
    Ansonsten ist doch deine Idee mit dem Pfad /includes/extra/application_bottom/ nicht schlecht. Hast du mal die Paypal-Abfragen genutzt und dort eine zusätzlich Datei mit deinem extra_paypal_style eingefügt.

    [EDIT]
    Habe es gerade getestet, funktioniert 1A updatesicher.
    Datei 99_paypalbutton_style.php erstellt und eingefügt:

    Code: PHP  [Auswählen]
    <?php
    /* -----------------------------------------------------------------------------------------
       $Id: includes/extra/application_bottom/99_paypalbutton_style.php  $

       modified eCommerce Shopsoftware
       http://www.modified-shop.org

       Copyright (c) 2009 - 2013 [www.modified-shop.org]
       -----------------------------------------------------------------------------------------
       Released under the GNU General Public License
       ---------------------------------------------------------------------------------------*/

     
        if (basename($PHP_SELF) == FILENAME_CHECKOUT_PAYMENT
            || basename($PHP_SELF) == FILENAME_PRODUCT_INFO
            || (basename($PHP_SELF) == FILENAME_SHOPPING_CART
                && $_SESSION['cart']->count_contents() > 0
                )
            )
        {
       
       echo '<link  rel="stylesheet" property="stylesheet" type="text/css" href="templates/'.CURRENT_TEMPLATE.'/css/paypalbutton.css" media="screen"  />'.PHP_EOL;

      }

    Style im Template hinterlegt, fertig.
    [...]

    Super Karsta, vielen Dank - schau ich mir mal an. Daran hatte ich auch schon gedacht, eine weitere Datei in /includes/extra/application_bottom/  zu hinterlegen, welche danacht geladen wird. Nur hatte ich nicht an den Verweis ins Template auf ne CSS Datei gedacht  :thumbs:

    Schau ich mir mal genauer an, was ich da bastel

    Vielleicht noch abfragen, ob Paypal überhaupt definiert ist und verwendet wird.
    [...]

    Wie meinst du das bzw. wie könnte ich das abfangen?

    Viele Grüße
    Dominik

    [EDIT]
    also entweder ich bin zu blöd oder es klappt nicht wie gewünscht.
    Ich habe die Datei entsprechend eingebunden und diese wird auch im Quellcode eingebunden und geladen.

    nur leider kann ich weiterhin nicht die im Iframe enthaltenen Größen ändern.

    Denn die fixe Höhe von 35px wird ja in der CSS Klasse .paypal-button-row gesetzt
    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Nur leider kann ich diese in der eigenen CSS Datei nicht überschreiben, das wird weiterhin inline geladen.

    Grüße
    Dominik

    karsta.de

    • Experte
    • Beiträge: 3.159

    Vielleicht noch abfragen, ob Paypal überhaupt definiert ist und verwendet wird.

    BG Karsta
    Wie meinst du das bzw. wie könnte ich das abfangen?

    Du musst das Ganze so schreiben:
    Code: PHP  [Auswählen]
    <?php
    /* -----------------------------------------------------------------------------------------
       $Id: includes/extra/application_bottom/99_paypalbutton_style.php  $

       modified eCommerce Shopsoftware
       http://www.modified-shop.org

       Copyright (c) 2009 - 2013 [www.modified-shop.org]
       -----------------------------------------------------------------------------------------
       Released under the GNU General Public License
       ---------------------------------------------------------------------------------------*/

     if (defined('MODULE_PAYMENT_PAYPAL_SECRET')
          && MODULE_PAYMENT_PAYPAL_SECRET != ''
          )
      {
        if (basename($PHP_SELF) == FILENAME_CHECKOUT_PAYMENT
            || basename($PHP_SELF) == FILENAME_PRODUCT_INFO
            || (basename($PHP_SELF) == FILENAME_SHOPPING_CART
                && $_SESSION['cart']->count_contents() > 0
                )
            )
        {
       
       echo '<link  rel="stylesheet" property="stylesheet" type="text/css" href="templates/'.CURRENT_TEMPLATE.'/css/paypalbutton.css" media="screen"  />'.PHP_EOL;

      }
    }

    Auf CSS im Iframe kannst so oder so nicht zugreifen. Es kommt darauf an was du machen willst und ob man das über Tricks lösen kann.
    Sonst ruf wegen des CSS einfach kurz durch.

    BG Karsta

    lullifatz

    • Fördermitglied
    • Beiträge: 474
    @Timm

    Hallo Timm,

    ehrlich gesagt, blicke ich nicht durch, wie ich das finden soll. Gerhard hatte angeboten, dass er sich das mal an sieht. Er hatte eine Änderung gemacht, die nicht funktionierte. Er wollte sich das am Montag nochmals ansehen. Bisher habe ich keine weitere Info von ihm bekommen.
    In den letzten Tagen hatten wir auch keinen Vorfall mehr. Vielleicht hat er etwas geändert!?

    Gruß Matthias

    Timm

    • Fördermitglied
    • Beiträge: 6.260
    @lullifatz
    Du gehst in die Bestellung des Kunden und schaust nach mit welcher IP er eingeloggt war beim Kauf. Dann gehst du in die access.log des Tages die auf deinem Server im Ordner log eins über dem Shoproot liegt. Dort suchst du nach der IP genau zum Zeitpunkt der Fehlermeldung. Und dann gehst du mit der Suchfunktion zurück in der Zeit. Kurz vor dem Zeitpunkt der Fehlermeldung, wird der Kunde ja was gemacht haben im Shop. ZB steht dann da, dass er auf PayPal Express geklickt hat

    Code: XML  [Auswählen]
    92.xxx.xx.xxx - - [15/Jul/2022:10:48:29 +0200] "POST /ajax.php?ext=create_paypal_order&payment_method=paypalexpress HTTP/2.0" 200 24 "https://www.deinedomain.de/shopping_cart.php?products_id=1574" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36"

    Und dann guckst du mit der Suche wann die IP das letzte mal vor diesem Zeitpunkt etwas gemacht hat im Shop. In meinem Fall war es 1h15min vorher. Könnte also sein, dass die Session dadurch abgelaufen war für Gäste.

    Wenn dem so ist, was ein normales Shopverhalten wäre, kann man das mit dem persistenten Warenkorb Modul des modifiedTeams umgehen. Da bleibt der Warenkorb auch für Gäste 30 Tage bestehen.

    Gruß Timm

    lullifatz

    • Fördermitglied
    • Beiträge: 474
    Hallo Timm,

    Zitat
    Du gehst in die Bestellung des Kunden und schaust nach mit welcher IP er eingeloggt war beim Kauf.

    Da geht das schon los. Ich sehe in der Bestellung keine IP Adresse.

    Gruß
    Matthias

    Timm

    • Fördermitglied
    • Beiträge: 6.260
    Moin

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    Da oben siehst du keine IP? Dann vermutlich auch nicht unter Who’s online. Dann hast du das im Backend nicht eingestellt.

    Mir fällt grad ein, dass du die gar nicht aus dem Backend brauchst, da sie im Access.log drinnen steht. Such einfach darin genau nach der Uhrzeit der Fehlermeldung. Dann hast du die IP des Kunden.

    Gruß Timm
               
    anything