Skip to navigation Skip to main content

Trick-or-Treat Sale 30% off every Pro plan with code

Ends Oct 31 Pick your treatShop

Trick-or-Treat Sale 30% off every Pro plan with code

Ends Oct 31 Pick your treatShop
  • WordPress
    Products
    Smart Cycle DiscountsDiscount automation › TrustLensCustomer trust intel › Cycle AI AIPlain-English campaigns ›
    New pluginComing soon
    Resources & toolsDocs, pricing, support ›
    Smart Cycle Discounts

    Smart Cycle Discounts

    Automate WooCommerce discount campaigns — schedule, target, and measure.

    62%
    Free Pro $59 5 discount types Recurring
    Jump into the page
    How it works Capabilities Promo codes Pricing
    Docs
    Getting started Discount types Scheduling
    Explore Smart Cycle Discounts → Changelog
    TrustLens

    TrustLens

    Customer trust intelligence — score buyers, spot abuse, protect revenue.

    Trust 86
    Free Pro $79 6 segments Abuse detection
    Jump into the page
    How it works Detection Outcomes Pricing
    Docs
    Trust scoring Detection modules Card-testing defense
    Explore TrustLens → Verify a report Changelog

    Cycle AI inside Smart Cycle Discounts

    Describe a sale in plain English — Cycle AI builds the whole campaign.

    “20% off hoodies this weekend”
    Included in Pro Natural language Catalog-aware
    See it work

    Type a sentence, get a ready-to-launch discount campaign that already understands your products, prices, and schedule.

    Live demo How it works
    Meet Cycle AI →

    A new plugin Coming soon

    Something is loading in the lab. Join the list to get the reveal first.

    Notify me on launch →

    Resources & tools

    Everything around the plugins — docs, free tools, and help.

    Learn
    Documentation Pricing & bundle Support
    Free tools
    Discount Calculator Sale Calendar
    Stay current
    SCD changelog TrustLens changelog
    Compare all plans →
    Secure checkout WordPress.org 14-day refund View pricing →
  • Affiliate
    Program
    OverviewHow the program works How it works4 steps from apply to earn Commission details30% · 60-day cookie · recurring
    Get started
    Apply nowOpen Takes ~2 minutes Earnings calculatorEstimate your monthly income FAQPayouts, cookies, renewals
    Resources
    Brand kitLogos, banners, copy, social PlaybookTactics that actually convert FTC disclosureHow to disclose properly Affiliate termsFull program agreement Contact teamOpen the contact form
    Earn 30% recurring on every saleFree to join · 60-day cookie · monthly PayPal payouts Apply now
  • Blog
  • DOCS
    Docs & resources

    Guides, references, and answers for every Webstepper plugin.

    Smart Cycle DiscountsAutomated WooCommerce discount campaigns
    Getting started› Discount types› Cycle AI›
    TrustLensCustomer trust & fraud intelligence
    Trust scoring› Detection modules› Card-testing defense›
    Docs home Guides FAQ Pricing Support
    WordPress tools that solve real problems
  • Contact Us
  • About
    Company

    Our Story

    Founded 2020

    Built by store owners, for store owners. We make WordPress tools that solve real problems.

    Learn more
    Built from experienceTools we use ourselves
    Time is preciousSimple, intuitive UX
    Real supportTalk to the founders
    Legal & contact
    Contact us Privacy policy Terms of service Refund policy
    14-day money-backNo questions asked
Popular requests
  • smart cycle discounts
  • trustlens
  • chargeback protection
GET STARTED

Glossary

1
  • TrustLens Glossary

Detection Modules

10
  • Store Trust Network
  • Card Testing Defense
  • Chargeback Tracking
  • Shipping Anomalies
  • Linked Accounts Detection
  • Category Aware Risk
  • Coupon Abuse Detection
  • Order Pattern Analysis
  • Return Abuse Detection
  • Modules Overview

Card Testing Defense

9
  • Attack History
  • Allowlists
  • Geo Diversity
  • Auto Escalation
  • Fingerprinting
  • VIP Bypass
  • Panic Button
  • Velocity Thresholds
  • Overview

Chargeback Monitor

7
  • Ratio Email Alerts
  • Dispute Evidence Report
  • Chargeback Monitor
  • Manual Dispute Entry
  • Stripe WooPayments Ingestion
  • Card Network Thresholds
  • Chargeback Ratio Alert

Customer Management

7
  • Admin Notes
  • Checkout Enforcement
  • Order Trust Column
  • Bulk Actions
  • Blocking and Allowlisting
  • Customer Detail Profile
  • Customer List

Automation

7
  • Async Dispatch Retries
  • Webhooks and HMAC
  • Rule Inspector
  • Actions Reference
  • Conditions Reference
  • Triggers Reference
  • Automation Overview

Trust Scoring

5
  • Account Age Loyalty Bonus
  • Signals Explained
  • Six Customer Segments
  • The 0–100 Score
  • How Trust Scoring Works
View Categories
  • Home
  • Docs
  • Trustlens
  • Card Testing Defense
  • Fingerprinting

Fingerprinting

5 min read

0:00 / 6:52
  • View as Markdown Open this page as plain Markdown (opens in a new tab)
  • Open in ChatGPT Ask questions about this page (opens in a new tab)
  • Open in Claude Ask questions about this page (opens in a new tab)
  • Open in Google AI Studio Ask questions about this page (Google account required) (opens in a new tab)

Device fingerprinting is how TrustLens identifies the actor behind a checkout request. Card-testing botnets routinely rotate IP addresses to evade simple IP-based rate limits, but they have a much harder time rotating the full set of browser and device characteristics that make up a fingerprint. This page describes what TrustLens fingerprints, why those specific signals, and how the Pro tier extends the fingerprint with an additional layer.


What’s in the Fingerprint #

Every checkout attempt carries two fingerprints.

Browser fingerprint #

A small script on the cart and checkout pages reads these signals in the shopper’s browser:

Signal Why Useful
Canvas rendering A small rendered canvas differs between browser/OS combinations due to font and rendering differences
Screen Width, height, pixel ratio, and color depth — headless bots often have unusual values
Timezone The browser’s time zone — often mismatched on proxied bots
Language The browser’s preferred language
Platform The operating system the browser reports
WebGL vendor and renderer The graphics hardware and driver, which is hard to fake consistently

The script hashes these signals in the browser with SHA-256 and sends only the resulting 22-character fingerprint with the checkout (as a hidden field on the classic checkout, or a request header on the Blocks checkout). The raw values never leave the browser.

Server fingerprint #

On the server, TrustLens also builds a fingerprint from the request’s IP address, User-Agent, and Accept-Language headers, hashed with SHA-256. It is used on its own when the browser sends no fingerprint (JavaScript blocked, or a bot posting straight to the checkout endpoint), and it is always recorded alongside the browser fingerprint so that a bot rotating its browser fingerprint still accumulates declines against the server one.


Pro: The 12-Font Signal #

Pro adds a seventh browser signal: a 12-font detection check. The script measures how 12 common fonts render against the browser’s default fonts and records which ones are installed, producing a per-system signature.

Why fonts: card-testing botnets are usually run on compromised hosts (residential proxies, virtual machines, hijacked browsers) where the attacker has limited control over installed software. The font set on each compromised host is whatever happens to be there — and replicating a target font set consistently across many botnet nodes is significantly harder than spoofing User-Agent strings.

The 12-font signal makes fingerprint collisions across botnet nodes much rarer, which means lockouts catch more attempts before the bot has time to switch fingerprints. It’s added while Pro is licensed and Card-Testing Defense is on.


How Stable Is the Fingerprint? #

A legitimate customer’s fingerprint is stable across multiple checkout attempts in the same session — same browser, same window, same device. It can change when:

  • The customer switches browsers (Chrome → Firefox) — different canvas rendering, platform, and WebGL values
  • The customer switches devices (laptop → phone) — every signal changes
  • The customer moves the window to a different monitor — different screen values
  • Browser update changes rendering — slightly different canvas output
  • Operating system update — possibly different font set (Pro)

The server fingerprint changes whenever the IP address changes, for example when a phone moves between Wi-Fi and mobile data. For card-testing-defense purposes, this stability is sufficient. Legitimate customers rarely change devices mid-checkout-burst; attackers can change User-Agent strings but struggle to fake the full fingerprint consistently.


What the Fingerprint Is Used For #

Use Description
Velocity counters Counts declines and submissions per fingerprint over rolling 60-second and 1-hour windows
Lockout enforcement Holds the offending fingerprint for 90 seconds, escalating to 15 minutes, 1 hour, and 24 hours for repeat offenders
Customer scoring A customer who submitted checkout from a device later caught card testing gets a −30 signal (“Linked to N device fingerprint(s) involved in a card-testing attack”), for as long as those velocity events are retained
24-hour intelligence (Pro) Top 10 attacking fingerprints displayed for forensic review
Allowlists (Pro) The fingerprint allowlist accepts exact fingerprint hashes

The card-testing fingerprint is separate from Linked Accounts. Linked Accounts records its own hashed identifiers per customer, and a shared IP or browser there never links two accounts on its own.


Privacy #

The browser signals are hashed in the shopper’s browser and the server signals are hashed on arrival; the fingerprint tables store only hashes. Two things are worth knowing:

  • Fingerprints aren’t keyed per store. They are plain SHA-256 hashes, so the same browser produces the same fingerprint on any TrustLens store. TrustLens doesn’t send card-testing fingerprints off your site.
  • Velocity events keep the IP address. Each recorded submission keeps the request’s IP address and, when the checkout carried one, the customer’s email hash. Velocity events are deleted after the retention window (48 hours by default, 24–168 hours configurable).

Card-testing device fingerprints aren’t tied to a customer’s email, so they aren’t part of WordPress’s personal-data export and erasure tools; the velocity events that link a customer to a device expire with the retention window.


Fingerprint Collisions #

It’s possible for two different devices to produce the same fingerprint — two users on the same browser version, same OS, same screen, same graphics hardware. Collisions are more likely on the server fingerprint, which is shared by everyone behind one office network or carrier address running the same browser. In practice:

  • Free browser fingerprint (6 signals): collisions are uncommon but occur, especially among customers on identical setups (e.g. the same iPhone model)
  • Pro browser fingerprint (7 signals including 12-font): collisions are rare

The defense design accounts for occasional collisions:

  • The first lockout is short (90 seconds), so a colliding legitimate customer is delayed, not blocked; longer lockouts need repeat offenses
  • Any held fingerprint can be released from the Targeted now list, which also clears its strikes and taint
  • VIP bypass insulates established customers from collision effects
  • Allowlisting (Pro) provides an explicit override

Fingerprint Visibility #

The fingerprint hash is visible in several admin contexts:

  • Card-Testing Defense → Targeted now — each held fingerprint with its strike count, when it’s held until, and a Release button
  • 24-hour intelligence (Pro) — top 10 attacking fingerprints with decline counts
  • CSV export (Pro) — the fingerprint hash on every velocity event
  • Customer Detail — no hash, but the card-testing signal on the score when one of the customer’s checkout devices was caught

The hash is opaque — there’s no way to decode it back to the raw inputs.


Fingerprint Inputs Are Not Filterable #

The set of signals that goes into a fingerprint is fixed by the plugin and is not exposed as a filter — this is deliberate. Changing the input set would invalidate all existing fingerprint state (lockouts, strikes, attack history), because previously-stored hashes were computed against the old inputs. If you need to react to card-testing detection in custom code, hook the trustlens/card_testing/attack_detected action instead (see the Hooks & Filters Reference), which fires with the fingerprint hash and gate context whenever a fingerprint is newly targeted.


What Fingerprints Don’t Do #

Worth being explicit about what the fingerprint is not:

  • Not biometric. No fingerprint reader, no facial recognition. “Fingerprint” here is metaphor for device-and-browser identity.
  • Not tracking. The fingerprint isn’t used to track customers across the web — it only matches against requests to your store.
  • Not credential-based. The customer doesn’t need to be logged in. Fingerprints work for guest checkout.
  • Not deterministic identity. Two customers can share a fingerprint if they have very similar setups — the fingerprint is one signal among many, not a sole identity proof.
Updated on October 18, 2026

What are your Feelings

  • Happy
  • Normal
  • Sad

Share This Article :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Auto EscalationVIP Bypass
Table of Contents
  • What's in the Fingerprint
    • Browser fingerprint
    • Server fingerprint
  • Pro: The 12-Font Signal
  • How Stable Is the Fingerprint?
  • What the Fingerprint Is Used For
  • Privacy
  • Fingerprint Collisions
  • Fingerprint Visibility
  • Fingerprint Inputs Are Not Filterable
  • What Fingerprints Don't Do
Newsletter

Insights that grow your business

Join thousands of WooCommerce store owners who get actionable tips, plugin updates, and industry news every week — plus 10% off either of our plugins as a welcome.

We respect your privacy. Unsubscribe at any time.

10% off welcome gift — A code for either plugin, on us
Weekly updates — Fresh content every Tuesday
Exclusive content — Tips you won't find on our blog
Early access — Be first to know about new plugins
Webstepper
Weekly WooCommerce Tips
Just now
This week: 5 proven strategies to boost your average order value using smart discount campaigns...
10% off inside
Webstepper

Tools for store owners who'd rather grow than grind.

Simple, powerful plugins that help WooCommerce store owners sell more — without the learning curve.

Products

  • Smart Cycle Discounts
  • TrustLens
  • Discount Calculator
  • Sale Calendar

Company

  • About Us
  • Blog
  • Contact
  • Affiliates
  • Log In

Resources

  • Help Center
  • Guides
  • Verify a report
  • Affiliate Program
  • Become a Partner

Questions? We actually answer.

Real humans, real help. No bots, no runaround. Usually within a few hours.

Get in touch
Operated by Setmood LLC · 7901 4th St N, St Petersburg, FL 33702 · United States

© 2026 Webstepper. All rights reserved.

Privacy Terms Refunds
Visa Mastercard PayPal Apple Pay Google Pay & more

Halloween sale · ends Oct 31

Trick or treat?

Pick a door. Either way you leave with 30% off Pro.

Your treat

30% off

--days --hrs --min --sec
Claim it

Paste the code at checkout.

Renewals keep the discount · 14-day money-back guarantee

Halloween sale

That's a wrap for Halloween.

The sale ended at midnight. Both plugins are still free on WordPress.org, and Pro plans start at $59/year.

See plans
  • WordPress
    Back
    Products
    Smart Cycle DiscountsDiscount automation › TrustLensCustomer trust intel › Cycle AI AIPlain-English campaigns ›
    New pluginComing soon
    Resources & toolsDocs, pricing, support ›
    Smart Cycle Discounts

    Smart Cycle Discounts

    Automate WooCommerce discount campaigns — schedule, target, and measure.

    62%
    Free Pro $59 5 discount types Recurring
    Jump into the page
    How it works Capabilities Promo codes Pricing
    Docs
    Getting started Discount types Scheduling
    Explore Smart Cycle Discounts → Changelog
    TrustLens

    TrustLens

    Customer trust intelligence — score buyers, spot abuse, protect revenue.

    Trust 86
    Free Pro $79 6 segments Abuse detection
    Jump into the page
    How it works Detection Outcomes Pricing
    Docs
    Trust scoring Detection modules Card-testing defense
    Explore TrustLens → Verify a report Changelog

    Cycle AI inside Smart Cycle Discounts

    Describe a sale in plain English — Cycle AI builds the whole campaign.

    “20% off hoodies this weekend”
    Included in Pro Natural language Catalog-aware
    See it work

    Type a sentence, get a ready-to-launch discount campaign that already understands your products, prices, and schedule.

    Live demo How it works
    Meet Cycle AI →

    A new plugin Coming soon

    Something is loading in the lab. Join the list to get the reveal first.

    Notify me on launch →

    Resources & tools

    Everything around the plugins — docs, free tools, and help.

    Learn
    Documentation Pricing & bundle Support
    Free tools
    Discount Calculator Sale Calendar
    Stay current
    SCD changelog TrustLens changelog
    Compare all plans →
    Secure checkout WordPress.org 14-day refund View pricing →
  • Affiliate
    Back
    Program
    OverviewHow the program works How it works4 steps from apply to earn Commission details30% · 60-day cookie · recurring
    Get started
    Apply nowOpen Takes ~2 minutes Earnings calculatorEstimate your monthly income FAQPayouts, cookies, renewals
    Resources
    Brand kitLogos, banners, copy, social PlaybookTactics that actually convert FTC disclosureHow to disclose properly Affiliate termsFull program agreement Contact teamOpen the contact form
    Earn 30% recurring on every saleFree to join · 60-day cookie · monthly PayPal payouts Apply now
  • Blog
  • DOCS
    Back
    Docs & resources

    Guides, references, and answers for every Webstepper plugin.

    Smart Cycle DiscountsAutomated WooCommerce discount campaigns
    Getting started› Discount types› Cycle AI›
    TrustLensCustomer trust & fraud intelligence
    Trust scoring› Detection modules› Card-testing defense›
    Docs home Guides FAQ Pricing Support
    WordPress tools that solve real problems
  • Contact Us
  • About
    Back
    Company

    Our Story

    Founded 2020

    Built by store owners, for store owners. We make WordPress tools that solve real problems.

    Learn more
    Built from experienceTools we use ourselves
    Time is preciousSimple, intuitive UX
    Real supportTalk to the founders
    Legal & contact
    Contact us Privacy policy Terms of service Refund policy
    14-day money-backNo questions asked
We use cookies to improve your experience on our website. By browsing this website, you agree to our use of cookies.
More info More info Accept