Brauche Hilfe zur Programierung für Zahlungssystem mit SHA-Signatur
Author: Zuppiger R.WebSite X5 sendet nur die Zeichenkette und nicht das Resultat der SHA Berechnung (SHASIGN) 40-stellig.
Der PLUGIN funktioniert nicht. Was machen wir falsch?
Herzlichen Dank für Deine Hilfe / Rolf Zuppiger
Kommentar Postfinance: Ich habe festgestellt, dass Sie in Ihren Anfragen die Zeichenkette senden und nicht das Resultat der SHA Berechnung:
Hier ihr letztes Beispiel
AMOUNT=51800+++HASHKEY+++
BGCOLOR=666666+++HASHKEY+++
BUTTONBGCOLOR=aaffaa+++HASHKEY+++
BUTTONTXTCOLOR=00ff00+++HASHKEY+++
CURRENCY=CHF+++HASHKEY+++
EMAIL=***+++HASHKEY+++
FONTTYPE=Verdana+++HASHKEY+++
LANGUAGE=de_CH+++HASHKEY+++
LOGO=http://www.swisstent.ch/images/SWISSTENT-LOGO-NEU-2A.png+++HASHKEY+++
ORDERID=161208-UV76+++HASHKEY+++OWNERTOWN=Reichenburg+++HASHKEY+++OWNERZIP=8864+++HASHKEY+++
PSPID=swisstentTEST+++HASHKEY+++
TBLBGCOLOR=003300+++HASHKEY+++
TBLTXTCOLOR=ffffff+++HASHKEY+++
TITLE=SWISSTENT e-Shop+++HASHKEY+++
TXTCOLOR=ffffff+++HASHKEY+++
Received signature:
AMOUNT=51800Ro63eco@!
CURRENCY=CHFRo63eco@!
LANGUAGE=de_CHRo63eco@!
ORDERID=161208-UV76Ro63eco@!
PSPID=swisstentTESTRo63eco@!
Das System sollte nicht dieses Zeichenkette sondern nur die SHA-Berechnung schicken.
Dazu benötigt man etwas mehr Info, da keiner weiß was das für ein Plugin ist bzw. wie das aufgebaut ist.
das oben sind ja sicher nur die Ausgaben.
Wenn mein Server kein PHP kann, wirft die Seite auch quirliges raus.
Ich kann in einer Musestunde damit mal auseinander setzen.
Da hängt aber sicher einiges dran.
Author
Ergänzung (PostFinace 2016):
5.1 SHA-IN-Signatur
Diese Technik basiert auf dem Prinzip, dass der Server des Händlers für jede Bestellung eine eindeutige Zeichenfolge erzeugt, aus der mittels SHA-Algorithmus ein Hashcode generiert wird. Dieser Hashcode wird in den verborgenen Feldern der Bestellseite des Händlers an uns gesendet. Unser System rekonstruiert die Signatur, um so die Datenintegrität der Bestellung zu überprüfen, die in den verborgenen Feldern an uns gesendet worden ist.
Beispiel einer grundlegenden-SHA-1-IN-Berechnung Parameter (in alphabetischer Folge):
AMOUNT: 15.00 -> 1500
CURRENCY: EUR
LANGUAGE: en_US
ORDERID: 1234
PSPID: MyPSPID
SHA-IN passphrase (in technischer Information):
Mysecretsig1875!?
Alle Parameter, die Sie senden (und die in der Liste der in die SHA-IN-Berechnung einfließenden Parameter), werden in die Zeichenfolge für das Hashing einbezogen.
Alle Parameternamen sollten in GROSSSCHREIBUNG stehen (um Verwirrung durch Groß-/Kleinschreibung vorzubeugen).
Alle Parameter müssen in alphabetischer Reihenfolge eingegeben werden.
Parameter, die nicht mit einem Wert belegt sind, sollten auch NICHT in die Zeichenfolge für das Hashing einbezogen werden.
Bitte beachten Sie, dass einige Sortieralgorithmen Umlaute als Erstes im Alphabet darstellen, und andere als Letztes. Im Zweifel halten Sie sich bitte an die Reihenfolge der SHA Liste.
Wenn Sie Ihr Testkonto mit Hilfe des Links im Back-Office in ein Produktivkonto überführen, wird automatisch eine zufällig
erzeugte SHA-IN-Signatur in Ihrem Produktivkonto konfiguriert.
Für zusätzliche Sicherheit bitten wir Sie, in Test- und regulärem Betrieb unterschiedliche SHA-Passwörter zu verwenden. Bitte beachten Sie, dass bei Gleichheit der Passwörter unser System Ihr TEST-Passwort ändert (worüber Sie natürlich informiert werden).
Gesamte Zeichenkette für die Hash-Codierung:
AMOUNT=1500Mysecretsig1875!?CURRENCY=EURMysecretsig1875!?LANGUAGE=en_USMysecretsig1875!?
ORDERID=1234Mysecretsig1875!?PSPID=MyPSPIDMysecretsig1875!?
Resultierender Digest (SHA-1):
F4CC376CD7A834D997B91598FA747825A238BE0A
SHASIGN - Einmalige Zeichenkette zur Prüfung der Auftragsdaten. Die Zeichenkette, die unter Verwendung des SHA-1-Algorithmus verschlüsselt wird, ist immer 40-stellig.
................ WebsiteX5.................
<html>
<form method="post" action="https://e-payment.postfinance.ch/ncol/test/orderstandard_utf8.asp" id=form1 name=form1>
<!-- allgemeinen Parameter: siehe Formularfelder -->
<input type="hidden" name="PSPID" value="swisstentTEST">
<input type="hidden" name="ORDERID" value="[ORDER_NO]">
<input type="hidden" name="AMOUNT" value="[PRICE, 100, ####]">
<input type="hidden" name="CURRENCY" value="CHF">
<input type="hidden" name="LANGUAGE" value="de_CH">
<input type="hidden" name="EMAIL" value="[EMAIL]">
<input type="hidden" name="OWNERZIP" value="[ZIPPOSTALCODE]">
<input type="hidden" name="OWNERTOWN" value="[CITY]">
<!-- Prüfung vor dem Bezahlvorgang: siehe Sicherheit: Prüfung vor dem Bezahlvorgang -->
<input type="hidden" name="SHASIGN" value="AMOUNT=[PRICE, 100, ####]Ro63eco@!CURRENCY=CHFRo63eco@!LANGUAGE=de_CHRo63eco@!ORDERID=[ORDER_NO]Ro63eco@!PSPID=swisstentTESTRo63eco@!">
<!-- Layout-Informationen: siehe Gestaltung und Aussehen der Zahlungsseite -->
<input type="hidden" name="TITLE" value="SWISSTENT e-Shop">
<input type="hidden" name="BGCOLOR" value="666666">
<input type="hidden" name="TXTCOLOR" value="ffffff">
<input type="hidden" name="TBLBGCOLOR" value="003300">
<input type="hidden" name="TBLTXTCOLOR" value="ffffff">
<input type="hidden" name="BUTTONBGCOLOR" value="aaffaa">
<input type="hidden" name="BUTTONTXTCOLOR" value="00ff00">
<input type="hidden" name="LOGO" value="http://www.swisstent.ch/images/SWISSTENT-LOGO-NEU-2A.png">
<input type="hidden" name="FONTTYPE" value="Verdana">
<!-- post payment Umleitung: siehe Rückmeldung an den Kunden -->
<input type="submit" value="BEZAHLEN" id=submit name=submit>
</form>
</html>
PHP Integrierung möglich - Leider PostFinance gibt keine infos welche HASH Generator (Bsp.: MD5, SALT, HMAC, LMHASH...) Funkioniert...
Guten Tag,
leider bieten wir keine technische Unterstützung zur Einfügung von benutzerdefinierten Codes.
Da der gewünschte Code nicht im Programm integriert ist, schlage ich Ihnen vor die Information entweder mit Hilfe von Suchmaschinen (u.a. Google) zu finden oder warten um zu sehen ob Mitglieder der WebSite X5 Community eventuell Informationen dazu geben können.
Vielen dank für Ihr Verständnis!
Die Lösung für http-protokoll ist uns bekannt, allerdings zu komplex um diese hier zu besprechen.
Leider hat ihr bisheriges Vorgehen bei Ihrer Anfrage uns blockiert (Ausser Spesen nichts gewesen).
JJ.
Zuletzt erfolgreich angewandt Sept. 2014, danach auf https-Protokoll umgestellt. Anpassung für https im Frühling 2017 geplant (eventuell + Twint).
Author
Claudio, eine Frage: - Wo und in welchem Htm(l) - Files integriert für VISA/MASTERKARD Form Zeile für die Benutzerdefinierte Code?
Guten Tag,
Die Zahlungsarten HTML codes werden im Programm unter Schritt 1 - Einstellungen > Erweitert > E-Commerce > Bereich Bestellverwaltung > Zahlungsarten Fenster eingefügt die dann vom Programm in den generierten Dateien eingebunden werden die dann in cart/x5cart.js gespeichert werden.
Vielen Dank!