In one sentence
PCI DSS is the contractual security standard, set by the card brands through the PCI Security Standards Council, that anyone storing, processing or transmitting payment-card data must meet — currently version 4.0.1.
Why it matters
PCI DSS is not a law. It is a condition of the contract between a merchant (or service provider) and its acquiring bank, which in turn answers to Visa, Mastercard and the other brands. That makes enforcement commercial rather than regulatory: non-compliance means fines passed down by the acquirer, higher transaction fees, and after a breach, liability for the fraud and the card reissuance. Losing the ability to accept cards is the existential version.
How you prove compliance depends on volume. Small merchants complete a Self-Assessment Questionnaire (SAQ) — the SAQ A for a site that fully outsources the payment page, up to the SAQ D for one that handles card numbers itself. Level 1 merchants (over six million transactions a year) and most service providers need an on-site assessment by a Qualified Security Assessor (QSA) producing a Report on Compliance. The scope is the cardholder data environment (CDE) plus anything connected to it — which is why the standard's most cost-effective control is segmentation: shrink the CDE and you shrink the audit.
The 12 requirements, and what v4 changed
Six goals, twelve requirements: build and maintain a secure network (1 network security controls, 2 secure configurations); protect account data (3 stored data, 4 strong cryptography in transit over open networks); vulnerability management (5 malware, 6 secure systems and software); access control (7 need-to-know, 8 identification and authentication, 9 physical access); monitoring and testing (10 logging, 11 testing); and a security policy (12).
Version 4.0 (March 2022) replaced 3.2.1, which was retired on 31 March 2024; the corrective 4.0.1 (June 2024) is the current text. Sixty-four requirements were future-dated and became mandatory on 31 March 2025. The ones that changed engineering work most:
- 6.4.3 and 11.6.1 — every script on a payment page must be inventoried, authorised and integrity-checked, and the page must have a change-and-tamper detection mechanism (a response to Magecart skimming). Content Security Policy and Subresource Integrity are the usual answers.
- 8.3.6 and 8.4.2 — passwords of at least 12 characters (8 where the system cannot), and multi-factor authentication for all access into the CDE, not just administrators.
- 12.3.1 — a targeted risk analysis documented for every requirement that says "periodically", so the frequency you chose is defended rather than guessed.
- The customized approach — an alternative to prescriptive controls where you show your own control meets the stated objective, with QSA sign-off.
Try it yourself hands-on
You run an e-commerce site on SAQ A-EP (your page loads the payment provider's iframe but you host the surrounding page). Three requirements can be checked in ten minutes.
- Requirement 4 — strong cryptography in transit. Run
shop.example.comthrough the SSL Certificate Checker. You want TLS 1.2 or 1.3 only, a certificate that is valid and matches the host, and no SSLv3/TLS 1.0/1.1 — those are "early TLS" and have been prohibited since 2018. A certificate expiring in 20 days is not a failure today, but it is what the QSA will ask you to have monitored. - Requirement 6.4.3 — payment-page scripts. Paste the checkout page's response headers into the HTTP Security Headers Grader. No
Content-Security-Policymeans no technical authorisation of scripts, which is the substance of the requirement. Build one in the CSP Builder:script-src 'self' https://js.payment-provider.exampleplus areport-toendpoint gives you both the allow-list and the tamper signal 11.6.1 asks for. - Requirement 8.3.6 — password length. Paste your staff password policy into the Password Policy Tester. A minimum of 8 characters scores fine against NIST 800-63B but fails PCI DSS v4's 12; the tool's NIST-aligned policy text is a good starting point, with the minimum raised to 12 for CDE accounts.
None of this replaces the SAQ, but each check maps to a requirement number you can cite in it, and each is a control you can re-run before the annual attestation instead of discovering it during it.
Common misreadings
- "We use Stripe/Adyen, so PCI is their problem." Outsourcing the payment form reduces your scope to SAQ A, it does not remove it — and SAQ A itself gained the script-integrity requirements in v4.
- PAN vs cardholder data. The 16-digit number (PAN) is what triggers most controls; a name plus a truncated number (first six, last four) is not PAN. Never store the CVV after authorisation — there is no compliant way to do so.
- Compliance is a point in time; security is not. Most breached merchants had a valid attestation. Requirement 12.4's "compliance programme" language exists for exactly that reason.