Skip to main content
Blog
Blog

Adyen et la norme PCI DSS : ce que le processeur couvre face à ce que vous devez faire

Reliez la frontière de propriété des scripts des exigences PCI DSS 6.4.3 et 11.6.1 à chaque intégration Adyen : Hosted Pages, Drop-in, Components et API uniquement.

Jul 10, 2026 9 min read
Adyen et la norme PCI DSS : ce que le processeur couvre face à ce que vous devez faire

Ce qu'Adyen couvre face à ce qui reste à votre charge

Adyen, comme tout processeur PCI DSS de niveau 1, atteste le code qui s'exécute à l'intérieur de sa propre iframe. Il n'atteste pas la page qui l'encadre. Les exigences 6.4.3 et 11.6.1 de la norme PCI DSS 4.0.1 régissent les scripts de votre page de paiement dans le navigateur du consommateur, et la plupart de ces scripts sont les vôtres. La frontière de propriété des scripts est le bord de la frame d'Adyen, et elle se déplace selon l'intégration Adyen que vous déployez.

« Nous utilisons Adyen » indique à votre QSA où les données de carte sont traitées. Cela ne lui dit pas ce que votre gestionnaire de balises, votre outil d'analytique, votre outil de consentement et votre chargeur de SDK font dans le navigateur pendant qu'un acheteur saisit une carte. Cet article relie cette frontière à chaque type d'intégration Adyen afin que vous sachiez précisément quels scripts Adyen vous décharge et lesquels vous devez inventorier, autoriser et surveiller vous-même.

La frontière selon le type d'intégration Adyen

Adyen propose plusieurs intégrations front-end, et chacune trace la frontière de l'iframe à un endroit différent. Plus les champs de carte se trouvent à l'intérieur d'une frame servie par Adyen, moins le chemin des données de paiement vous appartient, mais les scripts environnants de la page vous appartiennent dans tous les cas.

Intégration AdyenOù s'affichent les champs de carteSAQ habituelAdyen possède (son iframe)Vous possédez au titre de 6.4.3 / 11.6.1
Hosted Payment Pages (redirection)Domaine d'Adyen, redirection complèteSAQ ALa saisie de carte et la page hébergéeLes scripts de la page depuis laquelle vous redirigez
Drop-inIframe Adyen, montée par le SDK AdyenSAQ ALa saisie de carte dans la frame Drop-inLe chargeur du SDK + tous les autres scripts de la page parente
Components (Custom Card)Iframes Adyen par champSAQ AChaque frame de champ de saisie hébergéLe chargeur du SDK, le JS de mise en page, tous les scripts environnants
API uniquement (serveur à serveur)Votre propre DOM, aucune iframe AdyenSAQ DRien côté clientLe formulaire entier et chaque script capable de le lire

Le schéma est constant. La responsabilité d'Adyen s'arrête à la bordure de l'iframe. Le chargeur qui récupère et monte le SDK Adyen est votre script, servi depuis votre origine, et il est dans le périmètre. Tout ce qui l'entoure également.

Hosted Payment Pages : le plus léger, mais pas nul

Une redirection complète vers une page de paiement hébergée par Adyen est le cas le plus propre pour les données de carte. Le PAN est saisi sur le domaine d'Adyen, il ne touche donc jamais votre DOM. C'est le scénario SAQ A classique.

Le piège consiste à supposer que « redirection » signifie « aucun périmètre côté client ». La page depuis laquelle vous redirigez, votre panier ou votre page de démarrage du paiement, exécute toujours vos scripts et fait toujours partie du parcours de paiement du client. Un script altéré à cet endroit peut superposer un faux formulaire de carte avant la redirection, ou réécrire la cible de la redirection vers un processeur usurpé. Depuis la modification du SAQ A de janvier 2025, l'éligibilité elle-même dépend de la confirmation que votre page de paiement n'est pas vulnérable aux attaques par scripts, de sorte que les pages que vous contrôlez nécessitent toujours un récit défendable concernant leurs scripts.

Drop-in et Components : la lacune la plus fréquente

Drop-in et Components sont les choix de la plupart des équipes, et c'est là que la frontière est le plus mal interprétée. Adyen sert les véritables champs de saisie de carte à l'intérieur d'une iframe, ce qui maintient le PAN hors de votre DOM et permet le SAQ A. Très bien. Mais pour afficher cette frame, votre page charge le SDK Adyen Web et exécute un script de chargement que vous avez écrit et que vous hébergez. Ce chargeur est un script de page de paiement au titre de 6.4.3, sans exception.

Tout autour se trouve le reste de votre tunnel de paiement : Google Tag Manager, l'analytique, le session replay, le chat, la gestion du consentement, les SDK de lutte contre la fraude et tout ce que le marketing a déployé au dernier sprint. Aucun de ces éléments n'appartient à Adyen. Tous s'exécutent dans le même contexte de navigateur que la frame Adyen, sur votre origine, et n'importe lequel d'entre eux peut être compromis par une attaque de la chaîne d'approvisionnement via un script tiers.

L'incident Polyfill[.]io de 2024 est la version concrète de ce risque : un unique script tiers de confiance intégré sur plus de 490 000 sites a été rendu malveillant du jour au lendemain et a servi du code de redirection et de skimming à des pages de paiement (Sansec, 2024). Un marchand sur Adyen Drop-in dont les champs de carte étaient parfaitement isolés restait exposé, parce que le code malveillant arrivait par la propre page du marchand, et non par l'iframe d'Adyen.

API uniquement : la frontière disparaît

Une intégration en API uniquement, de serveur à serveur, supprime entièrement l'iframe Adyen. Vous collectez les données de carte dans votre propre formulaire, dans votre propre DOM, et vous les envoyez à Adyen depuis votre serveur. Il n'y a aucune isolation côté client, c'est pourquoi ce chemin vous place généralement dans le SAQ D avec l'ensemble de contrôles le plus lourd.

Pour 6.4.3 et 11.6.1, c'est le pire des cas. Chaque script de la page se trouve désormais sur le chemin direct des données de carte brutes au moment où elles sont saisies. L'inventaire, la justification écrite, la vérification d'intégrité et la détection d'altération que vous devez fournir ne protègent plus la page autour d'une iframe sûre ; ils protègent le champ de carte lui-même. Un seul script injecté ou modifié peut lire le PAN depuis le champ de saisie à chaque frappe et l'exfiltrer. La plupart des équipes qui choisissent l'API uniquement le font pour le contrôle du tunnel de paiement, et elles héritent en contrepartie de toute la charge de surveillance côté navigateur.

Ce qu'exigent 6.4.3 et 11.6.1, quelle que soit l'intégration

Le type d'intégration déplace la frontière, mais les deux contrôles ne vous quittent jamais. Ils sont devenus obligatoires le 31 mars 2025 (PCI Security Standards Council, PCI DSS v4.0.1).

  1. Inventoriez chaque script de la page de paiement (6.4.3). Répertoriez chaque script qui se charge dans le navigateur sur votre flux de paiement, y compris le chargeur du SDK Adyen et chaque balise tierce, en indiquant par écrit la raison de sa présence.
  2. Autorisez avant le déploiement (6.4.3). Approuvez chaque script et chaque modification. Une balise non examinée déclenchée par un outil marketing échoue à elle seule à cette exigence.
  3. Confirmez l'intégrité (6.4.3). Vérifiez que chaque script autorisé n'a pas été modifié sans approbation.
  4. Détectez les altérations et alertez (11.6.1). Mettez en place un mécanisme de détection des changements qui alerte en cas de modification non autorisée des scripts de la page de paiement et des en-têtes HTTP ayant un impact sur la sécurité, évalués tels qu'ils sont reçus par le navigateur du consommateur au moins tous les sept jours ou selon votre analyse de risque ciblée.
  5. Conservez des preuves qui résistent à un audit (6.4.3 / 11.6.1). Conservez les versions des scripts, les approbations et l'historique des modifications afin qu'un QSA voie des enregistrements, et non des affirmations.

Aucune de ces exigences n'est satisfaite par Adyen, parce qu'aucune d'elles ne concerne l'endroit où les données de carte sont traitées. Elles concernent ce qui s'exécute dans le navigateur, et le navigateur est la moitié qu'Adyen vous rend.

Comment cside couvre la moitié qu'Adyen vous laisse

La version manuelle, un tableur de scripts plus une comparaison hebdomadaire de captures d'écran, se brise dès qu'un gestionnaire de balises injecte des scripts de façon dynamique, ce qui est la norme sur un véritable tunnel de paiement Adyen. Elle produit aussi le type de preuves auxquelles les auditeurs se méfient.

cside PCI Shield est conçu pour la tranche exacte qu'Adyen ne couvre pas :

  • Inventaire et justification automatisés (6.4.3). cside découvre chaque script de la page de paiement, y compris le chargeur du SDK Adyen et toutes les balises tierces, construit l'inventaire et enregistre l'autorisation et la justification au même endroit.
  • Intégrité et détection d'altération en temps réel (11.6.1). cside surveille en continu les scripts et les en-têtes HTTP ayant un impact sur la sécurité, et alerte en cas de modification non autorisée, au lieu d'échantillonner via une tâche cron hebdomadaire en espérant que rien n'est passé entre les mailles.
  • Preuves prêtes pour l'audit. cside archive chaque version de script avec son historique complet, de sorte que vous remettez à un QSA des enregistrements probants qui correspondent proprement au côté marchand de la répartition des responsabilités.

cside ne remplace pas Adyen. Adyen sort les données de carte du périmètre à l'intérieur de son iframe ; cside couvre les scripts de la page parente que 6.4.3 et 11.6.1 vous laissent, quelle que soit l'intégration que vous exécutez.

Pour aller plus loin sur cside

Au 2026-06-18, considérez ce document comme une orientation opérationnelle, et non comme un conseil juridique. Confirmez le libellé exact des contrôles et votre éligibilité au SAQ auprès de votre QSA, de votre conseil juridique ou du responsable des risques.

Simon Wijckmans
Founder & CEO

Founder and CEO of cside. Previously a product manager on Cloudflare Page Shield (now Cloudflare Client-Side Security). Co-chair of the W3C Anti-Fraud Community Group and a Forbes 30 Under 30 honoree. Building accessible security against client-side attacks — web security is not an enterprise-only problem.

FAQ

Frequently Asked Questions

La frontière est le bord de l'iframe d'Adyen. Adyen possède et atteste le code qui s'exécute à l'intérieur de son champ hébergé, de son Drop-in ou de son iframe Component, parce que cette frame est servie depuis le domaine d'Adyen. Tout ce qui se trouve dans la page parente qui l'encadre, y compris votre gestionnaire de balises, votre outil d'analytique, votre bandeau de consentement, votre outil d'A/B testing et le script de chargement qui monte le SDK Adyen, est servi depuis votre origine et reste sous votre responsabilité au titre de 6.4.3 et 11.6.1. La saisie des données du titulaire de carte peut être totalement isolée et votre page peut tout de même héberger un skimmer.

Elle les élargit. Avec un flux serveur à serveur en API uniquement, vous construisez vous-même le formulaire de carte, de sorte que les champs de saisie se trouvent directement dans votre DOM, sans aucune iframe Adyen pour les isoler. Cela vous oriente vers le SAQ D et signifie que chaque script de la page peut lire le PAN au moment où il est saisi. Les contrôles d'inventaire, de justification, d'intégrité et de détection d'altération couvrent désormais les scripts qui se trouvent sur le chemin direct des données de carte brutes, ce qui relève à la fois le niveau d'exigence de l'audit et l'ampleur des dégâts en cas de compromission.

Pas tout à fait. Une redirection complète vers une page hébergée par Adyen déplace la saisie de la carte hors de votre domaine, ce qui constitue le cas le plus léger. Mais la page depuis laquelle vous redirigez, votre panier et votre page de démarrage du paiement, exécute toujours vos scripts et peut être altérée pour superposer un faux formulaire ou rediriger l'acheteur avant même qu'Adyen ne se charge. L'éligibilité au SAQ A exige désormais de confirmer que votre page de paiement n'est pas vulnérable aux attaques par scripts, vous devez donc toujours fournir une réponse défendable concernant les scripts des pages que vous contrôlez.

Surveillez et sécurisez vos scripts tiers

Gain full visibility and control over every script delivered to your users to enhance site security and performance.

Commencez gratuitement, ou essayez Business avec un essai de 14 jours.

cside Interface du tableau de bord affichant la surveillance des scripts et les analyses de sécurité
Related Articles
Réserver une démonstration