PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Brauche Rat für einen Shop


c4
30.04.2003, 17:59:38
Moin,

Ich versuche mich gerade an einem etwas größerem Shop. Naja, bin erst beim Datenbankentwurf und dem anderen theoretischen Zeugs.

Das Problem(chen): Der Kunde kann wählen, ob er seine Bankdaten rausgibt oder seine Kreditkartennummer. Die Probleme:
Wie speichert man diese Daten für den Händler am brauchbarsten in der DB? Wie kann ich eventuelle Automatisierungen begünstigen? Ich könnte ja in ein Textfeld (in der DB) schreiben, dass der Kunde diese und jene BLZ, diese Ktnr, usw. hat. Damit könnte der Händler dann irgendwas machen? Nur was und wie? Bin nix Händler nicht und hab ebensoviel Ahnung davon.
Wie überprüfe ich die Richtigkeit (möglichst auch Existenz) einer Kreditkartennummer? Wie überprüfe ich das 'Haltbarkeitsdatum' selbiger?
Was für Rechnungsarten könntet Ihr noch empfehlen? Wie bei eBay (bestellen, bezahlen und dann erst liefern) halte ich nicht für praktikabel in einem Shop.
Dümmste Frage zum Schluss: Es gibt doch auch die Möglichkeit, dass der Händler das bestellte Etwas verschickt und die Post es nur gegen Bares überreicht. Wie nennt man das? 'Auf Rechnung'??

Wenn Ihr irgendeine Seite kennt, auf der so ein Geldzeug (Bank, Kreditkarten, ...) erklärt wird, dann immer her mit das.

Danke.

diver-network
02.05.2003, 13:59:10
Hallo C4,

ich kenne mich zwar mit Shop- Systemen und der Datenhaltung bei diesen nicht aus, aber folgende Regeln solltest Du unbedingt beachten:

- Überprüfe zuerst "offline" die Kreditkartennummer. Hierzu gibt es frei erhältliche Skripte, die u.a. auch in verschiedenen PHP- Büchern abgedruckt sind. Wenn Du willst sende ich Dir mal eins, daß im PHP- Buch von Jörg Krause abgedruckt ist.
Beachte bei Verwendung des bzw. dieser Skripte aber, daß diese nicht überprüfen können, ob die Nummer wirklich existiert, frei (nicht gesperrt) bzw. noch gültig ist.
Mit "offline" meine ich, daß Du die Nummer prüfen solltest, bevor Du die Nummer zur Kostenabrechnung an offiziell zertifizierte Stellen weiter leitest, die dann auch überprüfen, ob die Nummer wirklich gültig ist. Diese Überprüfungen kosten Dich in jedem Fall Geld, das bei offensichtlich falschen Nummern unnötig bezahlt wird.

- Es gibt verschiedene von den Kreditkartengesellschaften zertifizierte Stellen, die für Online- Shops Zahlungen vornehmen. Dort wird auch die Kreditkartennummer überprüft.

- Achte beim Speichern von sensiblen Daten wie Kreditkartennummer, Blz und Kontonummer darauf, daß diese wenn möglich verschlüsselt in der Datenbank abgelegt werden und vor allem, daß diese verschlüsselt zum Server gesendet werden (Stichwort SSL)

- Achte beim Datenaustausch mit Dritten (Kreditkartenunternehmen bzw. deren Beauftragten) darauf, daß sämtliche Kommunikation verschlüsselt stattfindet.

Es gibt verschiedene Rechnungsarten, u.a.:
- Per Vorkasse (Kunde gibt Geld, Händler liefert danach)
- Auf Rechnung (Händler liefert, Kunde zahlt später)
- Per Nachnahme (Händler liefert, Kunde zahlt beim Postboten)

Als allgemeinen Tip kann ich Dir noch geben, daß Du eventuell mal eine Mail an Visa, Mastercard und AmEx sendest, in der Du diese fragst, welche Bedingungen erfüllt sein müssen, damit Du Zahlungen per Kreditkarte annehmen darfst und, für Dich interessant, was diese kosten.

HTH,

Andy

Ergänzung:

- Suche mal in der Google Gruppe alt.comp.lang.php nach "credit card". Dort gibt es ein paar gute Threads zu diesem Thema, leider meistens auf die USA bezogen (z.B.: der Thread Re: Credit Card verification vom 29.8.2001 von Matthew Smith)

- Gute Diskussionen zum Thema Kreditkartendaten und Datenbanken: Google Gruppe mailing.database.mysql, suche nach "credit card".

- PHP- Funktionen bzgl. Verisign Payment Funktionen: http://www.php.net/manual/en/ref.pfpro.php

c4
02.05.2003, 15:32:25
Wow, das ist ja schonmal eine ganze Menge gut-zu-wissendes dabei.

An solche, die einen Shop nutzen oder einen programmiet haben: Wie habt Ihr das / wie wurde das gelöst? Einfach dem Betreiber des Shops eine Mail geschickt, mit allen Infos? Also Name, Kreditkartennummer, usw und der soll sich dann selber kümmern?

diver-network
02.05.2003, 16:52:27
Hallo C4,

zu Deiner Frage, ob man dem Betreiber eines Shops einfach eine Mail mit allen Infos gesendet hat kann ich nur sagen:

MACH DAS BLOS NICHT!!

Ein Shop- Betreiber, der Zahlungen per Kreditkarte akzeptiert, aber selber keine Online- und vor allem verschlüsselte Bezahlmöglichkeiten anbietet ist in meinen Augen nicht gerade seriös!! Des weiteren bezweifle ich, daß dies von den Kreditkartenunternehmen wie Visa, Mastercard etc. erlaubt wird.

Und Daten wie Kreditkartennummern unverschlüsselt per Email zu übertragen ist in etwa gleich bedeutend mit "offen ins Netz stellen". Man muß sich dann nicht wundern, wenn auf einmal ziemlich hohe Summen auf der Kreditkartenabrechnung drauf stehen und man nicht weiß, woher diese kommen.

In den von mir angesprochenen Threads in den Google Groups war der allgemeine Konsens: Speichere KEINE Kreditkartendaten in deiner Datenbank und wenn Du es schon nicht vermeiden kannst dann nur in separaten Tabellen, die extrem gut gesichert und wenn möglich auch noch verschlüsselt sind (z.B. MD5 Wert über zumindest einen Teil der Nummer).
Die Überprüfung sollte immer zweigleisig stattfinden: Zuerst über das angesprochene kostenlose Skript, um offensichtliche Fehler in der Nummer zu filtern und dann zusammen mit der Zahlungsausführung bei Organisationen wie Verisign (wenn die das wirklich machen). Kommt von dieser Organisation das OK hast Du als Shop Betreiber das Geld sicher und weißt auch, daß die Kartennummer gültig war. Danach brauchst Du die Nummer eigentlich nicht mehr.

Aber nochmal: Wende Dich mal an Visa, Mastercard und eventuell Verisign, die ja auf der PHP- Seite erwähnt werden.

Als weiteren Tip kann ich Dir eventuell die Web-Shops von Puretec (1 und 1) empfehlen. Die bieten Bezahlmöglichkeiten per Kreditkarte an. Allerdings habe ich sie selber noch nicht getestet, aber vielleicht findest Du da ja weitere Infos.

HTH und schönes Wochenende,

Andy