Éviter les données sensibles dans les formulaires (PCI DSS pour les paiements)

Comprenez la conformité PCI DSS pour les formulaires. Quelles données de paiement ne jamais stocker et comment les gérer en sécurité.

Brouillon

Si votre formulaire collecte des informations de paiement, vous êtes soumis à des règles de sécurité strictes, que vous le sachiez ou non. La norme de sécurité des données de l'industrie des cartes de paiement (PCI DSS) fixe des exigences pour quiconque accepte, stocke ou traite des données de cartes de paiement. Violer PCI DSS entraîne des amendes de milliers de dollars par jour, en plus de la responsabilité si des données de cartes sont volées.

La règle fondamentale de PCI DSS est simple. Ne stockez jamais vous-même les données brutes de cartes de paiement. Éviter les données sensibles dans les formulaires et passer par de vrais prestataires de paiement protège votre marque et vos clients, et vous garde en conformité.

Ce que vous allez apprendre : ce qu'est PCI DSS et quand il s'applique, quelles données de paiement il ne faut jamais collecter, comment structurer les formulaires de paiement en toute sécurité, comment utiliser correctement les prestataires de paiement et que faire si vous avez déjà collecté des données sensibles.

Qu'est-ce que PCI DSS ?

PCI DSS (Payment Card Industry Data Security Standard) est un ensemble de normes de sécurité créées par les grands réseaux de cartes bancaires. Elles s'appliquent à toute entreprise qui accepte, stocke, transmet ou traite des informations de cartes bancaires.

PCI DSS s'applique à vous si :

  • Vous gérez une boutique en ligne qui accepte les cartes bancaires
  • Vous avez un formulaire qui collecte des informations de paiement
  • Vous envoyez des factures par e-mail avec des instructions de paiement
  • Vous stockez les informations de paiement de clients pour une facturation récurrente
  • Un employé a accès à des données de cartes de paiement

Vous pensez peut-être ne pas être soumis à PCI DSS si vous utilisez un prestataire de paiement, mais vous êtes responsable de la façon dont vous collectez les données avant qu'elles n'atteignent le prestataire.

Les niveaux PCI DSS et qui doit s'y conformer

Les exigences de conformité PCI DSS varient selon le volume de transactions que vous traitez :

Niveau 1 : entreprises qui traitent plus de 6 millions de transactions par an. Audit annuel obligatoire par un évaluateur externe. Les exigences les plus strictes.

Niveau 2 : entreprises qui traitent de 1 à 6 millions de transactions par an. Auto-évaluation détaillée obligatoire.

Niveau 3 : entreprises qui traitent de 20 000 à 1 million de transactions par an. Auto-évaluation obligatoire.

Niveau 4 : entreprises qui traitent moins de 20 000 transactions par an. Les exigences les plus simples. La plupart des petites entreprises sont ici.

Même le niveau 4 (petite entreprise) a des exigences strictes. Vous ne pouvez pas prendre les données de cartes de paiement n'importe comment.

La règle d'or : ne jamais stocker les données brutes de carte

La règle PCI DSS la plus importante : ne collectez ni ne stockez les numéros de carte bancaire complets, les dates d'expiration ou les codes de sécurité (CVV) dans votre propre base de données ou sur vos serveurs.

NE collectez JAMAIS :

  • Les numéros de carte bancaire complets (PAN : Primary Account Number)
  • Les dates d'expiration
  • Les codes de sécurité (CVV/CVC)

NE les stockez JAMAIS, même chiffrés.

Si votre formulaire collecte ces données et que vous les stockez vous-même, vous violez PCI DSS. Les sanctions sont sévères :

  • Des amendes de 5 000 à 100 000 dollars par mois de non-conformité
  • Votre responsabilité si les données de cartes sont volées et utilisées frauduleusement
  • Votre responsabilité pour les pertes liées à la fraude et les coûts d'information des clients
  • Les prestataires de cartes bancaires peuvent vous retirer la possibilité d'accepter des paiements

Ce que vous POUVEZ collecter et stocker

Certaines données liées au paiement peuvent être collectées sans risque :

  • Nom et adresse de facturation : pour la vérification et la livraison
  • Adresse e-mail : pour le reçu et la communication
  • Les 4 derniers chiffres de la carte : à titre de référence (par exemple « moyen de paiement se terminant par 4242 ») - mais seulement si vous ne collectez pas le numéro complet
  • Montant et date du paiement : pour la tenue des registres
  • Identifiant de transaction du prestataire de paiement : pour le rapprochement et la réconciliation

L'essentiel : vous pouvez stocker des informations clients, des informations de commande et des numéros de référence. Vous ne pouvez pas stocker les données réelles de la carte de paiement.

Comment manipuler les données de paiement en toute sécurité

Ne créez jamais de formulaire de paiement sur mesure

Ne créez pas de formulaire qui collecte directement des informations de carte bancaire. Dès qu'un formulaire de paiement envoie des données de carte à votre serveur, vous êtes responsable de la conformité PCI DSS.

Utilisez un prestataire de paiement avec pages de paiement hébergées

Les prestataires de paiement proposent des pages de paiement hébergées. Ce sont des formulaires qui se trouvent sur les serveurs sécurisés du prestataire, pas sur les vôtres. Quand un client remplit le formulaire de paiement, les données de carte vont directement au prestataire. Votre serveur ne voit jamais le numéro de carte complet.

Exemple de parcours :

  1. Le client remplit votre formulaire de commande (nom, e-mail, adresse de livraison)
  2. Le client clique sur « Payer »
  3. Le navigateur redirige vers le formulaire sécurisé du prestataire de paiement
  4. Le client saisit les informations de carte sur le formulaire du prestataire
  5. Le prestataire traite le paiement et vous envoie une notification
  6. Votre formulaire ne reçoit qu'un identifiant de transaction, pas les données de carte

Vous ne manipulez jamais les données de carte : la conformité PCI DSS est donc de la responsabilité du prestataire.

Utilisez une iframe pour le paiement

Certains prestataires fournissent une iframe que vous pouvez intégrer à votre formulaire. L'iframe est en réalité hébergée sur les serveurs sécurisés du prestataire, mais elle apparaît comme une partie de votre page. Le client voit un formulaire unique, mais la section de paiement se trouve en fait sur les serveurs du prestataire.

Utilisez une API de paiement avec tokenisation

Des prestataires de paiement avancés vous permettent de collecter les informations de paiement sur votre formulaire grâce à leur bibliothèque JavaScript. La bibliothèque chiffre les données dans le navigateur du client avant qu'elles n'atteignent votre serveur. Elle vous envoie un jeton (une référence sécurisée) à la place des données de carte réelles. Vous stockez le jeton, pas la carte.

Cela demande une mise en œuvre soignée pour éviter de manipuler des données de carte non chiffrées. N'y recourez que si vous maîtrisez parfaitement le processus.

Ce qu'il ne faut PAS faire

N'envoyez pas d'informations de paiement par e-mail. Ne demandez pas aux clients de vous envoyer des numéros de carte bancaire par e-mail. L'e-mail n'est pas chiffré et n'est pas sûr.

Ne demandez pas le CVV si vous stockez la carte. Si vous stockez une carte pour des paiements récurrents, vous ne devez ni demander ni stocker le CVV. Le CVV n'est nécessaire qu'au moment du paiement.

Ne collectez pas de données de carte sur un formulaire ordinaire pour vous les envoyer par e-mail. Cela envoie des informations de paiement par e-mail non chiffré, ce qui viole PCI DSS.

Ne stockez pas de données de carte dans un tableur, un fichier texte ou une base de données sans chiffrement. Si vous avez déjà collecté des données de carte (ce que vous ne devriez pas avoir fait), vous devez les chiffrer ou les supprimer immédiatement.

Si vous avez déjà collecté des données de paiement sensibles

Si un formulaire collecte des numéros de carte complets ou des CVV, arrêtez immédiatement :

  1. Arrêtez de collecter ces données. Retirez tout de suite les champs de carte du formulaire.
  2. Sécurisez ce que vous avez. Si vous avez stocké des données de carte, chiffrez-les ou supprimez-les.
  3. Passez à un prestataire de paiement. Mettez en place un moyen de paiement conforme avec un prestataire tiers.
  4. Informez les clients concernés. Si vous avez subi une fuite, ou si les données de carte de clients sont encore stockées, prévenez-les.
  5. Consultez un juriste. Si vous avez collecté des données de carte de façon non sécurisée, vous pouvez être exposé sur le plan réglementaire. Demandez conseil à un avocat.

La tokenisation : la façon sûre de stocker les moyens de paiement

La tokenisation consiste à remplacer des informations de paiement sensibles par un numéro de référence non sensible.

Sans tokenisation : vous stockez « 4532-1234-5678-9010 » dans votre base de données.

Avec tokenisation : le prestataire de paiement stocke « 4532-1234-5678-9010 » et vous donne un jeton comme « tok_abc123def456 ». Vous stockez le jeton.

Quand vous devez débiter à nouveau la carte (pour une facturation récurrente), vous envoyez le jeton au prestataire. Le prestataire utilise le jeton pour retrouver les données d'origine et traiter le paiement. Vous ne manipulez jamais la carte elle-même.

Les jetons peuvent être stockés sans risque. Ils ne permettent pas de traiter des paiements à l'insu du prestataire et ne révèlent pas le numéro de carte.

Les exigences PCI DSS au-delà des formulaires de paiement

Même si vous utilisez correctement un prestataire de paiement, PCI DSS a d'autres exigences :

  • Sécurisez vos serveurs. Mettez à jour les logiciels, utilisez des pare-feu, restreignez les accès.
  • Utilisez des mots de passe forts. Pour votre compte chez le prestataire de paiement et tous les comptes d'administration.
  • Chiffrez les données en transit et au repos. Utilisez HTTPS, chiffrez les bases de données.
  • Surveillez et auditez. Journalisez les accès aux systèmes liés au paiement, examinez régulièrement les journaux.
  • Formez vos employés. Toute personne qui a accès aux données de paiement a besoin d'une formation à la sécurité.
  • Respectez les normes de sécurité réseau. PCI DSS comprend 12 exigences majeures couvrant le contrôle d'accès, la surveillance et la réponse aux incidents.

Si vous traitez des paiements, familiarisez-vous avec les 12 exigences PCI DSS. Beaucoup dépassent la seule sécurité des formulaires.

Ce que fait WEMASY pour la sécurité des paiements

Les formulaires de boutique en ligne de WEMASY ne collectent ni ne stockent de données de paiement brutes. Quand vous configurez un formulaire de paiement dans WEMASY, il s'intègre à des prestataires de paiement conformes PCI. Le formulaire de paiement redirige vers le système sécurisé du prestataire, ou intègre une iframe sécurisée fournie par le prestataire. Vous ne manipulez jamais de données de carte, et WEMASY ne les stocke jamais. Votre entreprise reste conforme à PCI DSS automatiquement.

Découvrez comment WEMASY gère les paiements en toute sécurité dans les réglages de votre compte ou sur la page des tarifs.

Questions fréquentes

Si j'utilise un prestataire de paiement, dois-je quand même me conformer à PCI DSS ?
Vous êtes responsable de votre part du processus. Si vous utilisez correctement un prestataire de paiement (pages hébergées, iframes ou tokenisation), c'est lui qui gère la conformité PCI DSS pour le stockage des données de paiement. Mais vous devez quand même sécuriser le reste de vos systèmes, utiliser HTTPS, gérer les contrôles d'accès et respecter les autres exigences PCI DSS. Vous n'avez pas besoin d'une conformité complète, mais vous n'êtes pas totalement exempté.
Puis-je collecter des données de carte si je les supprime immédiatement ?
Techniquement, si vous les supprimez en quelques millisecondes avant qu'elles ne touchent le disque, vous pouvez peut-être vous en sortir. Mais c'est risqué. Même quelques millisecondes suffisent à un pirate pour intercepter les données si votre serveur est compromis. L'approche la plus sûre est de ne jamais collecter ces données sur votre serveur. Utilisez une page de paiement hébergée ou une API avec chiffrement.
Quelle est la différence entre PCI DSS et la conformité PCI ?
PCI DSS est la norme précise (12 exigences, des centaines de contrôles). La conformité PCI signifie que vous suivez PCI DSS. Les termes sont souvent employés l'un pour l'autre, mais PCI DSS est la norme elle-même et la conformité PCI consiste à la respecter.
Dois-je être certifié PCI ?
La certification dépend de votre volume de transactions. Les niveaux 1 et 2 exigent une certification formelle. Les niveaux 3 et 4 peuvent s'auto-évaluer. Parlez à votre prestataire de paiement de ce qu'il vous faut pour votre volume. Beaucoup de prestataires vous guident ou font l'évaluation pour vous.
Qu'est-ce que l'ACH et a-t-il des règles de sécurité comme PCI ?
L'ACH (Automated Clearing House) est le système américain de virements bancaires. Collecter des données de compte bancaire a aussi des exigences de sécurité, mais elles diffèrent de PCI DSS. Ne demandez jamais de numéros de compte bancaire bruts dans un formulaire. Si vous avez besoin de données de compte bancaire, utilisez un prestataire qui les gère de façon sécurisée.

Mettez-le en pratique
sur votre propre site.

Commencez gratuitement avec WEMASY et créez votre site en quelques minutes.