# Kaufland Marketplace Seller API > HTTP interface to the Kaufland Global Marketplace for sellers and technology partners. It covers > product data, inventory, orders, invoices, returns, tickets, reports and vouchers, through either > a REST API (version 2) or a bulk file interface (CSV and XML). Production REST endpoints live under `https://sellerapi.kaufland.com/v2/` and require HTTPS; the Playground is a separate host, described further down. There is no anonymous access: every request is authenticated with a `Client Key` (32 hexadecimal characters) and signed with a `Secret Key` (64 characters), both issued per seller account. Lost keys cannot be recovered and must be regenerated. Every request must send five headers: `Accept: application/json`, `Shop-Client-Key`, `Shop-Timestamp` (current Unix time in seconds), `Shop-Signature`, and a `User-Agent`, which must be the name of the software solution for technology partners or the literal string `Inhouse_development` for a seller's own custom integration. `POST` and `PATCH` additionally require `Content-Type: application/json`. The timestamp must be within 5 minutes of server time in either direction or the request is rejected. The signature is an SHA-256 HMAC keyed with the Secret Key over four values joined by newlines: ``` METHOD\nFULL_URI\nBODY\nTIMESTAMP ``` The digest is transmitted as lowercase hexadecimal, 64 characters. `FULL_URI` is the absolute URI including scheme, host and query string, exactly as sent, not just the path. Omitting the query string is the most common cause of a rejected signature. `BODY` is the empty string when there is none. Technology partners, meaning software providers integrating on behalf of multiple sellers, authenticate with two credential pairs at once rather than one. The seller's keys still populate `Shop-Client-Key` and `Shop-Signature`, identifying which seller the call acts for. The partner's own keys populate two additional required headers, `Shop-Partner-Client-Key` and `Shop-Partner-Signature`. Both signatures cover the identical canonical string; only the key differs, so a partner integration computes the same HMAC twice, once with the seller Secret Key and once with the partner Secret Key. Partner credentials are issued after registering a technology partner account, separately from the seller account credentials, and both are needed before any partner call will succeed. Successful responses are JSON wrapped in a `data` envelope, either a single object or an array. Only `GET` returns a body. Collections are paged with the `limit` and `offset` query parameters and carry a `pagination` object with `offset`, `limit` and `total`; defaults and maximums for `limit` are per endpoint. Some endpoints accept an `embedded` parameter taking a comma-separated list of related resources to inline. Country-specific endpoints take a `storefront` parameter, matched case-insensitively, and language-specific ones take a `locale` parameter such as `de-DE`. Allowed values are returned by `GET /v2/info/storefront` and `GET /v2/info/locale`. Query those rather than hard-coding a list, since the set of storefronts grows as the marketplace expands. A request is rejected unless the storefront is one of those configured for the calling seller account; `/attributes` and `/categories` are exempt, so product data can be prepared for any storefront. Prices are always expressed in integral cents of the storefront's currency; the currency and maximum price for each storefront are given in the OpenAPI field descriptions. The rate limit is currently 111 requests per second per seller, counted across all endpoints; the rate limits page below carries the authoritative value. Requests above the limit are not processed and return HTTP 429. The Playground is an isolated test environment on its own host, `https://sellerapi-playground.kaufland.com/`, with its own OpenAPI document at `https://sellerapi-playground.kaufland.com/swagger.json`. It follows the same authentication rules and uses the same production Client Key and Secret Key, but signatures must be computed over the playground host, and an account has to be enabled for Playground access, which can take up to two weeks. It exposes a subset of the production endpoints plus `POST /playground/orders` for creating test orders, signs push notifications differently from production, and has its test data resynchronised and purged every two weeks. ## Getting started - [Introduction](https://sellerapi.kaufland.com/): what the Seller API is and which interface to choose - [Overview](https://sellerapi.kaufland.com/?page=overview): the functional areas of the API and how they relate - [REST API](https://sellerapi.kaufland.com/?page=rest-api): authentication, signature construction with PHP/Python/Java examples, pagination, embedded values, storefronts and locales, and the egress IP ranges - [Endpoints documentation](https://sellerapi.kaufland.com/?page=endpoints): full OpenAPI endpoint reference; requests issued from this page hit live production data - [OpenAPI specification](https://sellerapi.kaufland.com/swagger.json): the raw OpenAPI 3.0 document behind the endpoint reference, suitable for client generation - [Error responses](https://sellerapi.kaufland.com/?page=error-responses): the error body, how to branch on problem types, and what the API guarantees about them - [Problem type reference](https://sellerapi.kaufland.com/?page=problem-types): the registry of problem-type URIs returned in the `type` field - [Rate limits](https://sellerapi.kaufland.com/?page=rate-limits): the per-seller request limit and the 429 response - [Signature calculator](https://sellerapi.kaufland.com/?page=signature-calculator): build the canonical string step by step, or paste a failing signature to find the mismatch - [Playground](https://sellerapi.kaufland.com/?page=playground): the isolated test environment, its separate host, test orders and test data lifecycle - [Code examples](https://sellerapi.kaufland.com/?page=code-examples): complete signed request examples in several languages - [Push notifications](https://sellerapi.kaufland.com/?page=push-notifications): subscribing to events instead of polling, callback URL verification, and the supported event names ## Catalog and sales - [Managing product data](https://sellerapi.kaufland.com/?page=product-data): creating and updating products, categories and attributes - [Managing variant suggestions](https://sellerapi.kaufland.com/?page=variant-suggestions): proposing variant relationships between products - [Managing inventory](https://sellerapi.kaufland.com/?page=inventory): units, prices, stock levels, listing status and not-live reason codes - [Managing orders](https://sellerapi.kaufland.com/?page=orders): order lifecycle, shipment confirmation, cancellation and refunds - [Managing order invoices](https://sellerapi.kaufland.com/?page=order-invoices): uploading, retrieving and deleting invoices for orders - [Managing returns](https://sellerapi.kaufland.com/?page=returns): return requests, refunds and their states - [Managing tickets](https://sellerapi.kaufland.com/?page=tickets): messages between buyer, seller and customer service, bound N-to-N to order units - [Managing reports](https://sellerapi.kaufland.com/?page=reports): generating inventory and sales reports asynchronously, then downloading them - [Managing vouchers](https://sellerapi.kaufland.com/?page=vouchers): creating and administering discount vouchers per storefront, after accepting the voucher terms ## Rich content - [Rich content](https://sellerapi.kaufland.com/?page=product-data-rich-content): the JSON-based `rich_content` product attribute, and how to be enabled for it - [Rich content format definition](https://sellerapi.kaufland.com/?page=product-data-rich-content-docs): the full block format specification - [Creating and updating rich content](https://sellerapi.kaufland.com/?page=product-data-rich-content-update): how to submit and change rich content - [Block: heading](https://sellerapi.kaufland.com/?page=product-data-rich-content-heading) - [Block: heading and body text](https://sellerapi.kaufland.com/?page=product-data-rich-content-heading-text) - [Block: full-width image](https://sellerapi.kaufland.com/?page=product-data-rich-content-image) - [Block: image with text](https://sellerapi.kaufland.com/?page=product-data-rich-content-image-text) - [Block: image slider](https://sellerapi.kaufland.com/?page=product-data-rich-content-image-slider) - [Block: image with text slider](https://sellerapi.kaufland.com/?page=product-data-rich-content-image-text-slider) - [Block: FAQ section](https://sellerapi.kaufland.com/?page=product-data-rich-content-faq) - [Block: full-width video](https://sellerapi.kaufland.com/?page=product-data-rich-content-video) - [Block: video with text](https://sellerapi.kaufland.com/?page=product-data-rich-content-video-text) ## Pricing and competitive data - [Commission rates](https://sellerapi.kaufland.com/?page=commission-rates): look up the current commission rate for up to 50 products per request by EAN and storefront; the returned rate is an estimate, since the commission actually charged is determined at invoice time - [Assortment insight](https://sellerapi.kaufland.com/?page=assortment-insight): Buy Box prices across different periods, sales rank information and external demand indicators - [Product similarity benchmark](https://sellerapi.kaufland.com/?page=similar-products): groups of closely comparable products from other sellers, with your price and sales position, distance to the best offer, and competing offers ranked by price including shipping - [Virtual Buy Box on similar products](https://sellerapi.kaufland.com/?page=similar-products-buybox): ranks up to 10 products in a similarity group in one call, each entry shaped like a single `GET /buybox` response ## Technology partners - [API usage for technology partners](https://sellerapi.kaufland.com/?page=rest-api#api-usage-software-providers): the dual-credential model, the two additional partner headers, and the onboarding steps required before a multi-seller integration will authenticate - [Partner registration](https://sellerportal.kaufland.de/signup/software-partner): sign up for a technology partner account - [API settings](https://sellerportal.kaufland.de/settings/api): where both seller and partner Client Keys and Secret Keys are generated; lost keys cannot be recovered and must be regenerated - [Technology Partner Network](https://www.kauflandglobalmarketplace.com/en/technology-partners/): the partner programme and its listing for sellers seeking integrations ## Bulk file interface - [File interface overview](https://sellerapi.kaufland.com/?page=csv-files): the three kinds of data manageable through files: product data, inventory data and order data - [Product data CSV files](https://sellerapi.kaufland.com/?page=product-data-files): column definitions for bulk product upload, user-defined attributes and product data guidelines - [Variant suggestions CSV files](https://sellerapi.kaufland.com/?page=variant-suggestions-files): column definitions for bulk variant suggestions - [Inventory files](https://sellerapi.kaufland.com/?page=inventory-files): the difference between inventory feed files and inventory command files, and the supported conditions - [Inventory CSV files](https://sellerapi.kaufland.com/?page=inventory-files-csv): CSV format for inventory feed and command files - [Inventory XML files](https://sellerapi.kaufland.com/?page=inventory-files-xml): XML format for inventory feed and command files, including the published schema - [Order CSV files](https://sellerapi.kaufland.com/?page=order-files): column definitions for bulk order export, carrier codes and cancellation reasons - [Product data example CSV](https://sellerapi.kaufland.com/productdata_example.csv) - [Variant suggestions example CSV](https://sellerapi.kaufland.com/variant_suggestions_example.csv) - [Inventory feed example XML](https://sellerapi.kaufland.com/inventory_feed_example.xml) - [Inventory command example XML](https://sellerapi.kaufland.com/inventory_command_example.xml) - [Inventory XML schema](https://sellerapi.kaufland.com/inventory.xsd) ## Marketplace services - [Shipment Solutions](https://sellerapi.kaufland.com/?page=kss): a label reselling solution for buying delivery and return shipping labels from selected logistics partners across Europe - [Shipping addresses](https://sellerapi.kaufland.com/?page=shipping-addresses): retrieve the delivery addresses associated with your orders, for building shipping labels or validating destinations outside the standard order unit flow ## Optional - [Release notes](https://sellerapi.kaufland.com/?page=releaselog): dated log of API changes and deprecations - [Seller terms and conditions](https://www.kaufland.de/rechtliches-en/gmu/tc/terms-and-conditions) - [Data protection](https://www.kaufland.de/rechtliches/datenschutz/): data protection notice (German)