Getting started

You can set up Klarna Shipping Service in Klarna Merchant Portal. There, you can input your API credentials so Klarna can show real-time shipping options in the checkout.

To get the Klarna Shipping Service, you can either use one of our existing partnerships or integrate our Shipping API directly .


Before you get started, make sure you have everything you need:

  • Klarna Checkout v3 integration. Click here to learn more about direct or partner integrations.
  • Fallback. You can provide fallback shipping options when you create a Checkout session. We use those options if the Shipping API integration is not responding or otherwise fails. This way, we ensure the user can always complete their purchase.
  • Shipping API integration. We fetch real time shipping options via the Shipping API. We recommend using one of our existing partnerships . You can also integrate our Shipping API directly .
  • Shipping credentials. These consist of a key and an identifier. You can find more information below.

Checkout integration

If you have an existing Checkout v3 integration, you should adjust the following for an ideal integration:

  • You must send fallback shipping options for every KCO session. These are used if the Integrator fails to provide real time data.

  • You should not use the shipping_options_update callback from KCO. If you implement it, you will have to set the shipping fee as an order line in every call.

  • You can set allow_separate_shipping_address to true if you want to offer separate shipping and billing. If this flag is false or not set, the displayed delivery options will be based on the billing address.

  • You can indicate with the shipping_countries list countries you ship to. If it’s not set, it will default to the purchase country only.

  • You can define shipping_attributes at the order level or at the order line level. These are passed on to the Shipping API and can influence the available shipping options.

    • Shipping attributes are weight, dimensions, and tags. Weight and dimensions can only be set at the order line level.
    • Tags can be set at both levels.
      • Example tags: dangerous_goods, out_of_stock, oversize, member.
      • Example use cases: Offer free shipping for gold members, tag the order with member.
  • You can show delivery information after the checkout on the confirmation page.

  • You cannot use our Shipping API flow for digital products (e.g. giftcards which are not shipped physically), as they are currently not supported. If there are no physical items in the cart, we recommend not to show KSS at all. To do this:

    This will suppress the shipping selector.


To activate Klarna Shipping Service, you need to provide us with your shipping credentials in the merchant portal. The shipping credentials consist of an endpoint, an identifier and a key. How you obtain these credentials depends on the type of integration:

  • If you implement the Shipping API directly, you should be able to provide us with these credentials.
  • If you work with one of our partners , like Consignor or Unifaun, you will get the credentials from them.

Step by step

The app in the merchant portal is only available in PLAYGROUND for now. If you have any questions to production, you can contact us at .

You can activate Shipping in the merchant portal in the playground.

  1. Log in to the merchant portal .
  2. Go to the Logistics app. There you can add your credentials and manage other logistics related settings.
  3. When activating the Klarna Shipping Service for the first time, you will have to accept the terms of use.
  4. You can easily add as many credentials as you want to. Please note, you can only have 1 active set of credentials at a time. We will use the active credentials to fetch shipping options via the Shipping API.

You can come back to this app at any time to update your credentials.

Onboarding guides to our partners can be found on our partnership page .