Marketplace analysis

Analyse Kaufland orders: Find bestsellers and cancellations with AI

Which Kaufland products are ordered most often? Compare unit counts before and after cancellations, using clear date ranges and practical AI prompts.

You can identify the most frequently ordered products on Kaufland by counting the units ordered during your chosen period. For a second ranking, subtract the units of each product that have since been cancelled. Both lists need the same basis: seller account, Kaufland country marketplace, order date and product matching. This shows whether a bestseller still leads after cancellations. The result is an analysis as of retrieval time, not yet net unit sales after returns.

With the Backlane Kaufland integration, you can read and summarise the authorised order data from your Kaufland account in an AI chat. The documentation describes the connection. The practical guide to marketplace analysis with AI explains how these queries work in general. This article focuses specifically on unit counts and cancellations within one Kaufland account. All figures below are entirely fictional.

What counts as an ordered unit on Kaufland?

An “Order Unit” corresponds to one ordered item. If three units of the same offer are ordered, this creates three Order Units. The number of orders alone is therefore not enough for a bestseller ranking. Kaufland describes this structure in its order management documentation.

Count each unique id_order_unit once, then group the units by product. The id_order connects several units to an order. It is useful for checking the result, but it does not replace the unit count.

Fields available for matching products include id_offer and, where present, product.id_product and EANs. id_offer may be missing. Only use your own SKU when its mapping to the offer or product has been confirmed; matching titles alone are not enough. Keep variants and different item conditions separate. The fields are described for GET /order-units in the Kaufland endpoint documentation.

Decide in advance whether you want to group by individual offers or combine products across several of your own offers. Unclear matches belong in a separate list. They must not silently be assigned to a product with a similar name.

Which date defines the analysis period?

For “ordered in September”, use the Order Unit’s creation timestamp, ts_created_iso. A September order that is changed later remains a September order.

The order-date filter is called ts_created_from_iso. By contrast, ts_updated_from_iso selects recently changed units. The query does not provide a corresponding upper order-date limit, so the retrieved results must also be restricted to the required time window. You can find these parameters under GET /order-units in the endpoint documentation.

Define the window with a time zone, for example from 1 September 2026 at 00:00 inclusive to 1 October 2026 at 00:00 exclusive, Europe/Berlin. Convert the API timestamps accordingly. For the lower boundary, retrieve a small overlapping interval and then check the exact timestamp, so that an order placed precisely at midnight is not lost.

The order period and the time of the status snapshot are two separate details: a September order can be cancelled in October. A query on 5 October uses its status at that time. It does not automatically reconstruct the position on 30 September. That historical comparison requires saved earlier snapshots or suitable event data.

How do you handle cancellations, partial cancellations and returns?

For this analysis, a unit with status: cancelled counts as cancelled. The metric ordered units excluding cancellations is calculated as all units ordered in the period minus those currently reported as cancelled. Partial cancellations are handled at the individual Order Unit level. If one of three units in an order is cancelled, two remain; excluding the entire order would be wrong.

The other status values must remain visible. For example, open or need_to_be_sent do not mean that shipping has been completed. Similarly, returned and returned_paid must not simply be relabelled as cancellations. Kaufland lists the available values in the Order Unit schema.

A return concerns goods coming back and has its own process with return units. These can be linked through id_order_unit. Creating a return does not yet prove that goods have arrived or that a return has been accepted. Coverage of the returns interface also depends on the Kaufland returns solution being used. An empty returns list therefore does not by itself prove that no goods came back. See Kaufland’s returns documentation.

A refund concerns money. It may, for example, be issued because of a delivery delay. It does not establish a cancelled unit count; Kaufland describes refunds as a separate operation. Our ranking does not additionally subtract returns or refunds, so it is labelled neither “net unit sales” nor “net revenue”.

How do you generate a complete ranking?

Have all result pages read before the AI selects the top products. Kaufland divides lists using limit and offset; pagination provides information about their size. A first page is not a complete monthly analysis. The pagination documentation explains the principle.

Specify the fulfilment method too. The Order Unit query defaults to fulfilled_by_merchant, meaning fulfilment by the seller. An analysis with that scope must be labelled accordingly. The order management documentation also describes this default. Use this template for the following scenario:

Analyse my specified Kaufland connection for Kaufland.de:
orders from 1 September 2026 inclusive to 1 October 2026
exclusive, both at 00:00 in Europe/Berlin.
Scope: fulfilled by merchant.

Use the creation timestamp of the Order Units.
Read all required pages and check both date boundaries.
Count each unique Order Unit ID once. Load all statuses
so that cancelled units are included in the starting population.

Group by confirmed SKU mapping and item condition.
For each product, show ordered units, units with cancelled status,
units excluding cancellations, cancellation share and rank
before/after subtraction. Cancellation share = cancelled units /
ordered units; do not calculate a share when ordered units are zero.
Show a shared rank when unit counts are equal.

State the current status distribution, retrieval time, filters
and completeness. List product-matching gaps separately.
Show units with missing or unknown statuses separately and mark
the affected unit counts and rankings as provisional.
State that returns have not been additionally subtracted.
Do not show buyer, address or contact data.
Perform read-only queries only.

For a query using your own date range, the library also offers a compact prompt for Kaufland bestsellers and cancellations.

How do cancellations change the bestseller ranking in the example?

In this fictional scenario, the most frequently ordered organiser loses first place after cancellations are subtracted. You sell four office products on Kaufland.de and review September on 5 October. For this example, assume all pages have been read, all product matches are confirmed and every item is new.

Entirely fictional figures; status snapshot: 5 October 2026, 09:00 Europe/Berlin.

Product / SKUOrderedCancelledExcluding cancellationsCancellation shareRank before → after
Organiser / O-110120309025.0%1 → 2
Desk tray / A-22011051054.5%2 → 1
Pen holder / S-3308087210.0%3 → 3
Document box / D-440600600.0%4 → 4

The desk tray leads with 105 units excluding cancellations. For the organiser, the 30 cancellations deserve a closer look. Its 120 ordered units show demand during the selected period, but the table does not yet explain why a quarter were cancelled.

The cancellation share is an analysis metric defined for this exercise. It is not automatically identical to a Kaufland performance metric. Zero is established for the document box because, in the fully checked example, no unit has cancelled status. If a query had failed, the result would instead need to say “data missing”.

What causes can you infer from cancellation reasons?

You can count reported cancellation reasons and derive checks from them. A reason code is the recorded explanation, not yet an independently confirmed root-cause analysis. For example, Kaufland distinguishes NoInventory for unavailable stock from BuyerCancelled for cancellation by the buyer. The meanings are listed in the cancellation reasons documentation.

Examine the cancelled September units of SKU O-110 from
the Kaufland.de selection analysed earlier.
Use the same confirmed product mapping and time boundaries.
If the original analysis is missing, state that.

Group by the reported cancel_reason and show each reason's
count and share of cancellations. List missing reasons as
unknown; do not invent a cause.

Separate reported data, possible explanation and next check.
Do not display buyer data or free-text notes.
Perform read-only queries only.

If NoInventory dominates in the example, the next step would be to check inventory transmission and availability at the time. Today’s stock level alone does not explain September’s cancellations. Suitable historical evidence is needed for a more reliable conclusion.

What should you verify before making a decision?

Focus on completeness, product matching and timing. A ranking is only as reliable as its underlying population. If status values, matches or result pages are missing, the ranking is provisional. An unknown status must not count as “not cancelled”.

Check whether the current Kaufland analysis is traceable.
Confirm the period, time zone, storefront, fulfilment method,
product mapping, page coverage and status snapshot against
the retrieved data. Clearly identify anything that cannot be verified.

Where every status is known, check for each product:
ordered = cancelled + excluding cancellations. Where statuses
are unclear, show the unresolved count separately rather than
assigning it to either group.
Show the three most important limitations for a decision.
Do not calculate revenue or profit from this unit-count analysis.
Perform read-only checks and do not display buyer data.

For your next assortment decision, you now have two separate observations: which products are ordered frequently, and where cancellations change the ranking. Whether this calls for replenishment or a process correction also depends on stock, returns, margin and the causes supported by evidence.

Ask your own data the next question.

Connect your seller accounts with Backlane and use the available data in your AI assistant.

Set up Backlane