Peppol e-Invoicing Integration by SendPol Security & Risk Analysis

wordpress.org/plugins/sendpol-for-woocommerce

Connect your WooCommerce store to Peppol effortlessly: send UBL invoices automatically with a plugin and API for any organization. Start for free.

60 active installs v1.2.2 PHP 7.4+ WP 5.9+ Updated Jul 3, 2026
peppolublwoocommerce
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Peppol e-Invoicing Integration by SendPol Safe to Use in 2026?

Generally Safe

Score 100/100

Peppol e-Invoicing Integration by SendPol has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 1mo ago
Risk Assessment

The 'sendpol-for-woocommerce' plugin version 1.1.7 exhibits a generally positive security posture, with no known historical vulnerabilities or critical taint analysis findings. The presence of 22 nonce checks and 21 capability checks across its entry points is a strong indicator of developers implementing basic security measures. However, a notable concern arises from the output escaping metrics, where only 55% of outputs are properly escaped. This leaves a significant portion vulnerable to Cross-Site Scripting (XSS) attacks if user-supplied data is not handled carefully. Additionally, while the majority of SQL queries use prepared statements, the presence of 28 total SQL queries suggests a potential for SQL injection if any of the unstated queries are not properly sanitized or if the 86% figure is based on a limited sample.

While the plugin has a clean vulnerability history, this does not guarantee future security. The primary area requiring attention is the significant number of unescaped outputs, which represents a tangible risk. The attack surface, though composed solely of AJAX handlers, is entirely protected by authentication, which is a positive aspect. The plugin does not bundle libraries, avoiding the risks associated with outdated third-party code. Overall, the plugin demonstrates good security intentions with robust authentication checks, but the lack of comprehensive output escaping is a weakness that could be exploited.

Key Concerns

  • Insufficient output escaping
  • Potential for unescaped SQL queries
Vulnerabilities
None known

Peppol e-Invoicing Integration by SendPol Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Version History

Peppol e-Invoicing Integration by SendPol Release Timeline

v1.2.2Current
v1.2.1
v1.2.0
v1.1.13
v1.1.12
v1.1.11
v1.1.10
v1.1.9
v1.1.8
v1.1.7
v1.1.6
v1.1.5
v1.1.4
v1.1.3
v1.1.2
v1.1.1
v1.1.0
v1.0.10
v1.0.9
v1.0.8
Code Analysis
Analyzed Mar 16, 2026

Peppol e-Invoicing Integration by SendPol Code Analysis

Dangerous Functions
0
Raw SQL Queries
4
24 prepared
Unescaped Output
255
310 escaped
Nonce Checks
22
Capability Checks
21
File Operations
31
External Requests
17
Bundled Libraries
0

SQL Query Safety

86% prepared28 total queries

Output Escaping

55% escaped565 total outputs
Data Flows · Security
2 unsanitized

Data Flow Analysis

10 flows2 with unsanitized paths
handle_document_action (includes\class-sendpol-wc-admin.php:1043)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Peppol e-Invoicing Integration by SendPol Attack Surface

Entry Points6
Unprotected0

AJAX Handlers 6

authwp_ajax_sendpol_test_connectionincludes\class-sendpol-wc-connection-tester.php:27
authwp_ajax_sendpol_get_statusincludes\class-sendpol-wc-connection-tester.php:28
authwp_ajax_sendpol_get_merchant_statusincludes\class-sendpol-wc-connection-tester.php:29
authwp_ajax_sendpol_save_vatincludes\class-sendpol-wc-order-display.php:37
authwp_ajax_sendpol_get_recent_documentsincludes\class-sendpol-wc-remote-status-sync.php:38
authwp_ajax_sendpol_prefetch_documentsincludes\class-sendpol-wc-remote-status-sync.php:39
WordPress Hooks 55
filterwoocommerce_store_api_checkout_fieldsincludes\class-sendpol-wc-blocks.php:23
actionwoocommerce_store_api_checkout_update_order_metaincludes\class-sendpol-wc-blocks.php:24
actionwp_enqueue_scriptsincludes\class-sendpol-wc-blocks.php:25
actionenqueue_block_assetsincludes\class-sendpol-wc-blocks.php:26
filterbulk_actions-edit-shop_orderincludes\class-sendpol-wc-bulk-actions.php:27
filterhandle_bulk_actions-edit-shop_orderincludes\class-sendpol-wc-bulk-actions.php:28
filterbulk_actions-woocommerce_page_wc-ordersincludes\class-sendpol-wc-bulk-actions.php:31
filterhandle_bulk_actions-woocommerce_page_wc-ordersincludes\class-sendpol-wc-bulk-actions.php:32
actionadmin_noticesincludes\class-sendpol-wc-bulk-actions.php:35
actionadmin_post_sendpol_test_connectionincludes\class-sendpol-wc-connection-tester.php:30
filterwoocommerce_order_actionsincludes\class-sendpol-wc-order-display.php:31
actionwoocommerce_order_action_sendpol_resendincludes\class-sendpol-wc-order-display.php:32
actionadmin_post_sendpol_refresh_statusincludes\class-sendpol-wc-order-display.php:35
actionadmin_noticesincludes\class-sendpol-wc-order-display.php:40
actionadmin_noticesincludes\class-sendpol-wc-order-display.php:41
filtermanage_edit-shop_order_columnsincludes\class-sendpol-wc-order-display.php:47
actionmanage_shop_order_posts_custom_columnincludes\class-sendpol-wc-order-display.php:48
filtermanage_woocommerce_page_wc-orders_columnsincludes\class-sendpol-wc-order-display.php:51
actionmanage_woocommerce_page_wc-orders_custom_columnincludes\class-sendpol-wc-order-display.php:52
actionwoocommerce_order_status_completedincludes\class-sendpol-wc-order-handler.php:45
actionwoocommerce_order_status_changedincludes\class-sendpol-wc-order-handler.php:46
actionwoocommerce_order_status_processingincludes\class-sendpol-wc-order-handler.php:47
actionwoocommerce_payment_completeincludes\class-sendpol-wc-order-handler.php:48
actionwoocommerce_order_refundedincludes\class-sendpol-wc-order-handler.php:49
actionwoocommerce_order_partially_refundedincludes\class-sendpol-wc-order-handler.php:50
actionwoocommerce_order_status_cancelledincludes\class-sendpol-wc-order-handler.php:51
actionwoocommerce_order_status_refundedincludes\class-sendpol-wc-order-handler.php:52
actionwoocommerce_update_orderincludes\class-sendpol-wc-order-handler.php:53
actionbefore_delete_postincludes\class-sendpol-wc-order-handler.php:54
actionwp_trash_postincludes\class-sendpol-wc-order-handler.php:55
actionwoocommerce_before_trash_orderincludes\class-sendpol-wc-order-handler.php:56
actionwoocommerce_before_delete_orderincludes\class-sendpol-wc-order-handler.php:57
actionadmin_post_sendpol_resend_orderincludes\class-sendpol-wc-order-handler.php:60
actionadmin_post_sendpol_reprocess_documentincludes\class-sendpol-wc-order-handler.php:61
actionadmin_post_sendpol_send_documentincludes\class-sendpol-wc-order-handler.php:62
actionadmin_post_sendpol_debug_payloadincludes\class-sendpol-wc-order-handler.php:63
actionadmin_post_sendpol_delete_and_resendincludes\class-sendpol-wc-order-handler.php:64
actioninitincludes\class-sendpol-wc-plugin.php:26
actioninitincludes\class-sendpol-wc-plugin.php:27
filterload_textdomain_mofileincludes\class-sendpol-wc-plugin.php:29
actionadd_meta_boxesincludes\class-sendpol-wc-plugin.php:77
filterwoocommerce_checkout_fieldsincludes\class-sendpol-wc-plugin.php:83
actionwoocommerce_checkout_update_order_metaincludes\class-sendpol-wc-plugin.php:84
actionwoocommerce_checkout_create_orderincludes\class-sendpol-wc-plugin.php:85
actionadmin_initincludes\class-sendpol-wc-remote-status-sync.php:33
actionsendpol_wc_sync_nowincludes\class-sendpol-wc-remote-status-sync.php:34
filtercron_schedulesincludes\class-sendpol-wc-remote-status-sync.php:36
actionadmin_post_sendpol_sync_recentincludes\class-sendpol-wc-remote-status-sync.php:37
actionsendpol_retry_orderincludes\class-sendpol-wc-retry-manager.php:30
filtercron_schedulesincludes\class-sendpol-wc-retry-manager.php:33
actionsendpol_cleanup_retriesincludes\class-sendpol-wc-retry-manager.php:36
actionadmin_initincludes\class-sendpol-wc-settings.php:30
actionadmin_initincludes\class-sendpol-wc-settings.php:31
actionplugins_loadedsendpol-for-woocommerce.php:173
filterplugin_row_metasendpol-for-woocommerce.php:202

Scheduled Events 3

sendpol_wc_sync_now
sendpol_cleanup_retries
sendpol_retry_order
Maintenance & Trust

Peppol e-Invoicing Integration by SendPol Maintenance & Trust

Maintenance Signals

WordPress version tested7.0.2
Last updatedJul 3, 2026
PHP min version7.4
Downloads3K

Community Trust

Rating0/100
Number of ratings0
Active installs60
Developer Profile

Peppol e-Invoicing Integration by SendPol Developer Profile

SendPol

1 plugin · 60 total installs

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

How We Detect Peppol e-Invoicing Integration by SendPol

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/sendpol-for-woocommerce/assets/css/sendpol-admin-styles.css/wp-content/plugins/sendpol-for-woocommerce/assets/js/sendpol-admin-scripts.js
Version Parameters
sendpol-for-woocommerce/assets/css/sendpol-admin-styles.css?ver=sendpol-for-woocommerce/assets/js/sendpol-admin-scripts.js?ver=

HTML / DOM Fingerprints

CSS Classes
sendpol-admin-wrapsendpol-wc-admin-settings
HTML Comments
<!-- SendPol settings section --><!-- End SendPol settings section -->
Data Attributes
data-sendpol-api-key-statusdata-sendpol-api-base-url-status
JS Globals
sendpol_wc_admin_params
FAQ

Frequently Asked Questions about Peppol e-Invoicing Integration by SendPol