Klarna Shipping Service for WooCommerce


Klarna Shipping Service for WooCommerce is an add-on plugin to Klarna Checkout for WooCommerce. This add-on plugin makes it possible to display shipping options in the KCO iframe provided by your TMS.



To install this plugin you first need to have Klarna Checkout for WooCommerce installed. You install this plugin just like any other WordPress plugin:

  1. Download and unzip the latest release zip file.
  2. If you use the WordPress plugin uploader to install this plugin skip to step 4.
  3. Upload the entire plugin directory to your /wp-content/plugins/ directory.
  4. Activate the plugin through the ‘Plugins’ menu in WordPress Administration.


  1. Navigate to --> WooCommerce --> Settings --> Payments and select Klarna Checkout.
  2. Make sure that the checkbox Shipping methods in iframe is ticked in the Shipping settings section.

  3. Save the payment gateway settings.
  4. Navigate to --> WooCommerce --> Settings --> Shipping.
  5. For every shipping zone you have created you need to add Klarna Shipping Service as a new shipping method.

If everything is working fine you should be able to see the shipping methods provided by your TMS in the KCO iframe now:

Shipping data in WooCommerce order

When an order has been created in WooCommerce, the name and price of the selected shipping method in the KCO iframe is added to the order.

The entire shipment data sent from Klarna for the order is also stored in the WooCommerce order, as an order meta field with the name _kco_tms_data. This data is stored as a json object with the following structure:

	"id": "id-1000",
	"name": "Pickup Box",
	"price": 500,
	"tax_amount": 0,
	"tax_rate": 0,
	"preselected": false,
	"shipping_method": "BoxUnreg",
	"delivery_details": {
		"carrier": "instabox",
		"class": "economy",
		"product": {
			"name": "MyPack",
			"identifier": "10"
		"pickup_location": {
			"id": "loc-2",
			"name": "Coop Loet",
			"address": {
				"street_address": "Storgatan 59",
				"postal_code": "97232",
				"city": "Luleu00e5",
				"country": "se"
	"tms_reference": "100"

No booking of shipment & no tracking ID reporting to Klarna

This plugin enables Klarna Shipping Service into Klarna Checkout and your WooCommerce order. However, the actual booking of the shipment in your transport administration system is not handled in this plugin. There are a lot of TMS services available and every system has their own API. That's why we don't to connect to a specific TMS in this plugin.

If you are a customer of Unifaun, Webbshipper or Consignor it can be good to know that we are actively working on creating plugins/integrations to these systems.

Feature roadmap

The Klarna Shipping Service plugin is in active development. New features are introduced on an ongoing basis. The following features are currently planned:
  • More detailed display of shipping meta data (pickup location etc) in WooCommerce order.
  • Creating endpoint for external services to update the WooCommerce order with the tracking ID for the shipment created in the TMS (for those TMS'es that doesn't report this directly to Klarna).
  • Develop plugin to Unifaun and other TMS platforms to offer a better and more complete integration experience.
Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.