Purchase Orders for WooCommerce Security & Risk Analysis

wordpress.org/plugins/purchase-orders-for-woocommerce

Adds a Purchase Order payment method to WooCommerce.

1K active installs v1.12.2 PHP 7.4+ WP 4.8+ Updated Nov 11, 2025
payment-gatewaypurchase-orderwoocommerce
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Purchase Orders for WooCommerce Safe to Use in 2026?

Generally Safe

Score 100/100

Purchase Orders for WooCommerce has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 4mo ago
Risk Assessment

The "purchase-orders-for-woocommerce" plugin v1.12.2 demonstrates a strong security posture based on the provided static analysis. The absence of any identified AJAX handlers, REST API routes, shortcodes, or cron events significantly limits its attack surface. Furthermore, the code signals indicate no dangerous functions were used, all SQL queries are properly prepared, and no file operations or external HTTP requests were detected. The fact that 68% of output is properly escaped suggests a good practice, though a portion remains unescaped.

While the lack of known CVEs and vulnerability history is positive, the static analysis does reveal a few areas for improvement. The 0 nonce checks and 0 capability checks are concerning, especially since there are no identified entry points *currently* that would necessitate them. However, this could represent a future risk if entry points are added without proper security measures. The 32% of unescaped output, while not critical based on the limited attack surface, represents a potential weakness that could be exploited if an attacker finds a way to inject malicious data into these outputs.

Overall, the plugin is in good health with no critical or high-risk issues identified in the static analysis or historical data. The strengths lie in its limited attack surface, secure SQL handling, and avoidance of dangerous functions. The main weakness is the absence of nonce and capability checks, which is a general security best practice to implement proactively, and the portion of unescaped output.

Key Concerns

  • Unescaped output (32%)
  • No nonce checks
  • No capability checks
Vulnerabilities
None known

Purchase Orders for WooCommerce Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 16, 2026

Purchase Orders for WooCommerce Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
0 prepared
Unescaped Output
25
53 escaped
Nonce Checks
0
Capability Checks
0
File Operations
0
External Requests
0
Bundled Libraries
0

Output Escaping

68% escaped78 total outputs
Attack Surface

Purchase Orders for WooCommerce Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 10
actionplugins_loadedclass-purchase-order-gateway.php:16
actionwoocommerce_email_after_order_tableclass-purchase-order-gateway.php:115
filterwoocommerce_email_order_meta_fieldsclass-purchase-order-gateway.php:116
actionwoocommerce_admin_order_data_after_billing_addressclass-purchase-order-gateway.php:119
actionwoocommerce_thankyouclass-purchase-order-gateway.php:120
filterwc_stripe_validate_checkout_required_fieldsclass-purchase-order-gateway.php:123
actionbefore_woocommerce_initpurchase-orders-for-woocommerce.php:43
actionplugins_loadedpurchase-orders-for-woocommerce.php:64
filterwoocommerce_payment_gatewayspurchase-orders-for-woocommerce.php:99
actionwoocommerce_view_orderpurchase-orders-for-woocommerce.php:167
Maintenance & Trust

Purchase Orders for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.8.5
Last updatedNov 11, 2025
PHP min version7.4
Downloads30K

Community Trust

Rating84/100
Number of ratings5
Active installs1K
Developer Profile

Purchase Orders for WooCommerce Developer Profile

mcgregormedia

2 plugins · 5K total installs

94
trust score
Avg Security Score
100/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Purchase Orders 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/purchase-orders-for-woocommerce/assets/css/purchase-order-gateway.css/wp-content/plugins/purchase-orders-for-woocommerce/assets/js/purchase-order-gateway.js
Script Paths
/wp-content/plugins/purchase-orders-for-woocommerce/assets/js/purchase-order-gateway.js
Version Parameters
purchase-orders-for-woocommerce/assets/css/purchase-order-gateway.css?ver=purchase-orders-for-woocommerce/assets/js/purchase-order-gateway.js?ver=

HTML / DOM Fingerprints

CSS Classes
woocommerce-purchase-order-gateway
HTML Comments
Came directly here? Vamoose.Added compatibilityAdded functionAdded function+14 more
Data Attributes
data-po_number_requireddata-company_name_requireddata-address_1_requireddata-address_2_requireddata-address_3_requireddata-town_required+3 more
Shortcode Output
<h2>Purchase order information</h2><p><strong>Purchase order number:</strong><strong>Invoice address:</strong></p>
FAQ

Frequently Asked Questions about Purchase Orders for WooCommerce