Large Assortment

Large Assortment Integration Schemas define the Product Catalog and Assortment file formats, uploaded by integrated partners, to be able to list large selections in non-restaurant venues.

Product Catalog files are NDJSON files uploaded at brand level, representing the variety sold across all brand's locations. Assortment files are JSON files uploaded at venue level, defining categories, sub-categories, products assigned to those, and store-specific attributes, such as pricing and stock.

Product Catalog

A Product Catalog file is an NDJSON file uploaded at brand level. Each line in the file is a Product object representing one product in the variety sold across the brand's locations. This schema describes one product entry, corresponding to one line in the NDJSON file.

The Product Catalog object

Properties

schema_versionstringenum: 1

Required. The schema version being used. Additional versions will be added in case of breaking changes.

external_idstring

Required. The external ID of the product, i.e., the ID of the product in the partner's system. Ensure that this ID is stable over time and is not reused — it should not represent different products over time. This ID helps map product data with assortment items.

name[object]

Required. The name of the product in different languages. Must have at least one entry, including a translation in the configured primary language.

product_informationobject

Required. Detailed product information including nutrition, ingredients, allergens, and display units.

description[object]

The description of the product in different languages.

gtin_barcodestringpattern: ^\d{8}$|^\d{12}$|^\d{13}$|^\d{14}$

The GS1 certified GTIN identifier of the product. Must be a valid GTIN (8, 12, 13, or 14 digits) with a valid GS1 check digit. Ensure that the GTIN is stable over time and is not reused — it should not represent different products over time.

additional_gtins[string]

Additional barcodes of the product, for scanning and picking. Use it when the same product is scanned under more than one code, for example a multipack, old and new packaging, or regional variants.

  • Optional. Each entry is a string of 1 to 14 digits, at most 1000 entries per product.
  • Entries must be JSON strings: "4012345678901" is accepted, the number 4012345678901 is not.
  • Entries are not validated as GTINs (no check digit) and, unlike gtin_barcode, are not used to identify or look up products.
  • Entries are padded to 14 digits and exact duplicates are removed, so the order of the list does not matter.
  • An empty list is treated as if the field was not sent.
  • An entry that is not 1 to 14 digits is dropped and reported as a warning; the rest of the product is processed.
  • A list with more than 1000 entries is rejected for that product.
venue_idstring

Identifier of the venue in which this product should only be available. When set, the product is scoped to a single venue instead of the entire brand.

image_urlstring

The URL of the image of the product.

Aspect ratio must be 16:9 and image type must be JPEG with a white background. Recommended size is 1000 x 562.5. Mutually exclusive with a non-empty image_urls list.

image_urls[string]

Ordered list of product image URLs. The first image is primary. Mutually exclusive with image_url when the list is non-empty; an empty list is treated as omitted.

Only the first 10 images are kept by default. Additional images are dropped without failing the product; the effective limit is configured per environment. Images should meet the same requirements as image_url.

alcohol_percentagenumberminimum: 0maximum: 100

Alcohol percentage for the product, where 5.5 means 5.5%. Note: This field triggers restrictions settings for age and delivery controls when the value is above zero.

Assortment

The root object representing a complete assortment for a venue on Wolt. Each assortment file maps 1:1 to a venue and contains categories, subcategories, listings, and store-specific attributes such as pricing and stock.

The Assortment object

Properties

metaobject

Required. Metadata about the schema version used by the document.

venue_idstring

Required. The venue ID on Wolt for which the assortment is being sent. Every store/location is represented as a venue on Wolt.

categories[object]

Required. The list of categories for this venue in the order in which they should be presented to the users.

assortment[Listing]

Required. The listing objects containing the operational attributes of products being sold. In the actual JSON file this is a map of listingId → Listing object, but it is represented here as an array for portal rendering clarity. See the example for the actual format.

picking_areas[object]

The picking areas for this venue. Each listing must appear in at most one picking area.