Zahlungsabwickler – Was muss ich wissen, wenn ich auf meiner Website Kreditkarten akzeptieren möchte?[geschlossen]

StackOverflow https://stackoverflow.com/questions/51094

  •  09-06-2019
  •  | 
  •  

Frage

Diese Frage spricht über verschiedene Zahlungsabwickler und deren Kosten, aber ich suche nach einer Antwort auf die Frage: Was muss ich tun, wenn ich Kreditkartenzahlungen akzeptieren möchte?

Gehe davon aus, dass ich es muss speichern Kreditkartennummern für Kunden, so dass die offensichtliche Lösung, sich auf den Kreditkartenverarbeiter zu verlassen, um die schwere Arbeit zu erledigen, nicht verfügbar ist.

PCI-Datensicherheit, das offenbar der Standard für die Speicherung von Kreditkarteninformationen ist, hat eine Reihe allgemeiner Anforderungen, aber wie setzt man sie um??

Und was ist mit den Verkäufern? Visa, die ihre eigenen Best Practices haben?

Benötige ich per Schlüsselanhänger Zugriff auf die Maschine?Wie wäre es mit dem physischen Schutz vor Hackern im Gebäude?Oder was wäre, wenn jemand die Sicherungsdateien mit den SQL-Server-Datendateien in die Hände bekommen würde?

Was ist mit Backups?Gibt es andere physische Kopien dieser Daten?

Tipp: Wenn Sie ein Händlerkonto eröffnen, sollten Sie aushandeln, dass Ihnen „Interchange-Plus“ statt Staffelpreisen berechnet wird. Bei gestaffelten Preisen werden Ihnen unterschiedliche Tarife berechnet, je nachdem, welche Art von Visum/MC verwendet wird – d. h.Sie berechnen Ihnen mehr für Karten, mit denen große Belohnungen verbunden sind.Interchange plus Abrechnung bedeutet, dass Sie dem Verarbeiter nur den Betrag zahlen, den Visa/MC ihm berechnet, zuzüglich einer Pauschalgebühr.(Amex und Discover berechnen den Händlern ihre eigenen Tarife, daher gilt dies nicht für diese Karten.Sie werden feststellen, dass die Amex-Zinssätze im Bereich von 3 % liegen und Discover möglicherweise nur 1 % beträgt.Visa/MC liegt im Bereich von 2 %). Dieser Dienst soll die Verhandlungen für Sie erledigen (Ich habe es nicht genutzt, dies ist keine Anzeige und ich bin nicht mit der Website verbunden, aber dieser Service wird dringend benötigt.)

Dieser Blogbeitrag gibt eine Kompletter Überblick über den Umgang mit Kreditkarten (speziell für Großbritannien).


Vielleicht habe ich die Frage falsch formuliert, aber ich suche nach Tipps wie diesen:

  1. Verwenden SicherID oder eToken um der physischen Box eine zusätzliche Passwortebene hinzuzufügen.
  2. Stellen Sie sicher, dass sich die Box in einem Raum mit einem physischen Schloss oder einer Schlüsselcode-Kombination befindet.
War es hilfreich?

Lösung

Ich habe diesen Prozess vor nicht allzu langer Zeit bei einem Unternehmen durchlaufen, für das ich gearbeitet habe, und ich habe vor, ihn bald noch einmal mit meinem eigenen Unternehmen zu durchlaufen.Wenn Sie über Netzwerktechnikkenntnisse verfügen, ist das wirklich nicht so schlimm.Andernfalls ist es besser, Paypal oder einen anderen Dienst zu nutzen.

Der Prozess beginnt mit der Beschaffung eines Händler-Konto eingerichtet und mit Ihrem Bankkonto verknüpft.Möglicherweise möchten Sie sich bei Ihrer Bank erkundigen, da viele große Banken Händlerdienstleistungen anbieten.Möglicherweise können Sie Angebote erhalten, da Sie bereits Kunde bei ihnen sind. Wenn nicht, können Sie sich umschauen.Wenn Sie Discover oder American Express akzeptieren möchten, sind diese getrennt, da sie die Händlerdienste für ihre Karten bereitstellen, was kein Umweg ist.Es gibt auch andere Sonderfälle.Dies ist ein Bewerbungsprozess, seien Sie vorbereitet.

Als nächstes möchten Sie ein kaufen SSL-Zertifikat die Sie zur Sicherung Ihrer Kommunikation verwenden können, wenn die Kreditkarteninformationen über öffentliche Netzwerke übertragen werden.Es gibt viele Anbieter, aber meine Faustregel ist, einen auszuwählen, der in gewisser Weise ein Markenname ist.Je bekannter sie sind, desto besser hat Ihr Kunde wahrscheinlich schon davon gehört.

Als nächstes möchten Sie eine finden Zahlungs-Gateways zur Verwendung mit Ihrer Website.Dies kann zwar optional sein, je nachdem, wie groß Sie sind, in den meisten Fällen ist dies jedoch nicht der Fall.Sie werden eines brauchen.Die Zahlungs-Gateway-Anbieter bieten eine Möglichkeit, mit der Internet-Gateway-API zu kommunizieren, mit der Sie kommunizieren.Die meisten Anbieter bieten HTTP- oder TCP/IP-Kommunikation mit ihrer API an.Sie verarbeiten die Kreditkarteninformationen in Ihrem Namen.Zwei Anbieter sind Authorize.Net Und PayFlow Pro.Der Link, den ich unten bereitstelle, enthält weitere Informationen zu anderen Anbietern.

Was jetzt?Zunächst gibt es Richtlinien dazu, was Ihre Anwendung bei der Übermittlung der Transaktionen beachten muss.Während der gesamten Einrichtung wird sich jemand Ihre Website oder Anwendung ansehen und sicherstellen, dass Sie die Richtlinien einhalten, z. B. die Verwendung von SSL, und dass Sie über Nutzungsbedingungen und eine Richtliniendokumentation darüber verfügen, wofür die vom Benutzer bereitgestellten Informationen verwendet werden für.Stehlen Sie dies nicht von einer anderen Website.Überlegen Sie sich Ihr eigenes und beauftragen Sie bei Bedarf einen Anwalt.Die meisten dieser Dinge fallen unter den PCI-Datensicherheitslink, den Michael in seiner Frage angegeben hat.

Wenn Sie vorhaben, die Kreditkartennummern zu speichern, sollten Sie darauf vorbereitet sein, intern einige Sicherheitsmaßnahmen zu ergreifen, um die Informationen zu schützen.Stellen Sie sicher, dass der Server, auf dem die Informationen gespeichert sind, nur für Mitglieder zugänglich ist, die Zugriff benötigen.Wie bei jeder guten Sicherheit erfolgt die Arbeit in mehreren Schichten.Je mehr Schichten Sie auftragen, desto besser.Wenn Sie möchten, können Sie z. B. die Sicherheit eines Schlüsselanhängers verwenden SecureID oder eToken um den Raum zu schützen, in dem sich der Server befindet.Wenn Sie sich die Schlüsselanhänger-Variante nicht leisten können, nutzen Sie die Zwei-Schlüssel-Methode.Erlauben Sie einer Person, die Zugang zum Raum hat, die Abmeldung eines Schlüssels, zusammen mit einem Schlüssel, den sie bereits bei sich trägt.Sie benötigen beide Schlüssel, um Zutritt zum Zimmer zu erhalten.Als nächstes schützen Sie die Kommunikation zum Server mit Richtlinien.Mein Grundsatz ist, dass das Einzige, was über das Netzwerk mit ihm kommuniziert, die Anwendung ist und dass die Informationen verschlüsselt sind.Der Server sollte in keiner anderen Form erreichbar sein.Für Backups verwende ich truecrypt um die Volumes zu verschlüsseln, auf denen die Backups gespeichert werden.Immer wenn die Daten entfernt oder woanders gespeichert werden, verwenden Sie wiederum Truecrypt, um das Volume zu verschlüsseln, auf dem sich die Daten befinden.Grundsätzlich müssen die Daten überall dort verschlüsselt werden, wo sie sich befinden.Stellen Sie sicher, dass alle Prozesse zum Zugriff auf die Daten Prüfprotokolle enthalten.Verwenden Sie Protokolle für den Zugriff auf den Serverraum, verwenden Sie Kameras, wenn Sie können, usw.Eine weitere Maßnahme besteht darin, die Kreditkarteninformationen in der Datenbank zu verschlüsseln.Dadurch wird sichergestellt, dass die Daten nur in Ihrer Anwendung angezeigt werden können und Sie festlegen können, wer die Informationen sieht.

ich benutze pfsense für meine Firewall.Ich betreibe es von einer Compact-Flash-Karte und habe zwei Server eingerichtet.Eine davon dient dem Failover zur Redundanz.

ich habe das gefunden Blogeintrag von Rick Strahl, der enorm dazu beigetragen hat, die Funktionsweise von E-Commerce zu verstehen und zu verstehen, was erforderlich ist, um Kreditkarten über eine Webanwendung zu akzeptieren.

Nun, es stellte sich heraus, dass dies eine lange Antwort war.Ich hoffe, diese Tipps helfen.

Andere Tipps

Stellen Sie sich folgende Frage: Warum möchten Sie überhaupt Kreditkartennummern speichern??Die Chancen stehen gut, dass Sie das nicht tun.In der Tat, wenn Sie Tun Bewahren Sie sie auf und es kann passieren, dass eines gestohlen wird, Sie könnten mit einer ernsthaften Haftung rechnen.

Ich habe eine App geschrieben, die Kreditkartennummern speichert (da die Transaktionen offline verarbeitet wurden).Hier ist eine gute Möglichkeit, dies zu tun:

  • Holen Sie sich ein SSL-Zertifikat!
  • Erstellen Sie ein Formular, um CC# vom Benutzer zu erhalten.
  • Verschlüsseln Sie einen Teil (nicht den gesamten!) des CC# und speichern Sie ihn in Ihrer Datenbank.(Ich würde die mittleren 8 Ziffern vorschlagen.) Verwenden Sie eine starke Verschlüsselungsmethode und einen geheimen Schlüssel.
  • Senden Sie den Rest der CC# an denjenigen, der Ihre Transaktionen verarbeitet (wahrscheinlich an Sie selbst), und geben Sie dabei die ID der zu verarbeitenden Person an.
  • Wenn Sie sich später anmelden, geben Sie die ID und den per Post verschickten Teil der CC# ein.Ihr System kann den anderen Teil entschlüsseln und neu kombinieren, um die vollständige Zahl zu erhalten, damit Sie die Transaktion verarbeiten können.
  • Löschen Sie abschließend den Online-Datensatz.Meine paranoide Lösung bestand darin, den Datensatz vor dem Löschen mit zufälligen Daten zu überschreiben, um die Möglichkeit einer Wiederherstellung auszuschließen.

Das hört sich nach viel Arbeit an, aber indem Sie nirgendwo einen vollständigen CC# aufzeichnen, machen Sie es einem Hacker extrem schwer, etwas Wertvolles auf Ihrem Webserver zu finden.Vertrauen Sie mir, es lohnt sich, beruhigt zu sein.

Das PCI 1.2-Dokument ist gerade erschienen.Es stellt einen Prozess zur Umsetzung der PCI-Konformität zusammen mit den Anforderungen dar.Das vollständige Dokument finden Sie hier:

https://www.pcisecuritystandards.org/security_standards/pci_dss.shtml

Um es kurz zu machen: Erstellen Sie ein separates Netzwerksegment für die Server, die für die Speicherung von CC-Informationen vorgesehen sind (normalerweise DB-Server).Isolieren Sie die Daten so weit wie möglich und stellen Sie sicher, dass nur der für den Zugriff auf die Daten erforderliche Mindestzugriff vorhanden ist.Verschlüsseln Sie es, wenn Sie es speichern.Lagern Sie niemals PANs.Löschen Sie alte Daten und wechseln Sie Ihre Verschlüsselungsschlüssel.

Beispiele für Verbote:

  • Lassen Sie nicht zu, dass dasselbe Konto, das allgemeine Informationen in der Datenbank nachschlagen kann, nach CC-Informationen sucht.
  • Bewahren Sie Ihre CC-Datenbank nicht auf demselben physischen Server wie Ihren Webserver auf.
  • Lassen Sie keinen externen (Internet-)Verkehr in Ihr CC-Datenbank-Netzwerksegment zu.

Beispiel-Dos:

  • Verwenden Sie ein separates Datenbankkonto, um CC-Informationen abzufragen.
  • Verbieten Sie allen bis auf den erforderlichen Datenverkehr zum CC-Datenbankserver über Firewall/Zugriffslisten
  • Beschränken Sie den Zugriff auf den CC-Server auf eine begrenzte Anzahl autorisierter Benutzer.

Ich möchte einen nicht-technischen Kommentar hinzufügen, über den Sie vielleicht nachdenken möchten

Mehrere meiner Kunden betreiben E-Commerce-Websites, darunter einige mit mittelgroßen Geschäften.Beide könnten zwar sicherlich ein Zahlungsgateway implementieren, aber auch nicht, aber sie nehmen die CC-Nummer, speichern sie vorübergehend verschlüsselt online und verarbeiten sie manuell.

Sie tun dies aufgrund der hohen Betrugshäufigkeit und der manuellen Verarbeitung, die es ihnen ermöglicht, zusätzliche Kontrollen durchzuführen, bevor sie eine Bestellung ausführen.Mir wurde gesagt, dass sie etwas mehr als 20 % aller ihrer Transaktionen ablehnen – die manuelle Bearbeitung nimmt sicherlich mehr Zeit in Anspruch und in einem Fall haben sie einen Mitarbeiter, der nichts anderes tut, als Transaktionen zu verarbeiten, aber die Kosten für die Zahlung seines Gehalts sind offenbar geringer als ihre Gefährdung durch die Weitergabe von CC-Nummern über ein Online-Gateway.

Beide Kunden liefern physische Waren mit Wiederverkaufswert und sind daher besonders gefährdet. Bei Artikeln wie Software, bei denen ein betrügerischer Verkauf keinen tatsächlichen Verlust zur Folge hätte, würde Ihr Kilometerstand variieren, aber es lohnt sich, über die technischen Aspekte eines Online-Gateways nachzudenken wenn die Umsetzung wirklich das ist, was Sie wollen.

BEARBEITEN:Und da ich diese Antwort erstellt habe, möchte ich eine warnende Geschichte hinzufügen und sagen, dass die Zeiten vorbei sind, in denen dies eine gute Idee war.

Warum?Weil ich von einem anderen Kontakt weiß, der einen ähnlichen Ansatz verfolgte.Die Kartendaten wurden verschlüsselt gespeichert, der Zugriff auf die Website erfolgte per SSL und die Nummern wurden unmittelbar nach der Verarbeitung gelöscht.Sicher, denkst du?

Kein einziger Rechner in ihrem Netzwerk wurde von einem Key-Logging-Trojaner infiziert.Dadurch wurden sie als Urheber mehrerer Score-Kreditkartenfälschungen identifiziert – und mussten daraufhin eine hohe Geldstrafe verhängen.

Infolgedessen habe ich jetzt niemals Ich rate jedem, selbst mit Kreditkarten umzugehen.Seitdem sind Zahlungsgateways deutlich wettbewerbsfähiger und kostengünstiger geworden und die Betrugsbekämpfungsmaßnahmen haben sich verbessert.Das Risiko lohnt sich nun nicht mehr.

Ich könnte diese Antwort löschen, aber ich denke, es ist am besten, sie als warnende Geschichte bearbeitet zu lassen.

Bedenken Sie, dass die Verwendung von SSL zum Senden einer Kartennummer von einem Browser an einen Server so ist, als würden Sie Ihre Kreditkartennummer mit Ihrem Daumen verdecken, wenn Sie Ihre Karte an einen Kassierer in einem Restaurant übergeben:Ihr Daumen (SSL) verhindert, dass andere Kunden im Restaurant (im Internet) die Karte sehen, aber sobald die Karte in den Händen des Kassierers (einem Webserver) ist, ist die Karte nicht mehr durch den SSL-Austausch und den Kassierer geschützt könnte alles mit dieser Karte machen.Der Zugriff auf eine gespeicherte Kartennummer kann nur durch die Sicherheit des Webservers gestoppt werden.Das heißt, die meisten Kartendiebstähle im Internet werden nicht während der Übertragung begangen, sondern durch das Durchbrechen schlechter Serversicherheit und den Diebstahl von Datenbanken.

Warum sich mit der PCI-Konformität beschäftigen?Im besten Fall sparen Sie einen Bruchteil eines Prozents Ihrer Bearbeitungsgebühren.Dies ist einer der Fälle, in denen Sie sicher sein müssen, dass Sie Ihre Zeit sowohl im Vorfeld der Entwicklung als auch im Laufe der Zeit nutzen möchten, um mit den neuesten Anforderungen Schritt zu halten.

In unserem Fall war es am sinnvollsten, ein abonnementfähiges Gateway zu verwenden und dieses mit einem Händlerkonto zu koppeln.Mit dem abonnementsicheren Gateway können Sie die gesamte PCI-Konformität überspringen und lediglich die Transaktion ordnungsgemäß verarbeiten.

Wir nutzen TrustCommerce als unser Gateway und sind mit deren Service/Preisen zufrieden.Sie verfügen über Code für eine Reihe von Sprachen, der die Integration ziemlich einfach macht.

Stellen Sie sicher, dass Sie den Mehraufwand und das Budget, die für PCI erforderlich sind, im Griff haben.PCI erfordert möglicherweise enorme externe Prüfungsgebühren und internen Aufwand/Unterstützung.Seien Sie sich auch der Bußgelder/Strafen bewusst, die einseitig gegen Sie verhängt werden können und die oft in keinem Verhältnis zum Ausmaß der „Straftat“ stehen.

Der gesamte Prozess beinhaltet viel.Der einfachste Weg, dies zu tun, ist die Nutzung von PayPal-ähnlichen Diensten, sodass Sie nie mit Kreditkartendaten umgehen müssen.Abgesehen davon müssen Sie einiges erledigen, um die Genehmigung für das Anbieten von Kreditkartendiensten auf Ihrer Website zu erhalten.Sie sollten wahrscheinlich mit Ihrer Bank und den Personen, die Ihre Händler-ID ausstellen, sprechen, um Ihnen bei der Einrichtung des Prozesses zu helfen.

Wie andere bereits erwähnt haben, ist der einfachste Weg in diesen Bereich die Verwendung von Paypal, Google-Kasse oder Nochex.Wenn Sie jedoch vorhaben, ein größeres Geschäftsvolumen zu erreichen, sollten Sie über ein „Upgrade“ auf Website-Integrationsdienste auf höherer Ebene nachdenken, z WorldPay, NetBanx (Großbritannien) oder Neteller (USA).Alle diese Dienste sind relativ einfach einzurichten.Und ich weiß, dass Netbanx eine bequeme Integration in einige der handelsüblichen Warenkorblösungen bietet, wie z Intershop (weil ich einige davon geschrieben habe).Darüber hinaus erwägen Sie eine direkte Integration mit den Bankensystemen (und ihren APAX-Systemen), aber das ist schwierig und an diesem Punkt müssen Sie den Kreditkartenunternehmen auch nachweisen, dass Sie mit den Kreditkartennummern sicher umgehen (wahrscheinlich keine Überlegung wert, wenn Sie nehmen nicht monatlich 100.000 US-Dollar ein.

Von Anfang bis Ende liegen die Kosten/Vorteile darin, dass die ersten Optionen viel einfacher (schneller/günstiger) einzurichten sind und Sie für jede Transaktion recht hohe Bearbeitungsgebühren zahlen.Die späteren Modelle sind viel teurer in der Einrichtung, aber auf lange Sicht zahlen Sie weniger.

Der andere Vorteil der meisten nicht dedizierten Lösungen besteht darin, dass Sie verschlüsselte Kreditkartennummern nicht sicher aufbewahren müssen.Das ist das Problem von jemand anderem :-)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top