Zahlungsmodul - Payment Link falsch

Dieses Thema im Forum "Feature Requests" wurde erstellt von sKaoS, 29. Mai 2012.

  1. sKaoS

    sKaoS New Member

    Hallo zusammen,

    ich habe heute das Zahlungsmodul gekauft und spiel gerade ein wenig damit rum.
    Getestet wird alles mit Paypal-Sandbox (falls das wichtig sein sollte :p)

    Mir ist aufgefallen, dass die Variable {INVOICE_PAY_LINK} falsch ersetzt wird.
    Ich sichere mein Webinterface z.B. per https:// und Port am ende ab. Die URL die aber bei {INVOICE_PAY_LINK} steht ist http:// und der Port.
    So erhalte ich leider immer folgenden Fehler:
    <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>400 Bad Request</title> </head><body> <h1>Bad Request</h1> <p>Your browser sent a request that this server could not understand.<br /> Reason: You're speaking plain HTTP to an SSL-enabled server port.<br /> Instead use the HTTPS scheme to access this URL, please.<br />


    Kann man das irgendwo ändern?

    Das gleiche ist bei erfolgter Zahlung.
    Auf der PayPal-Seite steht dann:
    Der Betrag von €XX EUR wird dem Händler sofort gutgeschrieben.
    Hier ist Ihre Belegnummer für diese Zahlung: 2MK604673E500023J.
    Alle Details zu dieser Transaktion erhalten Sie von uns in Kürze auch per E-Mail an paypal_XXXXXX_pre@XXXX.de

    Zurück zu XXXX Test Store

    Der Link "Zurück zu XXX Test Store" geht aber auch auf http und nicht https://
     
  2. sKaoS

    sKaoS New Member

    Noch ein Fehler

    Hallo,

    leider funktioniert auch das proxy-Script, welches im Handbuch beschrieben ist, nicht richtig:

    [Tue May 29 21:42:28 2012] [warn] [client 173.0.82.126] mod_fcgid: stderr: PHP Notice: Undefined variable: fields_string in /var/www/clients/client1/web1/web/proxy.php on line 7


    Die Zeile die den Fehler verursacht:
    $fields_string .= $key . '=' . $value . '&';
     
  3. sKaoS

    sKaoS New Member

    Bugbix

    Hallo Till oder jemand anderes vom Team ;)

    Der Fehler mit dem falschen Link konnte ich schon beheben.
    Ich habe dazu die Funktion get_ispconfig_url in /usr/local/ispconfig/interface/lib/classes/functions.inc.php geändert.

    Vorher:
    $url = (stristr($_SERVER['SERVER_PROTOCOL'],'HTTPS'))?'https':'http';

    Nachher:
    $url = (stristr($_SERVER['HTTPS'],'on'))?'https':'http';


    Anscheinend wird, trotz HTTPS Verschlüsselung das HTTP/1.1 Protocol verwendet, weshalb es auch komische Fehlermeldungen vom Apache kommen wenn man die Seite, die eig. HTTPS Verschlüsselt ist per HTTP aufrufen möchte.
    Die neue Funktion schaut nun nach, ob HTTPS genutzt wird und wählt dann https als Protokoll.
     
  4. sKaoS

    sKaoS New Member

    Everything done!

    So,

    nach einigem debugging wurde alles behoben.
    Es mussten ein paar Funktionen geändert werden, dass die richtigen URLs verwendet werden.
    Außerdem musste das proxy-php-Script angepasst werden, da ein selbst signiertes Zertifikat für ISPConfig genutzt wurde.
    Es muss noch eine curl-option ( curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); ) hinzugefügt werden, da die bezahlte Rechnung sonst nicht als bezahlt markiert wird.
     
  5. Till

    Till Administrator

    Danke für die Hinweise!

    Die URL zur Bezahlseite lässt sich im Zahlungsmodul unter Globale Einstellungen > Zahlungsanbieter > Link zur Bezahlseite einstellen, Du musst dafür also keinen Code ändern.

    Bei mir erkennt der übrigens die SSL Verschlüsselung richtig mit dem Code wie er im Zahlungsmodul verwendet wird. Liegt vielleicht an der Apache Version.

    Das mit der Curl Option werde ich als Hinweis im Handbuch aufnehmen, das problem hatte bislang niemand, vermutlich nehmen die meisten signierte SSL zertifikate für Zahlungsvorgänge. Die gibt es ja kostenlos bei startssl.
     
  6. sKaoS

    sKaoS New Member

    Hey,

    "vermutlich nehmen die meisten signierte SSL zertifikate für Zahlungsvorgänge" Das selfsigned-certificate ist ja nicht für den Zahlungsvorgang sondern für das Webinterface.
    Der Proxy schickt die Daten von PayPal an das ipn.php-Script im Webinterface, dieses Interface ist aber durch ein Zertifikat verschlüsselt.
    Der eigentliche Zahlvorgang wird seitens PayPal verschlüsselt - hat also nichts mit ISPConfig zu tun :)

    Mir ist aber gerade noch ein Fehler aufgefallen:
    Ich habe bei einer Artikelbeschreibung ein etwas längeren Text - die Tabelle passt sich jedoch nicht in der Höhe an. Ich sehe zwar, dass es eine Funktion für diese gibt - konnte aber beim schnellen rüberblicken nicht genau erkennen warum diese die $nb-Variable nicht erhöht.
     
  7. Till

    Till Administrator

    Ich meine auch ein signiertes SSL Cert für das ISPConfig Interface. Siehe:

    Securing Your ISPConfig 3 Installation With A Free Class1 SSL Certificate From StartSSL | HowtoForge - Linux Howtos and Tutorials

    Du meinst Tabellenhöhe im PDF? Die passt sich bei mir der Artikelbeschreibung an, ich hab meisten so zwischen 2 und 20 Zeilen pro Artikel. Welches PDF Template nimmst Du denn?
     
  8. sKaoS

    sKaoS New Member

    das default_no_vat und die Artikelbeschreibung ist die gleiche wie im Handbuch - Text ist 2 Zeilen lang, Tabelle bleibt aber einzeilig - leider :(
     
  9. Till

    Till Administrator

    Stimmt, hab es gerade mal probiert. Ich nutze meistens nur die Templates mit VAT. Ich scahu mir das mal an, potse es bitte mal im Bugtracker des Zahlungsmoduls.
     
  10. sKaoS

    sKaoS New Member

    Mach ich gleich auf Arbeit - fahr nun los.
    Ein paar Sachen habe ich schon im Bugtracker gepostet.
     
  11. Till

    Till Administrator

    Ich hab das Problem im PDFTemplate gefunden, die Funktion zum zählen der Zeilen kommt mit den neuerdings verwendeten UTF8 kompatiblen Font Dateien von tfpdf nicht klar. Ich schicke Dir gleich mal das geänderte Template per Email.
     
  12. larsik78

    larsik78 New Member

    Könntest Du mir das bitte auch schicken, ich habe das gleiche Problem.

    Wobei ich, um ehrlich zu sein, bis jetzt auch nicht rausgefunden habe, wie ich überhaupt Rechnungs-Templates auswähle bzw. bearbeite. hab es auch in der Doku nicht gefunden??:confused:
     
  13. Till

    Till Administrator

    Klar. Schick mir bitte eine Email an die Adresse von der Du die Lizenz bekommen hast.

    Das geht über die Firmeneinstellungen (Billing > Global settings > Company).
     
  14. larsik78

    larsik78 New Member

    Ok, vielen Dank!
     

Diese Seite empfehlen