Known compatibility issues
Here we gather the plugins that have known compatibility issues with Klarna Payments for WooCommerce. This document will be updated if/when needed and it’s our goal that the list will shorten rather than expand.
Some of the plugins listed below may have a solution; others unfortunately do not. We always try to make our plugins compatible with as many other plugins and set-ups as possible, but depending on code outside of our control in other plugins, we can not always enable compatibility.
Automate Dropshipping for B2B Dropshipper (WWTech)
When a customer press the Pay button, the payment form information is sent to Klarna. This requires parsing the payment form, and packaging the data in a specific format. This uses WooCommerce standard, and is referred to as seralization.
The Automate Dropshipping plugin injects custom code when the payment form is serialized. This causes an AJAX error because a HTML script tag is inserted into the request as we prepare to send it. This causes the data to be malformed and the result is an “internal server error” on the checkout page.
Germanized & Germanized PRO
– Conclusion of Contract (PRO-feature)
It is a known issue that enabling Conclusion of Contract in Germanized’s Manual contract option will result in Klarna’s confirmation page being missing after a customer completes a purchase in Klarna Checkout and Klarna Payments.
– Confirm & Place Order Page
If this feature is activated, clicking Buy now to complete the purchase on the checkout page will cause the customer to be redirected to a confirmation page. Here they’re asked to accept terms and conditions and make sure their billing and shipping information is correct, before they can proceed to completing the order.
Clicking the button Place binding order to complete the order will redirect the merchant to the checkout page again. This is repeated forever, trapping the customer in a pay-confirm loop.
– Add-on: Temporary Tax Reduction
Bad value: order_lines.total_tax_amount
Solution: Use the standard WooCommerce tax options to add the new temporary tax instead during the temporary time.
– Force to use German Market Checkout Template
If this option is enabled, Klarna Payments won’t be able to display on the checkout page.
When using the Stripe for WooCommerce plugin, enabling Klarna via that plugin and also using our own Klarna Payments for WooCommerce can cause conflicts. The solution here is to only use one of the plugins since the use of two plugins implementing the same payment method is contradictory.
When using the plugin WooCommerce Avatax the Update order function will not work in Klarna Order Management. If you want to update the order you need to handle this manually in both WooCommerce and the Klarna Merchant Portal.
When updating an order
Make sure you turn off the update function On order update in the Klarna Order Management settings before you make any changes to the order in WooCommerce. Then make the same changes to the order in the Klarna Merchant Portal.
When setting an order to Completed
You also need to turn off the update function On order completion in the Klarna Order Management settings before you change the the order status to Completed in WooCommerce. This order status also needs to be handled manually in both WooCommerce and the Klarna Merchant Portal.
Error: I can not see the Klarna Payments payment way in the checkout and I’m using WooCommerce Blocks and their Checkout Design Widget.
Solution: WooCommerce Blocks got a Checkout Design Widget that is causing this as it is ONLY compatible with these payment gateways.
The solution is to use the shortcode widget instead and use the standard WooCommerce shortcode
WOOF WooCommerce Product Filters
Error: For some reason the product filter script runs on the checkout, and because an anchor tag / link is used to produce the 3DS bank authorization form, it causes the checkout to reload.
Solution: Within the plugin, go to Advanced, then scroll down to Init plugin on the next site pages only (this allows you to list the site pages where you want the script to run. Leaving it empty means the script runs on all pages). Enter one URL per row. Click Save changes.