Dynamic Pricing and Discount Rules for WooCommerce Security & Risk Analysis

wordpress.org/plugins/woo-conditional-discount-rules-for-checkout

Conditional Discount Rules For WooCommerce Checkout Plugin will help you to create and manage complex discount rules based on your requirement.

800 active installs v2.5.3 PHP 7.2+ WP 5.0+ Updated Aug 21, 2025
bulk-discountcategory-discountdynamic-discountsdynamic-pricingwoocommerce-discount
100
A · Safe
CVEs total1
Unpatched0
Last CVEAug 16, 2023
Safety Verdict

Is Dynamic Pricing and Discount Rules for WooCommerce Safe to Use in 2026?

Generally Safe

Score 100/100

Dynamic Pricing and Discount Rules for WooCommerce has a strong security track record. Known vulnerabilities have been patched promptly.

1 known CVELast CVE: Aug 16, 2023Updated 7mo ago
Risk Assessment

The plugin "woo-conditional-discount-rules-for-checkout" v2.5.3 presents a mixed security posture. On the positive side, it demonstrates good practices regarding SQL queries, utilizing prepared statements exclusively, and a high percentage of properly escaped output. The absence of file operations and external HTTP requests in the static analysis also suggests a more contained footprint. However, a significant concern arises from the substantial attack surface composed of 13 AJAX handlers, all of which lack authentication checks. This creates a broad entry point for potential attacks. While taint analysis shows no critical or high-severity unsanitized flows, the presence of 2 flows with unsanitized paths, even if not immediately exploitable in this analysis, warrants attention.

The vulnerability history shows a single medium-severity CVE in the past, specifically a Cross-Site Request Forgery (CSRF). The fact that this vulnerability is not currently unpatched is a positive sign, but the historical presence of CSRF indicates a pattern that users should be aware of. The plugin's strengths lie in its secure SQL handling and output escaping. The primary weaknesses are the large number of unprotected AJAX endpoints and the existence of unsanitized flows in the taint analysis, despite the absence of critical vulnerabilities from this analysis. The historical CSRF vulnerability, while addressed, serves as a reminder of potential risks.

Key Concerns

  • 13 unprotected AJAX handlers
  • 2 flows with unsanitized paths
  • 1 medium severity CVE historically
  • Bundled outdated library (Freemius v1.0)
Vulnerabilities
1

Dynamic Pricing and Discount Rules for WooCommerce Security Vulnerabilities

CVEs by Year

1 CVE in 2023
2023
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

CVE-2023-40559medium · 4.3Cross-Site Request Forgery (CSRF)

WooCommerce Dynamic Pricing and Discount Rules <= 2.4.0 - Cross-Site Request Forgery

Aug 16, 2023 Patched in 2.4.1 (160d)
Code Analysis
Analyzed Mar 16, 2026

Dynamic Pricing and Discount Rules for WooCommerce Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
6 prepared
Unescaped Output
58
406 escaped
Nonce Checks
22
Capability Checks
1
File Operations
0
External Requests
4
Bundled Libraries
2

Bundled Libraries

Select2Freemius1.0

SQL Query Safety

100% prepared6 total queries

Output Escaping

88% escaped464 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

4 flows2 with unsanitized paths
search_box (admin\partials\class-wc-collection-rules-table.php:376)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
13 unprotected

Dynamic Pricing and Discount Rules for WooCommerce Attack Surface

Entry Points13
Unprotected13

AJAX Handlers 13

authwp_ajax_wdpad_product_dpad_conditions_values_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:162
noprivwp_ajax_wdpad_product_dpad_conditions_values_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:163
authwp_ajax_wdpad_plugin_setup_wizard_submitincludes\class-woocommerce-dynamic-pricing-and-discount.php:165
authwp_ajax_wdpad_product_dpad_conditions_values_product_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:166
noprivwp_ajax_wdpad_product_dpad_conditions_values_product_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:167
authwp_ajax_wdpad_product_dpad_conditions_values_collection_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:173
noprivwp_ajax_wdpad_product_dpad_conditions_values_collection_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:174
authwp_ajax_wdpad_product_dpad_conditions_varible_values_product_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:175
noprivwp_ajax_wdpad_product_dpad_conditions_varible_values_product_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:176
authwp_ajax_wdpad_simple_and_variation_product_list_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:177
authwp_ajax_wdpad_product_category_list_ajaxincludes\class-woocommerce-dynamic-pricing-and-discount.php:178
authwp_ajax_wdpad_product_discount_conditions_sortingincludes\class-woocommerce-dynamic-pricing-and-discount.php:179
authwp_ajax_wdpad_change_status_from_list_sectionincludes\class-woocommerce-dynamic-pricing-and-discount.php:180
WordPress Hooks 36
filterposts_whereadmin\class-woocommerce-dynamic-pricing-and-discount-admin.php:1021
filterposts_whereadmin\class-woocommerce-dynamic-pricing-and-discount-admin.php:1122
filterposts_whereadmin\class-woocommerce-dynamic-pricing-and-discount-admin.php:1255
filterdefault_hidden_columnsadmin\partials\class-wc-collection-rules-table.php:37
filterdefault_hidden_columnsadmin\partials\class-wc-discount-rules-table.php:36
filterplugin_row_metaincludes\class-woocommerce-dynamic-pricing-and-discount.php:75
actioninitincludes\class-woocommerce-dynamic-pricing-and-discount.php:134
actionadmin_enqueue_scriptsincludes\class-woocommerce-dynamic-pricing-and-discount.php:158
actionadmin_enqueue_scriptsincludes\class-woocommerce-dynamic-pricing-and-discount.php:159
actionadmin_menuincludes\class-woocommerce-dynamic-pricing-and-discount.php:160
actionadmin_headincludes\class-woocommerce-dynamic-pricing-and-discount.php:161
actionadmin_initincludes\class-woocommerce-dynamic-pricing-and-discount.php:164
actionadmin_post_dpad_save_general_settingsincludes\class-woocommerce-dynamic-pricing-and-discount.php:181
actionadmin_headincludes\class-woocommerce-dynamic-pricing-and-discount.php:182
actionadmin_initincludes\class-woocommerce-dynamic-pricing-and-discount.php:183
filterset-screen-optionincludes\class-woocommerce-dynamic-pricing-and-discount.php:184
filterhidden_columnsincludes\class-woocommerce-dynamic-pricing-and-discount.php:191
filteradmin_footer_textincludes\class-woocommerce-dynamic-pricing-and-discount.php:200
actionwp_enqueue_scriptsincludes\class-woocommerce-dynamic-pricing-and-discount.php:224
actionwp_enqueue_scriptsincludes\class-woocommerce-dynamic-pricing-and-discount.php:225
actionwoocommerce_cart_totals_get_fees_from_cart_taxesincludes\class-woocommerce-dynamic-pricing-and-discount.php:226
filterwoocommerce_cart_shipping_method_full_labelincludes\class-woocommerce-dynamic-pricing-and-discount.php:234
actionwoocommerce_before_add_to_cart_buttonincludes\class-woocommerce-dynamic-pricing-and-discount.php:241
filterwoocommerce_checkout_fieldsincludes\class-woocommerce-dynamic-pricing-and-discount.php:242
actionwoocommerce_cart_calculate_feesincludes\class-woocommerce-dynamic-pricing-and-discount.php:244
filterhide_account_tabswoo-conditional-discount-rules-for-checkout.php:80
actionafter_account_detailswoo-conditional-discount-rules-for-checkout.php:98
actionhide_billing_and_payments_infowoo-conditional-discount-rules-for-checkout.php:110
actionhide_freemius_powered_bywoo-conditional-discount-rules-for-checkout.php:122
actionbefore_woocommerce_initwoo-conditional-discount-rules-for-checkout.php:125
actionconnect/beforewoo-conditional-discount-rules-for-checkout.php:153
actionconnect/afterwoo-conditional-discount-rules-for-checkout.php:170
actiondeactivated_pluginwoo-conditional-discount-rules-for-checkout.php:173
actionadmin_initwoo-conditional-discount-rules-for-checkout.php:291
actionadmin_noticeswoo-conditional-discount-rules-for-checkout.php:352
actionplugins_loadedwoo-conditional-discount-rules-for-checkout.php:358
Maintenance & Trust

Dynamic Pricing and Discount Rules for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.8.5
Last updatedAug 21, 2025
PHP min version7.2
Downloads49K

Community Trust

Rating80/100
Number of ratings13
Active installs800
Developer Profile

Dynamic Pricing and Discount Rules for WooCommerce Developer Profile

dotsquares

37 plugins · 95K total installs

77
trust score
Avg Security Score
97/100
Avg Patch Time
470 days
View full developer profile
Detection Fingerprints

How We Detect Dynamic Pricing and Discount Rules for WooCommerce

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/woo-conditional-discount-rules-for-checkout/admin/css/wcdrfc-admin.css/wp-content/plugins/woo-conditional-discount-rules-for-checkout/admin/css/wcdrfc-plugin-setup-wizard.css/wp-content/plugins/woo-conditional-discount-rules-for-checkout/admin/js/wcdrfc-admin.js/wp-content/plugins/woo-conditional-discount-rules-for-checkout/freemius/assets/css/style.css
Version Parameters
woo-conditional-discount-rules-for-checkout/admin/css/wcdrfc-admin.css?ver=woo-conditional-discount-rules-for-checkout/admin/css/wcdrfc-plugin-setup-wizard.css?ver=woo-conditional-discount-rules-for-checkout/admin/js/wcdrfc-admin.js?ver=woo-conditional-discount-rules-for-checkout/freemius/assets/css/style.css?ver=

HTML / DOM Fingerprints

CSS Classes
ds-wizard-wrapds-wizard-contentcta-title
Data Attributes
data-wcdrfc-id
JS Globals
wcdrfc_fs
FAQ

Frequently Asked Questions about Dynamic Pricing and Discount Rules for WooCommerce