Klarna for WooCommerce

Grow your business for increased sales and enhanced shopping experiences at no extra costs.

v4.10.7KlarnaUpdated 2026-05-25Added Dec 12, 201730k+ installs46% rating40% support resolved
26
Score
284
Errors
500
Warnings
+0
Change

Category Scores

Security0
Repo91
Performance97
Maintainability13

Top Issues by Category

maintainability520
i18n212
security48
performance2

Issues Details

784 issues found in latest scan

WARNING293
WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$order_line->get_filter_name( 'merchant_data' )".

ERROR204
WordPress.WP.I18n.TextDomainMismatch

Mismatched text domain. Expected 'klarna-payments-for-woocommerce' but got 'klarna-express-checkout'.

WARNING81
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "advanced_woo_discount_rules_get_product_discount_price_from_custom_price".

WARNING41
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$available_gateways".

WARNING37
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound

Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "ComposerAutoloaderInitbff692f4761e9101e7379ef60c9e87a5".

ERROR27
WordPress.Security.EscapeOutput.ExceptionNotEscaped

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$e'.

ERROR25
missing_direct_file_access_protection

PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;

WARNING22
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "get_klarna_customer".

ERROR13
WordPress.Security.EscapeOutput.OutputNotEscaped

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<div id='klarna-identity-button' class='siwk-button' style='{$style}'></div>"'.

WARNING7
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedConstantFound

Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: &quot;KOSM_VERSION&quot;.

ERROR6
WordPress.WP.I18n.MissingArgDomain

Missing $domain parameter in function call to __().

WARNING5
WordPress.Security.NonceVerification.Recommended

Processing form data without nonce verification.

ERROR3
WordPress.DateTime.RestrictedFunctions.date_date

date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.

ERROR2
PluginCheck.CodeAnalysis.Offloading.OffloadedContent

Offloading images, js, css, and other scripts to your servers or any remote service is disallowed.

WARNING2
WordPress.DB.SlowDBQuery.slow_db_query_meta_key

Detected usage of meta_key, possible slow query.

WARNING2
WordPress.DB.SlowDBQuery.slow_db_query_meta_value

Detected usage of meta_value, possible slow query.

WARNING2
WordPress.Security.ValidatedSanitizedInput.InputNotSanitized

Detected usage of a non-sanitized input variable: $_GET[&#039;kec_errors&#039;]

ERROR2
WordPress.WP.AlternativeFunctions.file_system_operations_fwrite

File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fwrite().

WARNING2
WordPressVIPMinimum.Performance.WPQueryParams.PostNotIn_exclude

Using exclusionary parameters, like exclude, in calls to get_posts() should be done with caution, see https://wpvip.com/documentation/performance-improvements-by-removing-usage-of-post__not_in/ for more information.

WARNING1
PluginCheck.CodeAnalysis.DiscouragedFunctions.load_plugin_textdomainFound

load_plugin_textdomain() has been discouraged since WordPress version 4.6. When your plugin is hosted on WordPress.org, you no longer need to manually include this function call for translations under your plugin slug. WordPress will automatically load the translations for you as needed.

WARNING1
WordPress.PHP.DevelopmentFunctions.error_log_debug_backtrace

debug_backtrace() found. Debug code should not normally be used in production.

WARNING1
WordPress.PHP.DevelopmentFunctions.error_log_trigger_error

trigger_error() found. Debug code should not normally be used in production.

WARNING1
WordPress.Security.ValidatedSanitizedInput.MissingUnslash

$_GET[&#039;nonce&#039;] not unslashed before sanitization. Use wp_unslash() or similar

ERROR1
WordPress.WP.I18n.MissingTranslatorsComment

A function call to __() with texts containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.

WARNING1
missing_composer_json_file

The &quot;/vendor&quot; directory using composer exists, but &quot;composer.json&quot; file is missing.

Latest Snapshot

Findings

784

Errors

284

Warnings

500

Score History

First score snapshot

First scan completed Jun 20, 2026

v4.10.7 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2

Jun 20, 2026

v4.10.7

26

Latest

Findings
784
Errors
284
Warnings
500
Plugin Check
2.0.0
Model
2026.06-mvp-static-v2

Related Plugins