heygrc
Antwort

Wie kann ich Zahlungen annehmen, ohne Kartendaten zu speichern?

das heygrc team

Nutzen Sie die Tokenisierung Ihres Zahlungsabwicklers, sodass die Rohdaten der Karte direkt an diesen gesendet werden und nicht über Ihre Server laufen. Speichern Sie das zurückgegebenen Token und die letzten vier Ziffern zur Anzeige und speichern Sie niemals die vollständige Kartennummer oder den Prüfcode. So bleiben Sie im Einklang mit PCI DSS Anforderung 3 und verringern den Umfang der auf Sie zutreffenden PCI-Anforderungen.

  1. Tokenisierung am Rand durchführen

    Erfassen Sie die Kartendaten mit den gehosteten Feldern oder dem SDK des Zahlungsabwicklers, sodass die Rohdaten der Karte direkt an diesen gesendet werden und Sie ein Token zurückerhalten. Die Kartendaten gelangen niemals in Ihre Anwendung.

  2. Token speichern, nicht die Karte

    Speichern Sie das Token des Zahlungsabwicklers und die letzten vier Ziffern zur Anzeige. Speichern Sie niemals die vollständige Kartennummer und speichern Sie niemals den Prüfcode, der nach der Autorisierung nicht aufbewahrt werden darf.

  3. PCI-Umfang verkleinern

    Je weniger Kartendaten Ihre Systeme berühren, desto kleiner ist Ihr PCI-Umfang. Tokenisierung ist die Standardmethode, um diesen zu verkleinern. Bevorzugen Sie sie gegenüber der eigenen Verarbeitung der Rohdaten.

checkout/charge.ts+2 -1
// paymentMethodId ist ein Token von den gehosteten Feldern des Zahlungsabwicklers (keine Rohdaten der Karte hier)- await orders.insert({ id, pan: card.number })+ await processor.charge(paymentMethodId, amount)+ await orders.insert({ id, paymentMethodId, last4 })return ok()
heygrcPCI DSS Req 3

Die Rohdaten der Karte werden von den gehosteten Feldern des Zahlungsabwicklers erfasst und erreichen niemals Ihren Server. Die Bestellung speichert nur das Zahlungstoken und die letzten vier Ziffern, nicht die Kartennummer oder den Prüfcode.