Get started
Customization
Troubleshooting
- Embedded checkouts in WooCommerce
- Checkout blocks in WooCommerce
- Error codes
- Compatible plugins
- Known compatibility issues
- Shipping Methods in iframe
- FAQ
- Optimizing your checkout when using an Iframe-based checkout
- Callbacks
- Troubleshooting the checkout flow
- Troubleshooting the Pay for order/Hosted Payment Page flow
- Troubleshooting WooCommerce Subscriptions and KCO
- Klarna Developer logs
- Pending payment orders and held stock
Klarna support information
Additional Klarna plugins
Known compatibility issues
Here we gather the plugins that have known compatibility issues with Klarna Checkout 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.
Please note that with the release of WooCommerce 8.7, the fields required for keeping track of the order origin has been moved to a different action.
Read more in this section.
Abandoned cart function
For the abandoned cart function to work as intended the plugins above need to have access to the customer email. The Klarna Checkout plugin does not retrieve this information from Klarna until the order is placed, leaving the abandon cart function without the neccesary data.
The exception is when the customer don’t have their information pre-filled by Klarna, then the plugins should be able to retrieve the email before the order is finalized.
CartFlows
Error: Customer never reaches order-received page.
Elementor Pro
Error: Oops
Oops
It looks like an important part of the checkout experience failed to load and we are unable to offer you a way to pay right now.
Please refresh the page to try again. If this isn’t the first time you’ve seen this message then there may be a more permanent error and you should contact customer service at Klarna.com.
Solution: Then you need to check if you are using the [woocommerce_checkout]
shortcode in a regular text widget in Elementor? If you do, you need to use the Elementor shortcode widget or their checkout site page. Elementor does not allow you to run shortcodes in the regular text widget for security reasons.
Note: This is a known issue with the Elementor Page Builder, but could also apply to other Page Builders
Error: Something went wrong
Something went wrong.
Sorry for any inconvenience, please try reloading the checkout page or try again later.
If the problem persists it maybe be because you are using an old version of the web browser which is not safe nor compatible with modern web sites. For a smoother checkout experience, please install a newer browser.
Solution: Then you need to check if you are using the [woocommerce_checkout]
shortcode in a regular text widget in Elementor? If you do, you need to use the Elementor shortcode widget or their checkout site page. Elementor does not allow you to run shortcodes in the regular text widget for security reasons.
Note: This is a known issue with the Elementor Page Builder, but could also apply to other Page Builders
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.
– Multistep (PRO-feature)
Germanized’s multistep feature may cause Klarna Checkout to misbehave or be missing altogether as a payment method.
German Market
– Confirm & Place Order Page
If this feature is activated, clicking Buy now to complete the purchase on the checkout page, the customer will be redirected to a confirmation page where 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 on 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.
– Deactivate German Market Hooks
If this feature is activated it will inject an additional checkbox for terms and condition at the top of the frame. It does not break Klarna Checkout but is more a visual error.
– Add-on: Temporary Tax Reduction
Error: Bad value: order_lines[0].total_tax_amount
Solution: Use the standard WooCommerce tax options to add the new temporary tax instead during the temporary time. Klarna has more controls when it comes to order amounts and item lines on the orders to make sure that everything is correct and to be able to show the correct information on invoices sent to your customers, compared to other payment methods. This makes it so changes to these numbers can be very hard to get right. We will always recommend that you use the WooCommerce standard functionality to setup taxes, since changing these numbers can have a big effect on the end result of the calculations that we need to do.
Measurement Price Calculator
Klarna requires that a quantity must be an integer, they don’t allow fractions. This means that if a customer buys e.g. 0.5 meters of a product, this will be intrepreted as 0 meters by Klarna.
To avoid this problem you should configure the Measurement Price Calculator (MPC) to use a different unit of measurement for the calculations as to what is displayed to the customer.
In the case of this example you still wish to have the product measurements displayed in meters, but in the backend you tell MPC to use a smaller unit of measurements, e.g. cm. This way a customer can buy 0.5 meters, as the price is calcluated on 50 (cm) instead of 0.
From the customer’s perspective they will still see the measurements displayed as they are used to with a certain type of product. It is only in the hidden calculations that a different unit of measurement will be used.
Just remember to adjust the price of your calculations to match the smaller unit as well.
Shoppable Social Media Galleries
Shoppable Social Media Galleries
Error: Specific settings in the plugin can change the URL expected when the order is created in WooCommerce and the plugin should respond on the JS validation event to Klarna. In this sequence the KCO plugin listens for a hash-change, but with Shopable Social Media Galleries the URL changes from /#klarna-success=
to /#/klarna-success=
, removing the possibility for the KCO plugin to detect the hash-change.
Smart Coupons
For discounts via coupons and gift cards, particularly if the Klarna Checkout for WooCommerce (KCO) plugin configuration option “Shipping methods in the iframe” is enabled, there are possible issues that need to be managed.
If a coupon or gift card discount lowers the total cart value to zero, it typically doesn’t cause any complications. However, challenges may arise when the shopping cart includes shipping costs and the discount exceeds the total cart value, inclusive of these shipping costs. When the KCO plugin code extracts the shipping cost data, it reflects the initial cost before any discount is applied since there is no mechanism to obtain the cost after the discount. This discrepancy can cause a mismatch between WooCommerce and Klarna total amounts.
If the shop integrates a Transport Management System (TMS), the KCO plugin code sources the shipping cost data directly from Klarna, not from WooCommerce. As a result, any discounts that are applied to the shipping cost may not be reflected in WooCommerce.
Please note these possible issues as you manage discounts and shipping costs within your store.
WooCommerce 8.7 – order attribution origin
With the release of WooCommerce 8.7 (see PR), the fields required for keeping track of the order origin has been moved to a different action, namely woocommerce_checkout_after_customer_details
.
The action hooks that we have in our existing template are, therefore, no longer adequate. So as to not break any existing custom template, we’ve decided not to modify the template file. Instead, you need to add this code snippet:
function kco_add_after_customer_details() {
do_action( 'woocommerce_checkout_after_customer_details' );
}
add_action('kco_wc_after_wrapper', 'kco_add_after_customer_details');
To get the functions exemplified in this section to work you need to add the code to your theme’s functions.php. You can add it as its own plugin or through the Code Snippets plugin, or something similiar of your choice.
WooCommerce AvaTax
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.
WooCommerce Blocks
Error: I can not see the Klarna Checkout payment way in the checkout and I’m using the Checkout block on my Checkout page.
Solution: Klarna Checkout is not yet compatible with the WooCommerce Checkout Block. The solution is to use the Classic shortcode block instead, or use the standard WooCommerce shortcode [woocommerce_checkout]
You can read more about this in the Checkout blocks in WooCommerce section.
WOOF WooCommerce Product Filters
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.
WooCommerce Shipping Calculator
Error: The postal code I entered in the shipping calculator on the cart page doesn’t match the postal code in the Klarna frame, or if I change the postal code in the Klarna frame, the shipping calculator is still showing the old postal code.
Solution: This happens when you’ve enabled the WooCommerce’s shipping calculator option and is showing shipping methods (embedded) in the Klarna frame. You must disable one of them.