Klarna Docs - Delivery tracking

Delivery tracking

If you are a Klarna customer and have a question about your delivery, please contact support@klarna.com. The following guide is only for any developer integrating Klarna on a merchant technical environment.

Klarna integrates with hundreds of carriers worldwide and has exclusive partnerships with some of the largest carriers to provide the best possible post-purchase experience in the Klarna app.

The Klarna app offers a smooth & intuitive way for shoppers to track where their deliveries are throughout the entire shipping lifecycle and get notified when those are in transit, being delivered or are ready for pick up for example.

Users receiving information to pick up their package in a specific store

Alongside with the benefits of offering a smooth post-purchase experience that fuels customer satisfaction and increases customer loyalty, integrating with Klarna to offer such experience in the Klarna app increases successful delivery rate and reduces activity on customer service and support for both merchants and carriers. 

The delivery tracking data used by Klarna is provided by merchants and through Klarna’s proprietary integrations with carriers, delivery updates are communicated to shoppers in the Klarna app via push notifications and dedicated delivery details views.

In this article, we will explore how to share tracking information with Klarna.

Klarna integrates with hundreds of different carriers, from global companies such as DHL, UPS, FedEx, DPD to local nation-wide carriers like OnTrac, Australia Post, Canada Post, La Poste or Correos for example.

You can find the list of all carriers Klarna partners with in this dedicated guide.

If you have specific needs or any questions on Klarna carrier partners, do not hesitate to contact logistics+integration@klarna.com.

While some carriers are recognized globally by their corporate entity brand e.g. DHL or DPD, some use subsidiaries and manage their deliveries of their deliveries might be managed through their systems directly.

If you don't know what specific service(s) the carrier(s) you partner with are using, do not hesitate to contact your carrier directly for more information.

After you have identified which carrier(s) manage(s) your deliveries, you are ready to go with the implementation. Klarna’s API endpoints (create-captureadd-shipping-info) enable you to pass a variety of attributes for one or multiple deliveries, as described below.

Delivery tracking information is provided in a shipping_info array. The array contains objects, one for each distinct delivery. If a single order is shipped with two distinct packages with two distinct tracking numbers, two objects are expected.

Each object must have 2 attributes: 

  • shipping_company referencing the logistics company (a.k.a carrier) managing the delivery. You can find the list of shipping_company values in the second column of the carrier partner table.
  • tracking_number as provided to the consumer to fetch further delivery updates from the carrier's IT system.

Let's take a look at two examples:

"shipping_info": [
    "shipping_company": "dhl-express",
    "tracking_number": "JJII1234567890234234234",

An example of delivery managed by DHL Express with the unique tracking number JJII1234567890234234234

"shipping_info": [
    "shipping_company": "fedex",
    "tracking_number": "941741365856",
    "shipping_company": "ups",
    "tracking_number": "1Z83V552YW00095703",

An example of an order shipped with two distinct deliveries, one managed by FedEx with the unique tracking number 941741365856 and one managed by UPS with the unique tracking number 1Z83V552YW00095703

Deliveries are not trackable:
The products might be shipped using a non-trackable postal product (e.g. a regular letter). In this case you do not need to include any shipping information in your calls to Klarna.

Non-physical products:
For non-physical products, there is no need to include any delivery tracking information as there is not physical delivery.

Own delivery infrastructure (e.g. food delivery services):
If goods are delivered via a proprietary delivery infrastructure (for example own couriers), Klarna will not be able to track your deliveries, so there is no need to send any data.

Goods will be picked up at a store:
There are basically 2 variations of this case:

  1. A shipping company delivers the goods to the store and the shipment can be tracked. In that case it should be treated as a regular delivery.
  2. For “click and collect” or other in-store purchases please do not send any shipment data to Klarna.

To go further
The APIs allow for more optional data to be sent in, which can in some cases make the experience better. Please refer to the API documentation if you want to know more.

Please note that our APIs can not validate the data that you send in when the API call is made. The call will not fail if, for example, the sent tracking number is invalid. The processing of the sent data happens asynchronously in the background. You will therefore need to contact us to validate your integration.

Klarna’s Logistics team is ready to help you in case you have questions regarding doing the integration or to validate your integration.

Please contact logistics+integration@klarna.com and include the following information in your email:

  • As a subject, you can use “Delivery tracking integration: {merchant name}”.
  • As an email body, you can disclose your online store's URL, and your Klarna's eStore ID / merchant ID.
  • If you would like us to validate the integration, please include the order number of one or multiple orders.