|
|
|
@ -1,13 +1,50 @@
|
|
|
|
|
Idee fuer preauth:
|
|
|
|
|
Idee fuer pre-authorization:
|
|
|
|
|
|
|
|
|
|
Es gibt bei der Prae-Auth. zwei Schritte.
|
|
|
|
|
Der 2. Schritt kann von einem andreren PSA durchgefuehrt werden.
|
|
|
|
|
Es gibt bei der Pre-Auth. zwei Schritte.
|
|
|
|
|
|
|
|
|
|
Woher weiss PSA1 dass die Pre-Auth. von einem anderen PSA 2 geschlossen wurde?
|
|
|
|
|
1. Schritt: hier wird ueberprueft, ob die Karte den Preis bezahlen kann.
|
|
|
|
|
2. Schritt: (notification) hier wird die Karte dann mit dem Endpreis belastet.
|
|
|
|
|
Kann von einem anderen PSA durchgefuehrt werden.
|
|
|
|
|
|
|
|
|
|
Man legt zwei Dateinen an, und checkt sie ins Rep. ein.
|
|
|
|
|
PSA1 macht Schritt 1, PSA2 Schritt 2.
|
|
|
|
|
|
|
|
|
|
Nur PSA 1 kann die loeschen.
|
|
|
|
|
Woher weiss jetzt PSA1, dass PSA2 Schritt 2 gemacht hat?
|
|
|
|
|
|
|
|
|
|
Jeder Kunde hat ein Repository (schon wegen dem PSA-Update).
|
|
|
|
|
Hier koennte man ein weiteres Verzeichnis unterbringen namens 'preauth'.
|
|
|
|
|
|
|
|
|
|
In diesem Verzeichnis werden pro Vorgang zwei Dateien angelegt.
|
|
|
|
|
|
|
|
|
|
Schritt 1:
|
|
|
|
|
|
|
|
|
|
Datei "open_preauth_<psa_serien_nummer>_<psa_zaehler>" wird angelegt.
|
|
|
|
|
Hier kann man dann alle moeglichen Daten eintragen.
|
|
|
|
|
|
|
|
|
|
Die Datei wird im Repository eingecheckt.
|
|
|
|
|
|
|
|
|
|
Schritt 2:
|
|
|
|
|
PSA2 macht zunaechst ein 'git pull'.
|
|
|
|
|
Damit sieht er, dass (mindestens) eine Pre-Auth. offen ist.
|
|
|
|
|
Sie ist nicht von ihm, da seine Seriennummer eine andere ist.
|
|
|
|
|
(Eventuell koennte man es so machen, dass in der Datei eine Kennung fuer
|
|
|
|
|
die Kreditkarte enthalten ist, so dass der Kunde nichts eingeben muss.)
|
|
|
|
|
|
|
|
|
|
Die Transaktion wird abgeschlossen, und PSA2 erzeugt die
|
|
|
|
|
Datei "close_preauth_<psa_serien_nummer>_<psa_zaehler>" und checkt sie ein.
|
|
|
|
|
|
|
|
|
|
Beim neachsten Bezahlvorgang oder Tagesschnitt macht PSA1 ein 'git pull'
|
|
|
|
|
und sieht dass die Pre-Auth abgeschlossen wurde.
|
|
|
|
|
|
|
|
|
|
PSA1 kann nun die beiden Dateien aus dem Repository entfernen.
|
|
|
|
|
|
|
|
|
|
Der Punkt ist wichtig: *nur* PSA1 kann das, also immer der PSA, der die
|
|
|
|
|
Sache angefangen hat, kann Daten loeschen.
|
|
|
|
|
|
|
|
|
|
Frage: Kann man 2 Bezahlvorgaenge mit derselben Kreditkarten haben?
|
|
|
|
|
Im Prinzip offenbar ja, aber falls man das macht, dann kann der erste Vorgang
|
|
|
|
|
nicht mehr rueckgaengig gemacht werden. Nur fuer den jeweils letzten Vorgang
|
|
|
|
|
ist das moeglich.
|
|
|
|
|
Hier muesste man den Kunden dann fragen, was er tun will: erst den ersten
|
|
|
|
|
Vorgang bezahlen (Schritt 2), oder was Neues auf PSA2 anfangen.
|
|
|
|
|
|
|
|
|
|
Seriennummer ist fuer jeden PSA eindeutig.
|
|
|
|
|
|
|
|
|
|