Beteiligte Komponenten bei SET Transaktionen (Teil 2)

Werbung
Beteiligte Komponenten bei SET Transaktionen (Teil 2)
Im letzten Artikel, Beteiligte Komponenten bei SET Transaktionen (Teil 1), haben wir
das Gateway und das Wallet kennengelernt. Jetzt kommen wir zum "Zentrum" der
gesamten SET-Trilogie, dem Point Of Sale, kurz POS genannt.
Die Händlersoftware (Payware)
Ich werde immer wieder gefragt ob es möglich sei, diesen Teil selber zu
programmieren z.B. für eine Linux-Plattform oder sich so die Kosten für die
Software zu ersparen. Natürlich ist nichts unmöglich. Nach Hinterlegung einer
Anmeldegebühr von US$ 50.000,- steht es jedem frei, eine entsprechende
Software zu entwickeln und deren Zertifizierung bei SETCO zu erreichen.
Die notwendigen Spezifikationen gibt es bei:
http://www.setco.org/download.html
Der rein technische Teil umfasst:
The SET Standard Book 1 Business Description
The SET Standard Book 2 Programmer's Guide
The SET Standard Book 3 Formal Protocol Definitions
SET Glossary
External Interface Guide
Aber auch wenn man die Software nicht selbst entwickeln will, ist die Lektüre der
oben angeführten Dokumente für Integratoren von SET empfehlenswert.
Auf jeden Fall benötigt der Händler eine Software: die sogenannte Payware oder
POS (Point Of Sale)-Software. Die wichtigsten Lieferanten in Europa dafür sind:
Globeset, Trintech, IBM.
Eine Matrix über die jeweils angebotenen Produkte, auch anderer Hersteller gibt
es ebenfalls bei SETCO: http://www.setco.org/cgi- bin/vsm.cgi
Zusätzlich zu der verwendeten Software benötigt der Händler auch ein Zertifikat
des Acquirers. Dieses erhält er im Zusammenhang mit seinem Händlervertrag.
Im Normalfall gibt es einen Zusatzvertrag zur Abwicklung von Mail/Telefon-Order
und SET-Transaktionen. (nur bei Verwendung von zertifizierter Software)
POS-Systeme sind virtuelle Point-of-sale-Anwendungen, die das Händlersystem
sowohl mit dem Kunden-Wallet (elektronische Brieftasche) als auch mit dem
Zahlungssystem der Bank (Payment Gateway) verbinden. Sie arbeiten mit allen
gängigen SET-konformen Applikationen anderer Hersteller sowie mit populären
Shopsystemen zusammen, um die Autorisierung und den Zahlungsverkehr
sicher abzuwickeln. Neben den neuen SET-Transaktionen (3KP), werden
außerdem weitere Features, wie z.B. certless (certificate-less) und walletless
angeboten, sodaß der Anwender kein Zertifikat und / oder Wallet besitzen muß.
Die folgende Erklärung des POS-Systems basiert auf dem Netlife/Globeset POS
1.4, ist jedoch aufgrund der Spezifikationen von SETCO für alle anderen
Systeme gleichwertig.
Das Netlife/Globeset POS ist erhältlich für Windows NT und Sun/Solaris (Sparc).
Die API’s und Adapter gibt es für C (Windows-Dll’s) und Perl-scripts.
Als Datenbanken kommen zum Einsatz: MS -SQL, Oracle. Auch wenn MS Access über ODBC angesprochen wird - MS-Access ist keine aktive Datenbank
(da sie ohne die nötige Jet-Engine nicht funktioniert) und ist daher für das POS
nicht verwendbar.
MySql kann über eine ODBC-Schnittstelle verwendet werden, es gibt jedoch
keinerlei offiziellen Support. Von der Verwendung anderer Datenbanksysteme
wie Progress, Sybase oder Informix rate ich wegen des nicht vorhersehbaren
Integrationsaufwandes ab.
Bestandteile des POS
Basis des Netlife POS ist die SET-Protokollkomponente. An diese gegliedert
sind Netzwerkschnittstellen, Datenbanken und zusätzliche funktionale
Komponenten. Die folgende Abbildung zeigt eine Übersicht der Interaktion dieser
Bestandteile.
Shopping-Schnittstelle (POS Adapter)
Die Shopping-Schnittstelle stellt einen Mechanismus für Online-ShoppingSysteme zur Einleitung von Kauftransaktionen bereit. Mittels dieser Schnittstelle
sendet das Shopping-System Bestellinformationen an das POS, das
anschließend das Wallet im Browser des Kunden startet. Netlife liefert ein POS
API, das die Anbindung einer Online-Shopping-Anwendung an das Netlife POS
ermöglicht. Es werden auch fertige Adapter für OpenShop und InterShop
angeboten.
SET-Schnittstelle
Die SET-Schnittstelle ermöglicht einen Zugriff auf andere SET-konforme
Applikationen. Sie besteht aus einem TCP/IP-Server-Port,
der SET-Nachrichten vom Kreditkarteninhaber (Wallet) empfängt,
Händlerinformationen hinzufügt und sämtliche Nachrichten über das SETProtokoll an die Schnittstelle zum Acquirer (Payment Gateway) sendet.
Administrationsschnittstelle
Die Administrationsschnittstelle ist eine Schnittstelle zum Netlife
POS, auf die mit einem Standard-Browser zugegriffen werden kann.
Diese Verbindung wird über eine SSL-Verschlüsselung geschützt.
Folgende administrative Funktionen können durchgeführt werden:
• Start, Stop, Wiederanlauf und Überwachung des Status des POS-Servers
• Überprüfung der zur Verfügung stehenden Zertifikate
• Konfiguration der Server-Logdateien, URL-Daten, Ports und Datenbanken
• Konfiguration und Überwachung der aktuellen Händler
• Manuelle Stapel- und Transaktionsverarbeitung zur Durchführung der
Zahlungsabwicklung
POS-Datenbank
Nach der Installation auf der Web-Site des Händlers benutzt das POS dessen
Datenbank-Server, um auf mehrere Datenbanken während des Normalbetriebs
zugreifen zu können. Diese sind:
•
•
•
•
•
Transaction database
Authorization database
Batch database
Certificate database
Key database
Diese Datenbanken werden bei der Installation erzeugt. Händler können sie mit
den Tools Dritter abfragen, um zusätzliche Berichte zu jenen des POS zu
generieren. Es macht beispielsweise durchaus Sinn für eine Übernahme in die
Finanzbuchhaltung mittels SQL Buchungssätze aller tatsächlich durchgeführten
Transaktionen der einzelnen Kreditkartenorganisationen zu erstellen, oder auch
nur eine Liste zur Saldenabstimmung zu erzeugen. Auch eine Auswertung der
Transaktionen abhängig von der eigenen Kunden-Datenbank kann für
Fakturierung und Warenwirtschaft notwendig sein.
Datenbankstruktur
Die Schlüsseltabelle (Zertifikatsregistrierung) dient zum Speichern der privaten
Schlüssel des Händlers und zur Information über die Zertifikatsregistrierung.
Private Schlüssel sind durch ein vom Händler bestimmtes Paßwort geschützt.
Zertifikatstabellen werden zum Speichern aller Zertifikate verwendet.
Transaktionstabellen dienen zum Speichern des Transaktionsstatus und werden
im Zusammenhang mit der Autorisierung sowie mit Stapeltabellen benutzt.
Autorisierungstabellen verwendet man zum Speichern aller Informationen zur
Zahlungsautorisierung und -erfassung.
In Stapeltabellen werden Stapelinformationen gespeichert (Batches).
POS-Nachrichtenverlauf
Der Ablauf der Zahlungsverarbeitung im SET-Protokoll beruht auf
Nachrichtenpaaren zwischen sowohl dem Karteninhaber und dem Händler als
auch dem Händler und dem Payment Gateway. Nachfolgend wird anhand eines
Diagrammes der Nachrichtenverlauf erläutert.
1. Der Kunde füllt den Warenkorb.
2. Er bestätigt die Bestellinformationen und wählt eine Bezahlungsmethode
aus. Das Shopping-System erstellt eine Kickoff-Nachricht.
3. Das Shopping-System sendet die Kickoff-Nachricht an das POS.
4. Das POS erstellt eine Wakeup-Nachricht und sendet sie zurück
an das Shopping-System.
5. Die Wakeup-Nachricht gelangt über den Webserver zum
Browser.
6. Der Browser wurde dem SET-Standard gemäß so konfiguriert,
daß er beim Erhalt der Wakeup-Nachricht das Wallet aufruft.
7. Das Wallet nimmt mittels der URL der Wakeup-Nachricht
Kontakt zum POS auf.
8. Das POS antwortet auf die Anforderung der Kaufinitialisierung.
9. Das Wallet sendet eine Kaufanforderung an den Händler.
10. Das POS schickt eine Autorisierungsanforderung an das
Payment Gateway.
11. Das Gateway sendet eine Autorisierungsantwort zurück zum
POS.
12. Das POS sendet die Autorisierungsantwort an das Shopping-System.
13. Das POS sendet eine Erfolgs- oder Fehlermeldung an das
Wallet.
Weil das Thema Sicherheit gerade bei Kreditkarten eine gewichtige Rolle spielt,
hier noch ein paar Worte zur Verschlüsselung. Die SET Spezifikationen basieren
auf folgenden Algorithmen und Mechanismen:
SICHERHEITSMECHANIS
ALGORITHMUS
STANDARD
SCHLÜSSELLÄNGE
Signatur
Duale Signatur
RSA
RSA
1024 Bit
1024 Bit
Datenverschlüsselung
Hashing
Asymmetrische
Verschlüsselung
DES
SHA
RSA
PKCS 7
Neuentwicklung
für SET
PKCS 7
SHA-1
PKCS 1
Zertifikate
RSA
X.509 v 3
MUS
56 Bit
768
(Merchant)
und
1024
(Payment
Gateway)
1024
Soviel zum allgemeinen Teil.
Wenn sich also ein Händler entschließt, seinen Kunden Kreditkartenzahlungen
anzubieten, sollte er folgende Punkte beachten:
(*) Der Betrieb eines POS ist mit einem gewissen finanziellen Mindestaufwand
verbunden.
Soferne der Shop bei einem ISP gehostet wird, sollte dieser die Installation von
Fremdsoftware gestatten, die nötigen Datenbanksysteme unterstützen, Zugriff
auf Log-Dateien gewähren, allenfalls Software-Updates ermöglichen.
Dies ist natürlich mit laufenden Kosten verbunden (vor allem die Datenbanken).
Bei Betrieb auf einem eigenen Server fallen diese Punkte weitgehend weg, es
sollte natürlich ein Administrator mit dem POS-System vertraut sein.
Auch wenn die angebotenen Adapter nur mehr „mit Parametern versorgt werden
müssen“, bzw. das API für Programmierer keine Hindernissse darstellt, darf man
den Integrationsaufwand nicht vernachlässigen.
(*) Hat man jetzt sein POS auf einem Rechner installiert, so ist es bis zum
reibungslosen Funktionieren desselben nur mehr ein ganz kleines Stück Arbeit.
Eine entsprechende Datenbank ist anzulegen, um die Tabellen kümmert sich
dann das POS.
(*) Eine ODBC-Schnittstelle (bei SQL) ist zu definieren oder ein Oracle Client ist
einzurichten.
(*) Das POS ist mit den Datenbankinformationen zu versorgen.
(*) Der Händler mit seinen Basisdaten und den notwendigen Acquirer-Zertifikaten
(von Visa und/oder Mastercard) ist anzulegen.
Nach
Erhalt der Händler- und Acquirer-Zertifikate über das Gateway ist das POS
betriebsbereit und mit Hilfe der zur Verfügung gestellten Demo-Applikation, der
ASP-Demo, den Perl-Scripts oder dem C-Interface können SET oder 2KP
Transaktionen durchgeführt werden.
Jetzt folgt noch die Integration in die Shop-Umgebung des Händlers mit dem
entsprechenden Adapter oder einem API und ein weiterer SET-Shop ist online.
Bei Verwendung eines generischen Perl-Adapters ist es auch möglich Shops auf
Linux-Servern mit SET-Funktionalität auszustatten.
Adapter/API:
Folgende Adapter gibt es für Windows NT:
• ASP-Adapter
• Intershop-Cartridge
• OpenShop-Cartridge
• C- oder Perl- API
Der Unterschied zwischen Adapter und Cartridge besteht darin, daß der Adapter
universell einsetzbar ist und daher für jede Shoplösung unter ASP geeignet ist
(z.B.: Site/Commerce-Server von Microsoft und eigene Lösungen), wogegen die
Cartridge fix mit dem dazugehörigen Produkt verbunden ist und auch die
Lizenzierung abhängig von den jeweiligen Produkten erfolgt.
Folgende Adapter gibt es für Sun/Solaris:
• Intershop-Cartridge
• OpenShop-Cartridge
• C- oder Perl- API
Ein generischer Adapter besteht aus einem StoreFront-Adapter (SA) und einem
POS-Adapter (PA), die auf verschiedenen Servern mit unterschiedlichen
Plattformen laufen können. Das bedeutet, daß der SA in Perl unter Linux laufen
kann, und mit einem PA auf WinNT kommuniziert.
Transaktionen
Eine Kreditkartentransaktion besteht immer aus 2 Schritten.
1. die reine Autorisierung
2. die nachfolgende Buchung, wobei der Buchungsbetrag vom
Autorisierungsbetrag abweichend sein kann.
Der klassische Fall für einen abweichenden Buchungsbetrag ist eine
Hoteltransaktion: Der Kunde checkt im Hotel für 3 Nächte ein, es werden sofort
3.000,- autorisiert. Beim Auschecken nach 2 Nächten werden jedoch nur 2.000,gebucht. Beim Auschecken nach 4 Nächten werden dann 4.000,- gebucht. Die
Transaktion ist erst nach der erfolgten Buchung abgeschlossen, und der Händler
erhält auch den tatsächlich gebuchten Betrag.
Im POS erfolgt die Autorisierung immer Online (im Zuge der Einkaufstransaktion)
Die Buchung (Capture) kann zu einem späteren Zeitpunkt (nach Warenversand)
durchgeführt werden.
Es besteht auch die Möglichkeit, Autorisierung und Buchung gleichzeitig
durchzuführen. Dies ist zweckmäßig bei "virtuellen Waren" (z.B.: SoftwareDownload oder Informationszugang) wo der Kunde seine Ware sofort erhält und
auch keine Teillieferungen möglich sind.
Abhängig von der Art der gebotenen Waren oder Dienstleistungen können 2
verschiedene Transaktionstypen verwendet werden. Aufgrund des
Transaktionstyps wird im POS die Unterscheidung getroffen ob eine spätere
Buchung möglich ist oder ob die Buchung (Capture) sofort durchgeführt wird.
Für physikalischen Warenversand empfiehlt sich:
Autorisierung durchführen und in einer späteren Transaktion (über Software
oder POS-Administration) das dazugehörige Capture durchzuführen.
Für virtuelle Waren oder Dienstleistungen (Download...) empfiehlt sich:
Autorisierung und Capture in einer Transaktion durchzuführen.
Capture: Erst durch das Capture wird aus einer Autorisierung eine tatsächliche
Transaktion, die in einem „Batch“ über das Gateway an das Kreditkarteninstitut
gesandt wird.
Batch: Zu einem definierten Zeitpunkt (oder manuell) sollte periodisch ein
sogenannter Batch an die Acquirer gesandt werden. Dieser Batch entspricht im
realen Leben dem Kassenabschluß am Terminal und bewirkt die Auszahlung
(Verrechnung) der Zahlbeträge an den Händler durch das Kreditkarteninstitut.
J
ede Transaktion ist im POS mit allen notwendigen (bzw. vom Shop zur
Verfügung gestellten) Informationen abgespeichert.
Unabhängig von der TransaktionsID des Shops wird im POS eine Local ID
Merchant of the transaction (LIDM genannt) gebildet. Diese LIDM begleitet die
SET-Transaktion durch alle Instanzen, d.h. sie ist im Wallet (soferne verwendet)
am Gateway und im Host des Kreditkarteninstitutes. Im Falle eines Einspruches
oder Reklamation kann über diese LIDM die Transaktion rekonstruiert werden.
Die LIDM kann neben der Shop Transaction ID natürlich auch als Referenz zu
Händler-eigenen Kundendatenbanken herangezogen werden.
Stornos (reversal) , Gutschriften (debit) oder Betragsänderungen (adjustment)
bei Teillieferungen oder Überlieferungen sind über die POS-Administration
möglich.
Je nach Transaktions-Anfall bietet sich natürlich die Möglichkeit eine BatchApplikation zur Verfügung zu stellen, die unabhängig von der POSAdministration deren Funktionalitäten zur Verfügung stellt. Der Händler erhält
von den Kreditkarteninstituten verschiedene Händlernummern zugeteilt unter
denen er seine Transaktionen mittels Batch einreicht. Er erhält je nach Vertrag
und Periodizität der Batches entsprechend seine Kontoauszüge von den
Kreditkarteninstituten. Diese verschiedenen Händlernummern erleichtern die
Abstimmung von 2KP-, 3KP- Transaktionen und Transaktionen in verschiedenen
Währungen mit dem jeweiligen Kontoauszug.
Payment-Service
Wenn der Aufwand für eine eigene POS-Installation zu groß ist oder der ISP das
nicht zulässt, gibt es auch noch die Möglichkeit der Miete eines POS-Services.
Was ist das Payment-Service und was bringt mir dieses Service?
Ganz einfach: der Händler möchte seinen Online-Kunden natürlich auch die
sichere Zahlungsmöglichkeit SETTM (Secure Electronic Transaction) anbieten,
findet aber, daß der Kauf einer eigenen Software (POS) zu aufwendig ist.
Das Payment-Service ist funktional die gleiche Software wie das MerchantPOS,
nur daß mehrere Shops ein und dasselbe Service nutzen (mieten) und trotzdem
nicht auf die Daten des anderen Shopbetreibers zugreifen können. Jeder Shop
hat einen eigenen Zugang zum POS, und da man sich das POS nun mit
mehreren Shopbesitzern teilt bleiben die Kosten auch geringer.
Vorteile
• Keine zusätzlichen monatlichen Providerkosten
• Keine eigene Domäne nötig
• Für jeden Shopbetreiber leistbar
• Keine Wartungskosten
• Geringere Aufwendung für Integration (tatsächlich liegt der
Integrationsaufwand für das Miet-POS händlerseitig im Stunden-Bereich.)
Von SET4U gibt es 3 Varianten des Payment-Services:
SET-light
Dieses Service beinhaltet die Miete des POS und des Store Front-Adapters, die
"Bezahlseite" wird von SET4U über eine sichere Verbindung zur Verfügung
gestellt. Auf der Bezahlseite wird ein Logo des Händlers eingebunden, die
Bezahlseite läuft allerdings auf Servern von SET4U.
SET-light+
Dieses Service entspricht SET-light mit einigen "kosmetischen" Zusatzfeatures.
Die "Bezahlseite" wird von SET4U nach Angaben des Händlers gestaltet oder
wird vom Händler zur Verfügung gestellt. Die Seite liegt wie bei SET-light auf den
Servern von SET4U. Grundsätzlich ist also mit SET-light+ eine
Anpassung an die Corporate Identity (CI) möglich.
Technische Voraussetzung für die Durchführung ist ein Link (SSL) von z.B. dem
Button "Zur Kassa" auf die Bezahlseite. Um die Transaktionen durchzuführen
benötigt die Bezahlsoftware (POS) einige Informationen wie den Betrag,
Auftragsbeschreibung, Währung, die der Shop über eine sichere Verbindung an
das POS übergibt.
Der Ablauf einer Transaktion gestaltet sich wie folgt
1.
2.
3.
4.
5.
6.
Shop --> Store Adapter (gemietet)
Store Adapter --> POS
POS --> Kreditkartenorganisation
Kreditkartenorganisation --> POS
POS --> Store Adapter
Store Adapter --> Shop
Der Kunde erhält dann eine Bezahlseite:
oder eine nach den Vorstellungen des Händlers zusammengestellte.
SET-complete
Dieses Service beinhaltet die Miete des POS, der Store Adapter wird vom
Händler gekauft und kann daher im Shop des Händlers direkt eingebunden
werden. Eine vollständige Anpassung an eine Corporate Identity ist dadurch
möglich, allerdings läuft nun alles in der Web Site des Händlers. Sonst beinhaltet
dieses Service die gleichen Optionen wie "SET-light".
Technische Voraussetzungen:
Es werden von der Bezahlseite des Händlers alle notwendigen Informationen
über eine sichere Verbindung (SSL) an das POS übergeben.
Der Ablauf einer Transaktion:
1. Shop (Store Adapter) --> POS
2. POS --> Kreditkartenorganisation
3. Kreditkartenorganisation --> POS
4. POS --> Store Adapter (Shop)
Weitere Informationen zu den hier vorgestellten 3 Services erhalten Sie bei:
SET4U Payment-Service
Schlußbemerkung
Unabhängig von anderen Zahlungsweisen wie e-cash, cybercash, net900, und
was immer die Zukunft bringen wird, ist die Zahlung mit Kreditkarten die einzig
wirklich internationale Möglichkeit - und um allen Sicherheitsapekten gerecht zu
werden, bietet der Einsatz von SET dem Händler derzeit den höchsten
Standard.
Auch wenn die Nutzung von Wallets zur Zeit nicht allzu hoch ist, ist alleine die
Online-Autorisierung für den Händler von entscheidendem Vorteil gegenüber
herkömmlichen MailOrder/TelefonOrder Transaktionen und die angekündigte
Verwendbarkeit von MAESTRO-Karten im Rahmen von SET wird für den
Händler auch ein Anreiz sein, diese Zahlungsmethode anzubieten.
Shops aus aller Welt, die SET verwenden, finden sich auf goset.org
http://goset.org
Links zu anderen Sites
•
•
•
•
•
•
•
http://set4u.at
http://goset.org
http://www.netlife.de
http://www.setco.org
http://www.ecin.de
http://www.visa.at
http://www.europay.at
Verwandte Artikel
•
•
SET allgemein
SET Teil 1
Herunterladen