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
  • Automation
  • Automation Overview

Automation Overview

8 min read

0:00 / 8:26
  • 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)

The Automation Rules engine is the Pro feature that lets TrustLens act on what it detects. Rules are trigger-condition-action sequences — “when X happens, if Y is true, then do Z” — that fire when customer risk changes, orders are placed, refunds happen, disputes are recorded, linked accounts are detected, card-testing attacks or failed browser challenges hit checkout, shipping anomalies are spotted, or a customer is blocked, unblocked or allowlisted. Without the engine, TrustLens surfaces risk for human moderation; with it, you can build closed-loop workflows that act in seconds without admin attention.

Location: TrustLens → Automation. The engine is off by default — turn on the Engine running switch in the page header and click Save before any rule can fire.


The Rule Shape #

Every rule has three sections:

Section What It Does
Trigger The event that wakes the rule up. One trigger per rule. Examples: “Order Placed,” “Chargeback Filed,” “Score Updated.”
Conditions Optional filters that must all be true for the rule to act. Multiple conditions combine with AND only — there is no OR. Leave the list empty and the rule fires on every trigger event. Examples: “trust_score < 30,” “total_disputes >= 2.”
Action What the rule does when it fires. Each rule has exactly one action, plus one optional text value (block reason, note text, tag name, email address or webhook URL). To do two things, create two rules with the same trigger and conditions. Examples: “Block Customer,” “Send Email Notification,” “Send Webhook.”

Rules can be enabled or disabled independently with the Rule is active switch in the rule editor. Disabled rules aren’t evaluated at all, so they leave nothing in the log.


What’s Available #

Component Count Details
Triggers 16 See Triggers Reference
Condition fields 46 (25 customer, 6 order-only, 15 refund-only) See Conditions Reference
Actions 11 (8 for any trigger, 3 for order triggers only) See Actions Reference

Example Rule #

“When a chargeback is filed against a customer who has 2+ disputes and a trust score under 30, block the customer and alert the team.”

Because a rule has one action, this takes two rules with the same trigger and conditions:

  • Trigger: Chargeback Filed
  • Conditions: total_disputes >= 2 AND trust_score < 30
  • Rule 1 action: Block Customer
  • Rule 2 action: Send Webhook to a Zapier or Make URL that posts the alert into your #fraud-alerts Slack channel

Don’t point Send Webhook straight at a Slack incoming-webhook URL: Slack requires a text field that the TrustLens payload doesn’t have, so Slack rejects the request. Route it through Zapier, Make or a small endpoint that reformats the payload. See Webhooks and HMAC.

This is a typical “tighten the noose” rule — escalate enforcement automatically when a known-risky customer crosses a new threshold.


How Rules Run #

When a trigger event fires, the automation engine:

  1. Collects all enabled rules with that trigger
  2. For each rule, evaluates the conditions against the customer’s TrustLens record (plus the order on order triggers, and the refund on Refund Processed). The first condition that fails stops the rule, and a SKIP row records which one
  3. If all conditions pass, runs the rule’s action straight away, in the same request. Customer-level actions are limited by a one-hour cooldown per rule per customer (see below)
  4. The one exception is Send Webhook: delivery is queued with Action Scheduler and retried up to 3 times (60s / 120s / 240s) on failure
  5. From 1.3.23, Hold Order, Cancel Order and Require Verification on an order that hasn’t been paid yet (an Order Placed rule) wait for the payment instead of changing the status at once — see Actions Reference
  6. Every result is logged for inspection

Only webhook delivery is asynchronous. Every other action finishes inside the request that fired the trigger, so a rule on Order Placed acts during checkout.


The Save-Time Validator #

When you save a rule, TrustLens validates it before accepting:

  • Known values — the trigger, action, every condition field and every operator must be one TrustLens recognises
  • Order-only pieces — Hold Order, Cancel Order, Require Verification and the 6 order fields need an order trigger (Order Placed, Order Completed, Refund Processed, Dispute Recorded); the 15 refund fields need Refund Processed
  • Operator and value checks — text, segment and yes/no fields accept only = and !=; values must be possible for the field (a trust score or return rate between 0 and 100, counts of 0 or more)
  • Unsatisfiability check — can the conditions possibly be true together? A rule with trust_score > 80 AND trust_score < 20 is rejected as unsatisfiable, as are combinations the data model rules out (e.g. total_orders = 0 with total_order_value > 0)
  • Trigger-state contradictions — conditions that contradict what the trigger guarantees (e.g. a Customer Blocked rule conditioned on is_blocked = 0) are rejected
  • Incomplete actions — Send Webhook needs a valid URL, Add Tag and Remove Tag need a tag name, and Send Email’s value must be a valid address if you fill it in

Invalid rules are rejected at save time with a specific error message. This prevents the most common failure mode of automation engines: silently-broken rules that never fire.


The Rule Inspector #

Click a rule in the list on the Automation page to open its inspector:

  • A When → If → Then summary of the rule
  • Last 7 days: times fired, succeeded, errors, skipped, average execution time, plus a 14-day sparkline
  • Recent runs: the latest 10 attempts, each with time, action, order number, customer and an OK / ERR / SKIP / QUEUED badge
  • SKIP and ERR rows show the reason: “Cooldown active,” “Condition not met: trust_score > 50”

This is the answer to the perennial question “why didn’t my rule fire?” — you can see exactly which condition rejected the event. See Rule Inspector.


Cooldowns #

Customer-level actions have a fixed cooldown: the same rule fires at most once per hour for the same customer. Further matches inside that hour are logged as SKIP with “Cooldown active.” This:

  • Prevents alert spam when a customer triggers a rule repeatedly
  • Rate-limits emails and webhook calls
  • Stops an action that re-triggers its own rule (e.g. Block Customer on a Customer Blocked rule) from looping

There is no per-rule cooldown field in the rule editor. The order actions (Hold Order, Cancel Order, Require Verification, and Flag for Review on an order trigger) have no cooldown. If an action errors, its cooldown is released so the next event can try again. Developers can change the window — or set it to 0 to disable it — with the trustlens/automation/rule_cooldown filter, which receives the rule.


Logging #

Every rule evaluation and action is written to the automation log:

  • Rule ID and name, trigger, action, customer hash, order ID
  • Status: ok, error, skipped (with the reason) or queued (webhook waiting for delivery, or a hold waiting for payment)
  • Execution time in milliseconds and the error message on failures
  • For webhooks, the final result after retries — intermediate failed attempts aren’t logged separately

There’s no separate log screen: the Rule Inspector shows each rule’s latest 10 runs and 7-day totals, and non-skipped runs also appear in the customer’s Recent activity. The full log lives in the {prefix}trustlens_automation_logs table. Rows older than 90 days are purged daily; developers can change the window (7–365 days) with the trustlens/automation/retention_days filter.


Common Rule Patterns #

  • Escalation: Segment Changed + segment = critical → Send Email; a second rule on Order Placed + segment = critical → Hold Order
  • Block-on-dispute: Chargeback Filed + trust_score < 30 → Block Customer
  • VIP tagging: Order Placed + segment = vip → Add Tag (tags the customer record, not the order)
  • Linked-account warning: Linked Accounts Detected + linked_accounts ≥ 3 → Send Webhook to a Zapier or Make URL that posts to Slack
  • Coupon abuse mitigation: Order Placed + coupon_then_refund ≥ 2 → Cancel Order (from 1.3.23 this waits for the payment: an unpaid order is cancelled, a paid one is held with a note)
  • Card-testing follow-up: Card Testing Attack → Send Email Notification to your ops lead (fires only when the attempt carried a billing email)
  • High-value monitoring: Order Placed + order_total > 1000 + segment != vip → Flag for Review (on an order trigger this flags the order)

Segment values are lowercase (vip, trusted, normal, caution, risk, critical) and matched exactly.


Engine Performance #

Rule evaluation is fast — typically < 5ms per rule per event. Most triggers evaluate dozens of rules without measurable impact on the triggering event’s latency. Webhook delivery is queued, so a slow receiver doesn’t slow down the event flow; the other actions run inline and are quick database or status updates (Send Email is as fast as your mail setup).

Stores running 50+ automation rules see no notable performance impact. The engine scales beyond that, but at some point you should think about whether your rule set has consolidation opportunities.


Disabling Automation #

To pause the entire engine: turn off Engine running in the Automation page header and click Save. While paused:

  • No triggers are evaluated and nothing is logged
  • No actions fire
  • Existing rules remain saved
  • Webhooks already queued still deliver, and holds already waiting for payment are still applied
  • Re-enabling resumes from the next trigger event

Pausing is useful during major operational changes (migrations, new gateway integrations) where rule actions might produce noise.

Updated on October 18, 2026

What are your Feelings

  • Happy
  • Normal
  • Sad

Share This Article :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Triggers ReferenceAsync Dispatch Retries
Table of Contents
  • The Rule Shape
  • What's Available
  • Example Rule
  • How Rules Run
  • The Save-Time Validator
  • The Rule Inspector
  • Cooldowns
  • Logging
  • Common Rule Patterns
  • Engine Performance
  • Disabling Automation
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