Security

Real offensive depth

Testing and defence led by a published security researcher with five CVEs, including a CVSS 9.1 Mirai botnet kill-switch.

All security →
Compliance

Audit-ready, fixed scope

SOC 2, ISO, and the Canadian privacy stack, run end to end with an independent auditor.

All frameworks →
Resources

Learn the space

Original research, free tools, and plain-language guides on security and compliance, from a published security researcher.

Read the blog →
Compliance

How to Get PCI DSS for a Ecommerce Company

The fastest way for an ecommerce company to get PCI DSS compliant is to reduce cardholder data scope first (tokenization or a redirect/iframe checkout), determine the correct SAQ or Report on Compliance level, run a fixed-scope gap analysis against the applicable requirements, remediate the gaps, complete the mandatory penetration test, and have an independent Qualified Security Assessor or Approved Scanning Vendor validate the result. For most small and mid-market Canadian ecommerce merchants, this takes 8 to 14 weeks when the checkout is already outsourced to a compliant processor, and 4 to 6 months when card data touches internal systems that need re-architecture.

If you are reading this, chances are a payment processor, an acquiring bank, or an enterprise B2B customer has just told you that you need to "prove PCI compliance" before a contract renews, before a new payment integration goes live, or before a due diligence process closes. That trigger is common and it is urgent because it usually sits on the critical path of revenue. Here is exactly how an ecommerce business gets there without over-scoping the effort or under-scoping the risk.

What PCI DSS Actually Requires From an Ecommerce Business

The Payment Card Industry Data Security Standard (PCI DSS, currently version 4.0.1) applies to any organization that stores, processes, or transmits cardholder data, or that could impact the security of a payment transaction. For an ecommerce company that means your checkout flow, your web servers, your payment gateway integration, and any system that touches card data en route to your processor are all potentially in scope.

The standard is organized into 12 requirement families covering network security, access control, encryption, vulnerability management, logging, and testing. What changes for ecommerce specifically is how card data moves through your checkout. A merchant using a fully hosted payment page (Stripe Checkout, Shopify Payments, a hosted iframe from your processor) has a dramatically smaller compliance footprint than a merchant capturing card numbers directly on its own servers.

Step 1: Reduce Scope Before You Do Anything Else

Scope reduction is the single highest-leverage move an ecommerce company can make, and it should happen before any gap assessment. The most common paths:

  • Redirect or iframe checkout so card data never touches your servers (this can qualify you for the lighter SAQ A).
  • Tokenization with your payment processor so stored transaction records reference a token, not a PAN.
  • Network segmentation isolating any system that does touch card data from the rest of your environment, so unrelated servers fall out of scope.

Merchants who skip this step end up assessing far more of their infrastructure than necessary, which inflates both cost and remediation time. This is the same principle we apply on the SaaS side; see our related guide on PCI DSS compliance for SaaS companies for how scope reduction plays out when card data flows through a software platform rather than a storefront.

Step 2: Determine Your SAQ Type or ROC Requirement

Not every merchant needs the same level of assessment. Your card brand transaction volume and integration method determine which Self-Assessment Questionnaire applies, or whether you need a full Report on Compliance from a Qualified Security Assessor:

  • SAQ A: fully outsourced checkout (redirect or iframe), no card data touches your systems.
  • SAQ A-EP: your website controls how the payment page is delivered even though card data itself flows to a third party.
  • SAQ D: you store, process, or transmit card data directly. This is the most demanding path.
  • Full ROC: required for Level 1 merchants (generally 6 million+ transactions annually) and assessed by a QSA rather than self-attested.

Getting this classification wrong in either direction wastes money. Too conservative and you assess systems that do not need it; too aggressive and your acquirer or an enterprise customer's security team will reject the attestation.

In scope for PCI DSS? We scope PCI DSS honestly first, because most SaaS companies are in a smaller SAQ than they were told. PCI DSS readiness

Step 3: Run a Gap Analysis Against the Applicable Requirements

Once scope and SAQ type are confirmed, the gap analysis maps your actual environment, encryption practices, access controls, logging, and vendor contracts against the specific requirements that apply to your level. For ecommerce companies, the recurring gaps we see are:

  • Card data lingering in logs, support tickets, or CRM notes from manual order corrections.
  • Missing or misconfigured web application firewalls in front of the checkout, a Requirement 6.4.2 item under PCI DSS v4.0.1. Payment page script inventory is 6.4.3 and tamper detection is 11.6.1.
  • Third-party JavaScript on checkout pages (analytics tags, chat widgets, A/B testing scripts) that was never inventoried, now a formal requirement for client-side script integrity.
  • No formal vendor management process covering the payment gateway, fulfillment partners, and any SaaS tools that touch order data.
  • Incident response plans that were written once for a funding round and never tested.

A fixed-scope, fixed-fee gap analysis at this stage is what turns an open-ended compliance project into a defined sprint with a defined remediation backlog, rather than an ongoing consulting relationship with no end date.

Step 4: Remediate, Then Complete the Required Penetration Test

PCI DSS requires an annual penetration test covering the cardholder data environment and, for internet-facing systems, a segmentation test to confirm that scope-reduction controls actually hold. This is not optional and it is not the same as a vulnerability scan. Ecommerce checkouts are a common pentest target because they are internet-facing, handle payment logic, and often integrate several third-party services, so testers specifically probe for injection flaws, business logic abuse in cart and discount handling, and session or token weaknesses around the payment step.

Remediation should happen before the pentest, not after: fix what the gap analysis found, then let the test validate the fix rather than discover it. Findings from the pentest that touch card data handling need to be closed and, in most cases, retested before your QSA or acquirer will accept the attestation.

Step 5: Independent Attestation, Kept Separate From the Prep Work

PCI DSS does not require the same prep-versus-audit firewall that SOC 2 does, but the principle still holds for credibility with enterprise buyers and acquirers: the firm that helped you close gaps should not be the same firm signing off on your Attestation of Compliance or Report on Compliance. traztech works as the readiness and remediation partner, doing the gap analysis, scope reduction guidance, and fix-it work, then handing off to an independent QSA (for SAQ D or ROC) or supporting your self-attestation package for SAQ A/A-EP. This separation is exactly what a security-conscious enterprise customer's procurement team will ask about.

What Canadian Ecommerce Buyers Are Actually Asking For

Canadian merchants selling into the US market, or onboarding a US-based enterprise buyer, are increasingly asked for PCI attestation alongside SOC 2, particularly when the buyer's own security questionnaire treats payment handling as a distinct risk category from general data security. Retailers and DTC brands based in Toronto, Vancouver, Montreal, Calgary, and Ottawa also need to keep PIPEDA and, for Quebec-based operations, Law 25 obligations in view alongside PCI DSS, since card data and personal data protection obligations overlap but are not identical regimes. A single readiness engagement can map both simultaneously so you are not running two separate compliance projects against the same checkout flow.

Realistic Timeline and Cost Expectations

For an ecommerce company already on a hosted checkout, expect 8 to 14 weeks from kickoff to a signed attestation: 2 to 3 weeks for scope confirmation and gap analysis, 3 to 6 weeks for remediation, 2 to 3 weeks for the pentest and retest, and final sign-off. Companies still capturing card data directly, or running custom checkout code, should plan for 4 to 6 months because scope reduction itself (migrating to tokenization or a hosted iframe) is real engineering work, not paperwork.

If a processor, acquirer, or enterprise customer has put a PCI DSS deadline in front of your ecommerce business, the worst move is guessing at scope and hoping the SAQ fits. Book a free readiness call and we will map your actual card data flow, tell you which SAQ level applies, and give you a fixed-scope plan to close the gaps before the next deadline hits. If you would rather talk through your specific checkout setup first, contact traztech and we will walk you through what a Canadian boutique readiness engagement looks like for an ecommerce business your size.

Who You Actually Submit To

PCI DSS is a card brand standard, but you do not send anything to Visa or Mastercard. You send it to whoever sits above you in the payment chain: your acquiring bank if you are a merchant, or your payment facilitator if you onboarded through one. An acquirer typically wants a signed Attestation of Compliance annually and quarterly Approved Scanning Vendor results if you have internet-facing systems in scope. A payment facilitator may accept a shorter onboarding attestation and never ask again, which feels easier until an enterprise customer asks for the document the facilitator never made you produce.

Before scoping anything, email your acquirer or facilitator and ask three questions in writing: which merchant level they have assigned you, which SAQ they expect, and whether they require ASV scanning. Merchants routinely assume a level based on their own transaction counts and discover the acquirer classified them differently because of aggregated volume across brands or a prior fraud event. The answer takes a week to obtain and prevents scoping the wrong assessment entirely.

The Client-Side Script Requirements Are the New Failure Point

Requirements 6.4.3 and 11.6.1 in PCI DSS v4.0.1 are now in force, not future-dated, and they are where ecommerce merchants who thought they had a tidy SAQ A get caught. The rules require that scripts loaded and executed in the consumer browser on the payment page are inventoried with written business justification, authorized before deployment, and their integrity assured, plus a mechanism that detects and alerts on unauthorized modification of the payment page headers and script content.

In practice that means four pieces of work. Build the inventory by loading your checkout and enumerating every script the browser fetches, including the ones pulled in by other scripts, which is where tag managers turn one entry into eleven. Justify each one in a sentence a QSA will accept, and delete the ones that fail that test, because the fastest way to satisfy this requirement is to have fewer scripts. Apply a Content Security Policy that restricts script sources to the approved list, and use subresource integrity where the asset is versioned. Then stand up change detection on the page, either through your processor's tooling or a monitoring service, so a modified script raises an alert rather than sitting undetected for the months that skimming attacks typically run.

The reason the card brands added this is digital skimming. An attacker does not need to breach your database if they can alter one JavaScript file and read the card number as the customer types it. That attack works exactly the same whether your checkout is hosted, embedded, or your own, which is why merchants using an iframe are not entirely exempt from thinking about it.

How Small Changes Move You Between SAQs

Merchants think of their SAQ type as a property of the business. It is a property of the checkout, and it changes when engineering ships. A few worked examples of what moves the line.

Adding a card field to your own page. A merchant on a full redirect qualifies for SAQ A. Marketing asks for a smoother checkout, so the team switches to hosted fields where the input elements are the processor's but your page controls the surrounding form and how the payment page is delivered. That is SAQ A-EP territory, which is several times the requirement count and brings ASV scanning and more of your web infrastructure into scope. The change looks like a frontend ticket and lands as a compliance reclassification.

Taking orders over the phone. Customer service starts keying card numbers into an admin screen for phone orders. Those workstations, that admin interface, and potentially your call recording system are now in scope, and call recordings that capture spoken card numbers are storage of cardholder data whether you intended it or not. Pause-and-resume recording is the standard fix.

Storing cards for subscriptions. If your processor tokenizes and you store only the token and last four digits, you are fine. If somebody built a retry mechanism that caches the full number for a failed payment, you are storing PAN and you are in SAQ D. This is worth grepping your codebase for before an assessor asks.

Requirement 12.8 and the Vendors You Forgot

Merchants prepare for questions about their own environment and get caught on their third-party service providers. Requirement 12.8 asks for a maintained list of service providers that could affect the security of cardholder data, written agreements including their acknowledgment of responsibility, due diligence before engagement, a monitoring program for their compliance status, and a documented split of which PCI DSS requirements each party owns.

That last item, the responsibility matrix, is the one nobody has. It is a table listing each applicable requirement and stating whether it is yours, the provider's, or shared. Your processor and your hosting provider publish theirs, and if you have never downloaded them you cannot claim the coverage they give you. The same review needs to reach your fulfillment platform, your fraud screening vendor, your chat widget provider if it loads on checkout, and your managed hosting partner.

Where the Money Goes

The cost drivers for an ecommerce PCI project are predictable. Scope determines everything else, so a merchant on a genuine redirect checkout with segmented infrastructure pays for a gap analysis, an ASV scan subscription, and remediation time. A merchant on SAQ A-EP adds the script controls, broader scanning, and a larger penetration test because more of the environment is testable. A merchant on SAQ D adds encryption key management, logging retention, and file integrity monitoring, all of which are engineering work with ongoing operational cost rather than one-time spend.

Penetration testing starts at $1,000 with us, and the variable is the size of the in-scope environment plus whether a segmentation test is required to prove that your scope reduction actually holds. That segmentation test is the one merchants forget to budget for and the one that most often produces an unwelcome result, because firewall rules accumulate and a route that was closed at design time is frequently open by the time anyone tests it.

The genuinely expensive scenario is re-architecture. Moving from direct card capture to tokenization is a real engineering project touching checkout, refunds, subscription billing, reporting, and customer service tooling. Budget it as a product change, not a compliance line item, and it will pay for itself in every subsequent annual cycle.

If You Are Breached While Compliant

An attestation is a point-in-time statement, and the card brands are explicit that no compromised entity has ever been found to have been compliant at the time of breach. What follows a suspected card data compromise is a defined process: notify your acquirer immediately, preserve evidence rather than rebuilding the affected systems, and expect the brands to require a PCI Forensic Investigator engaged from their approved list, paid by you. Fines, card reissuance costs, and fraud losses flow through the acquirer under your merchant agreement.

Two things reduce the damage and both are cheap in advance. Keep logs long enough to establish a timeline, because an investigation that cannot determine the window of exposure will assume the worst case. And have an incident response plan naming who calls the acquirer, since the delay in that first call is the part of the story you cannot fix later. That is the work our incident response retainers exist for, and it is worth having in place before the day you need it.

When You Should Not Hire Anyone For This

Plenty of ecommerce merchants do not need a consultant. If you sell through Shopify Payments or a similar fully hosted checkout, take no phone orders, store no card numbers anywhere, and process modest volume, SAQ A is a short form and you can complete it honestly in an afternoon with your processor's documentation and an hour spent on your script inventory. Paying someone to fill in that form for you is buying reassurance, not risk reduction.

You also should not start a PCI project because a customer's questionnaire mentioned it in passing. Ask whether they require an Attestation of Compliance as a contract condition, and ask your acquirer what they expect from you. If both answers are modest, do the modest thing.

Where outside help genuinely earns its cost is when scope is contested, when you are being pushed toward SAQ D and believe you should not be, when a re-architecture decision needs someone who has seen how these environments get assessed, or when PCI is arriving alongside SOC 2 and you would rather not evidence the same controls twice. Our PCI DSS readiness work is built for those cases, and the honest first step is scoping. If your card data flow fits on a whiteboard and nothing surprising is on it, you may not need us at all, and we will say so when you get in touch.

In scope for PCI DSS? We scope PCI DSS honestly first, because most SaaS companies are in a smaller SAQ than they were told.

PCI DSS readinessOr talk about a retainer

Before you go

Want the rest of this by email?

If this was useful, I send a few short notes on PCI DSS. Unsubscribe in one click, and replies reach me directly.

From Jacob Masse, principal of traztech. No spam, unsubscribe in one click.

Want a second opinion on where you stand?

We run SOC 2, ISO 27001 and the rest of the compliance stack for startups and SMEs, and the security testing that sits behind it. The first call is free, and we will tell you if you are not ready to start yet.

Book a free call

Track record

Who is actually doing the work

5
Published CVEs, including a CVSS 9.1
76
Controls taken from nothing to a passed SOC 2 Type II
Zero
Exceptions on that Type II report
20+
Penetration testing engagements delivered

Published vulnerability research

Five published CVEs. CVE-2024-45163 (CVSS 9.1) is a flaw in the Mirai botnet itself, which gave defenders a way to shut down attacker infrastructure. CVE-2026-42626 takes HP ENVY 5000 printers offline from any unauthenticated device on the same network.

A SOC 2 Type II built from nothing

At Humera, a venture-backed US security company, Jacob built the compliance programme in-house from nothing: no report, no policies, no documented controls. It ended in a Type II attestation across 76 controls with zero exceptions, on a team of 15.