This commit is contained in:
Gerhard Hoffmann 2022-06-04 20:32:27 +02:00
parent 5f298dcde8
commit 030c145cf0

View File

@ -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.