This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

LSAS

1 -

1.1 -

Property Type Description

(Root)

object

Schema for Product Master Data from ERP to FINE, 'single'-variant
A Product with all its associated data. Variant of the schema to send a single dataset.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional spanID.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: PRODUCT_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.8.0

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string

Name of the source system, that has sent this message.

Maximum Length: 30

        company*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client system, this dataset should be sent to. LSAS uses this for filtering the messages.

            (Array item)

string

Maximum Length: 30

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        active*

boolean

active flag
Provides information about whether the product is active (true) or inactive/deleted (false).

        identification*

object

identification of the business object
Technical and business - identifiers concerning the business object 'product'.

            erpProductId*

string

technical ID 'erp product ID'
Unique technical key of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp. must be used for all communication with an ERP referencing a product.

Maximum Length: 36

            erpProductCode

string

erpProductCode (erpSchluesselFachlich)
Unique business identifier of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp.

Maximum Length: 36

            ownerCompanyProductCode

string

ownerCompanyProductCode (referenzArtikelNummer)
Unique business identifier of the stock-owner company for this product. Within logistics and FINE only unique in combination with the owner company.

Maximum Length: 36

            itemoptioncommkey

string

technical key, provided by ERP
Created and transmitted via LDH to LSAS, unique within this ERP; needed by KR1- and COBRA-system for parallel testing (deprecated afterwards).

Maximum Length: 18

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'product'

            ownerCompany*

string

stock company ID (bestandsfirma)
stock-owner company for the product

Maximum Length: 30

            sourceOwnerCompany

string

stock company origin (firmenHerkunft)
Original stock company before the conversion to Corso, relevant for bookings to ERP. Mandatory field if ownerCompany = CORSO

Maximum Length: 30

        product*

object

product
basic product information

            productName*

string

product description (shortened, optimized for logistics use-cases)
Name/short description of the product

Maximum Length: 18

            productNumber*

integer

product number (artikelNummer)
Product number, used in warehouses to identify a product. Will be replaced later by new business and technical identifiers.

Minimum: 0
Maximum: 99999999

            size*

string

alphanumerical product size (groesseLogistisch)
Product size as String. For OTTO-Products the maxLength is 3 characters due to restrictions in consuming systems.

Maximum Length: 10

            sizeNumeric

integer

numerical product size (groesseNumerisch)
Numerical product size (OTTO-specific legacy-attribute). Alphanumerical sizes can be mapped to numerical sizes using a mapping table (see further documentation).

Minimum: 0
Maximum: 999

            orderSize

string

additional - freely defined - alphanumerical product size
Size which was used for purchase and thus used for declaration of packages in the goods in processes. Can be freely defined by the producer of the message.

Maximum Length: 18

            eans

array

list of alternative EANs
Provides a list of EANs and additional meta information concerning the single EANs.

Minimum number of items 0
Maximum number of items: 99

                (Array item)

object

Additional Properties: false

                    ean*

integer

The EAN number
The EAN number itself.

Minimum: 0
Maximum: 9999999999999

                    active*

boolean

active flag
Provides information about whether the EAN is active (true) or inactive/deleted (false).

                    eanPriority*

integer

priority of the EAN on a printed content list
Priority of the EAN on a printed content list. EAN always has lowest priority (=1). Primary EAN should have priority 1. The rest should be correlative numbers >1.

Minimum: 1
Maximum: 9

            season

integer

season (bestandsSaison)
Season in which the article is used, OTTO-specific encoding

Minimum: 0
Maximum: 999

            color

string

simplified color (farbe) description
Simplified color description of the product for logistical processes.

Maximum Length: 12

            style

string

style information (style)
Style information for the packing slip. Appears on the print document ContentList (COBRA). According to NEON also relevant for PL

Maximum Length: 14

            imageUrls

array

array of image URLs
List of image URLs.

                (Array item)

string

image URL

Maximum Length: 256

            standardPrice

integer

selling price in cents (verkaufsPreis)
Selling price of the product in cents

Minimum: 0
Maximum: 9999999

            salesBrand

string

salesbrand (markenName)
salesbrand, e.g. Nike, Marco Polo, Jack & Jones

Maximum Length: 35

            partsQuantity

integer

number of parts (anzahlTeile)
The number of individual parts of an product within the package (must not be confused with the number of packages). Required for returns processing to determine if the product was returned complete. Example: double pack of T-shirts = 2 parts, bikini = 2 parts. The ERP determines which items should carry this attribute. The decision is mainly based on the meaningfulness (no puzzles, no Lego, small items are not checked for completeness in the return). Default value is then 1.

Minimum: 0
Maximum: 1000000000000000000

            measuringUnit*

string (enum)

measuring unit (mengeneinheit)
Identifies the measuring unit. PIECE = piece goods, LENGTH_VARIABLE = length can be specified but width is fixed (e.g. for curtains, fabric,…​), LENGTH_AND_WIDTH_VARIABLE = lenght and width can be specified (e.g. for custom made pleats)

Any of: [ "PIECE", "LENGTH_VARIABLE", "LENGTH_AND_WIDTH_VARIABLE" ]

            logisticsType*

string (enum)

logistics type (Lagerbestandstyp)
The logistics type should provide information on whether the product is a parcel logistics (Paketlogistik) or a bulky items logistics (Großstuecklogistik) product.

Any of: [ "PARCEL", "BULKY", "UNKNOWN" ]

            handlingType

string (enum)

type of handling (handlingId)
Indicates, how the product is going to be handled. ONE_MAN_HANDLING and TWO_MAN_HANDLING products belong to the bulky items logistics (GL).

Any of: [ "ONE_MAN_HANDLING", "TWO_MAN_HANDLING", "PARCEL", "HANGING_CONFECTION" ]

            productGroup

integer

product group (marktId)
Classification of products (phone, watch, cosmetics, etc.)

Minimum: 0
Maximum: 999

            assortmentClassification

array

use case based assortment classification
Provides information about specific assortments, differentiated by requirements of specific processes.

                (Array item)

object

                    process*

string (enum)

process
Identifies the process, which specifies the permissibility of the transmitted assortment.

Any of: [ "RETURNS_EVALUATION", "RETURNS_BILLING" ]

                    assortment*

integer

assortment ID
Identifies the assortment, which is connected to a process and its specific requirements.

Minimum: 0
Maximum: 999

            organic

object

organic characteristics of the product
Provides information about the organic characteristics of the product.

                hasOrganicCertification*

boolean

organic identification
Provides information on whether the product is an organic good.

                certificationType

string (enum)

type of organic certification
Identifies the type of organic certification of the product.

Any of: [ "GOTS" ]

            batchHandling

boolean

Batch Handling for this product required
This product requires a batch number (chargenNummer) and specific handling, e.g. the batch number of each item must be recorded in the inbound process and all items within an order must have the same batch number in the outbound process.

            shippingFromSupplier

boolean

shipping from supplier (VAL-Artikel)
Identifies, if the product is shipped directly from the supplier or not.

            deliveryScope

array

array of components of the delivery scope
List components of the delivery scope.

                (Array item)

string

component

Maximum Length: 256

            additionalNote

string

additional note (free text)
An additional note about the product, which can be freely defined.

Maximum Length: 1024

            partnerInformation

object

partner
Basic partner information.

                erpPartnerId*

string

ERP ID of partner.
ID of partner used by ERP.

Maximum Length: 36

                erpPartnerName*

string

Name of partner.
Name of partner.

Maximum Length: 36

        dangerousGoodsIdentification

object

dangerous goods characteristics of the product
Includes all relevant dangerous goods information concerning the product.

            dangerous

boolean

dangerous goods identification
Provides information on whether the product is a dangerous good.

            dangerousGoodsType

string (enum)

dangerous goods type
Provides information about the dangerous goods type.

Any of: [ "G01", "G02", "G03", "G04", "G05", "G06", "G07", "G08", "G09", "G10", "G11", "G12", "G13", "G14" ]

            physicalState

string

physical state
Provides information about the physical state of the product.

Maximum Length: 50

            accumulatorCapacity

string

accumulator capacity
Provides information about the accumulator capacity of the product in mAh.

Maximum Length: 20

            numberOfAccumulators

string

number of accumulators
Provides information about the number of accumulators of the product, between 1 and 10.

Maximum Length: 20

            numberOfBatteries

string

number of batteries
Provides information about the number of batteries of the product, between 1 and 10.

Maximum Length: 20

            batteryOrAccumulatorTechnology

string

battery or accumulator technology
Provides information about the battery or accumulator technology.

Maximum Length: 1024

            transportCategoryDangerousGoods

string

transport category dangerous goods
Provides information about the transport category of dangerous goods, between 0 and 4.

Maximum Length: 1

            clpHazardPictogram

array

hazard pictogram array
A hazard pictogram is a picture on a label with a warning symbol and certain colors to provide information about the damage that a certain substance or mixture can do to our health or the environment.

                (Array item)

string

hazard pictogram

Maximum Length: 1024

            clpProductLabel

string

product label
The attribute describes whether a CLP-product label is necessary.

Maximum Length: 1024

            clpSafetyDataSheet

string

safety data sheet
The safety data sheet is the central element of communication in the supply chain for hazardous substances and mixtures. It provides the user of chemicals with important information on the identity of the product.

Maximum Length: 1024

            dangerWarnings

array

danger warnings array
Packaging that contains dangerous substances or a dangerous mixture must be labeled to protect the user and the environment.

                (Array item)

string

danger warning

Maximum Length: 1024

            weightBatteriesOrAccumulator

string

weight of batteries or accumulator
Weight batteries/accumulator // Free field (without specifications)/indication of the mass of the installed or enclosed accumulator or battery in g.

Maximum Length: 20

            content

string

content
freetxt // specification of the content of the product.

Maximum Length: 4096

            storageCategoryHazardousMaterial

string

storage category hazardous material
A list of different storage classes.

Maximum Length: 20

            accumulatorPower

string

accumulator power
The specification of accumulator power in Wh. // Freetext

Maximum Length: 20

            deliveryConditionBatteriesOrAccumulators

string

delivery condition of batteries or accumulators
Information on whether a battery or accumulator is built into the product or if it is separated from the product.

Maximum Length: 1024

            limitedQuantityOfDangerousGoods

string

limited quantity of dangerous goods
Limited Quantities (LQ) is the abbreviation for the term dangerous goods, which are packed in limited amounts, that is stated by dangerous goods regulation.

Maximum Length: 1024

            testSummaryLithiumBatteries

string

test summary of lithium batteries
Test summary lithium batteries.

Maximum Length: 1024

            qualityAssuranceProgramLithiumBatteries

string

quality assurance program lithium batteries
Quality assurance program lithium batteries.

Maximum Length: 1024

            relevanceClpObligation

string

relevance of CLP obligation
The CLP regulation deals with the question, whether a substance or mixture has properties that can be considered as dangerous.

Maximum Length: 1024

            relevanceClpDangerousGoods

string

relevance of CLP
Relevance of CLP

Maximum Length: 1024

            safetyInstructions

array

safety instructions array
List of up to 127 safety notes

                (Array item)

string

safety instruction

Maximum Length: 1024

            signalWord

string

signal word
CAUTION/DANGER: The signal word indicates the level of danger and severity of injury or property damage.

Maximum Length: 50

            specialProvisionDangerousGoods

string

special provision of dangerous goods
For certain substances or objects the special regulations are applied, through which the shipping of these substances or objects is wholly or partially exempt from the regulations of the ADR. ADR: European agreement concerning the international carriage of dangerous goods by road.

Maximum Length: 1024

            accumulatorVoltage

string

accumulator voltage
The attribute describes the different voltages of accumulators.

Maximum Length: 50

            languagesClpSafetyDataSheet

string

languages clp safety data sheet
list of 28 languages

Maximum Length: 50

            unNumber

string

UN number
specification of UN-number

Maximum Length: 1024

            unStandardTestLithiumBatteries

string

UN standard test lithium batteries
The UN 38.3 test ensures that lithium batteries can be shipped safely.

Maximum Length: 1024

            packingGroupsDangerousGoods

string

packing groups dangerous goods
Assignment of different packing groups, selection 1-3.

Maximum Length: 50

            netQuantityWeight

string

net quantity weight
Specification of the net quantity of the product in gram (g).

Maximum Length: 20

            netQuantityPiece

string

net quantity piece
Specification of the net quantity of the product in piece (pc).

Maximum Length: 20

            netQuantityVolume

string

net quantity volume
Specification of the net quantity of the product in volume (ml).

Maximum Length: 20

        ottoSpecificProcessing

object

process-relevant information concerning the business object, specific attributes for Otto and Bonprix products
Process-relevant information concerning the business object 'product'

            priorityInbound

boolean

priority for inbound processes (chefKz)
Product will be prioritized for inbound processes (true=yes, false=no). Bonprix only.

            priorityDelivery

integer

priority for delivery (deliveryFlag, NAB_Kz)
Product will be prioritized for delivery according to the level set. Bonprix only.

Minimum: 0
Maximum: 5

            specialPackaging

integer

product packing information (sonderverpackung, tuetenKz)
Product packing information indicates whether an article is bagable

Minimum: 0
Maximum: 9

            warehouseAreaType*

integer (enum)

warehouse area type (WBKZ)
Classifies an article with regard to the warehouse area, provides information about e. g. Sorter-Ability, Risk of theft, etc.

Any of: [ 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18 ]

            returnsSortCode*

integer

returns sort code (retourenSortierId)
Each article has a standard return destination that is stored in the master data

Minimum: 0
Maximum: 999

            oneStopShopping

boolean

one stop shopping code (AbwicklungsartOss)
Indicates if an product is processed as one stop shopping; true=OSS, false=no OSS

            supplierId

integer

supplier ID (LKZ)
Unique ID for the supplier (currently only known for Otto ERP), used by KR1 to identify the main supplier

Minimum: 0
Maximum: 999999

            disposal

integer (enum)

disposal (verwendung)
Indicates the current usage of an article

Any of: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 18, 19 ]

            enclosures

array

enclosures array (beilagen)
List of enclosures.

Minimum number of items 0
Maximum number of items: 3

                (Array item)

string

enclosure ID

Maximum Length: 4

            groupCodeComposed

integer

product group detail code (warengruppeGesamt)
Composed group Code

Minimum: 0
Maximum: 999

            groupCodeBuying*

integer

buying group code (warengruppeFuehrungsTeam)
Optional filter for the removal of goods, goods are classified by these attributes (needed for COBRA)

Minimum: 0
Maximum: 99

            groupCodeMerchandise*

integer

merchandise group code (warengruppeOperativesTeam)
Optional filter for the removal from storage, goods are classified by these attributes (needed for COBRA)

Minimum: 0
Maximum: 9

            reconditionCode

integer

recondition code (wiederaufbereitung)
Code for the routing label for rework of returned articles

Minimum: 0
Maximum: 9

            individualization

integer

individualization (individualisierung)
Indicates if an article has embossing or engraving

Minimum: 0
Maximum: 9

            expeditionCode

integer

encoding for process-handling of bulkyItems (versandschluessel)
Encoding for process-handling of bulkyItems, includes transport system, goods distribution centre, etc.

Minimum: 0
Maximum: 9999999

            checkRoomCode

integer

check room code (pruefraumId)
Testroom ID to filter removal from storage - results from quality tests

Minimum: 0
Maximum: 5

            ownershipId

integer (enum)

ownership of the product (verfuegbarkeitsId)
The attribute is used to logistically distinguish certain groups of goods. E.g. for stock removal processes (e. g. to prevent throughput goods from being outsourced); 0=OWN_GOODS, 1=EXTERNAL_GOODS_CONSIGNMENT, 3=EXTERNAL_GOODS_THROUGHPUT, 9=UNKNOWN.

Any of: [ 0, 1, 3, 9 ]

            location

integer (enum)

master warehouse ID (stammlager)
The master warehouse provides information about where an article comes from.

Any of: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 40, 43, 47, 48, 49, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 88, 92, 99 ]

            returnsVolumeClass

integer

volume class of an article (retourenVolumenklasse)
Volume class of an article, categorized in IDs.

Minimum: 0
Maximum: 13

        packingUnits*

array

packing units array (packstuecke)
List of all packing units

Minimum number of items 1
Maximum number of items: 99

            (Array item)

object

                identification*

object

identification of the packing unit
technical and business - identifiers concerning the packing unit

                    erpPackingUnitId*

string

ERP packing unit ID
Common technical key between LSAS and ERP.

Maximum Length: 36

                    packingUnitIndex

integer

Index of the packing unit (packstueckNr)
Index (number, starting with 1) of this packing unit within the list of all packing unit. If more than one packing unit is present, the packingUnitIndex is required.

Minimum: 1
Maximum: 99

                packingUnitDescription

string

ERP packing unit description
Describes in particular what is inside a packing unit.

Maximum Length: 1024

                geometry

object

geometric data of the packing unit
includes the geometric data of the packing unit

                    length

integer

length
Length in mm

Minimum: 0
Maximum: 99999

                    width

integer

width
Width in mm

Minimum: 0
Maximum: 99999

                    height

integer

height
Height in mm

Minimum: 0
Maximum: 99999

                    weight

integer

weight
Weight in g

Minimum: 0
Maximum: 9999999

                    volume

integer

volume
Volume in dl

Minimum: 0
Maximum: 9999999

1.2 -

Property Type Description

(Root)

object

Schema for Product Master Data from FINE to WMS
A Product with all its associated data.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record = PRODUCT_UPDATE
The concrete type record. Always 'PRODUCT_UPDATE'

Constant: PRODUCT_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.8.0

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string (const)

Sender of the message
Name of the source system, that has sent this message.

Constant: LSAS

        sourceSystem*

string

The system that produced this dataset and originally sent it to LSAS. Usually an ERP-system.

Maximum Length: 30

        sourceCompany*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client systems this dataset is relevant for. Used for filtering for the different client systems.

            (Array item)

object

                client*

string

Name of client system.

Maximum Length: 30

                status*

string (enum)

Export status
Status to show, if a client should receive this dataset. RELEVANT - client must receive it, REMOVED - previously this item was relevant for a client, now it must be deleted (client must take care to delete the dataset by itself)

Any of: [ "RELEVANT", "REMOVED" ]

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        creationTime*

string (date-time)

Creation timestamp
Time of creation of the product in LSAS in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        updateTime*

string (date-time)

Last update timestamp
Time of last update in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        deletionTime

string (date-time)

Deletion timestamp
Time of the deletion of this product (when the active flag switched to false) in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        active*

boolean

active flag
Provides information about whether the product is active (true) or inactive/deleted (false).

        identification*

object

identification of the business object
Technical and business - identifiers concerning the business object 'product'.

            logisticsProductId*

string

technical ID 'logistics product ID'
Unique technical key in all logistics systems, assigned by LSAS. Must be used in all communication between logistics systems and FINE, when referencing a product.

Maximum Length: 36

            erpProductId*

string

technical ID 'erp product ID'
Unique technical key of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a product.

Maximum Length: 36

            erp*

string

ERP identifier
Identifies the ERP as producer of the message. In combination with the erpProductId it is unique.

Maximum Length: 30

            erpProductCode

string

erpProductCode (erpSchluesselFachlich)
Unique business identifier of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp.

Maximum Length: 36

            ownerCompanyProductCode

string

ownerCompanyProductCode (referenzArtikelNummer)
Unique business identifier of the stock-owner company for this product. Within logistics and FINE only unique in combination with the owner company.

Maximum Length: 36

            itemoptioncommkey

string

technical key, provided by ERP
Created and transmitted via LDH to LSAS, unique within this ERP; needed by KR1- and COBRA-system for parallel testing (deprecated afterwards).

Maximum Length: 18

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'product'

            ownerCompany*

string

stock company ID (bestandsfirma)
stock-owner company for the product

Maximum Length: 30

            sourceOwnerCompany

string

stock company origin (firmenHerkunft)
Original stock company before the conversion to Corso, relevant for bookings to ERP. Mandatory field if ownerCompany = CORSO

Maximum Length: 30

        product*

object

product
basic product information

            productName*

string

product description (shortened, optimized for logistics use-cases)
Name/short description of the product

Maximum Length: 18

            productNumber*

integer

product number (artikelNummer)
Product number, used in warehouses to identify a product. Will be replaced later by new business and technical identifiers like logisticsProductCode, logisticsProductId, erpProductId,…​

Minimum: 0
Maximum: 99999999

            size*

string

alphanumerical product size (groesseLogistisch)
Product size as String. For OTTO-Products the maxLength is 3 characters due to restrictions in consuming systems.

Maximum Length: 10

            sizeNumeric

integer

numerical product size (groesseNumerisch)
Numerical product size (OTTO-specific legacy-attribute). Alphanumerical sizes can be mapped to numerical sizes using a mapping table (see further documentation).

Minimum: 0
Maximum: 999

            orderSize

string

additional - freely defined - alphanumerical product size
Size which was used for purchase and thus used for declaration of packages in the goods in processes. Can be freely defined by the producer of the message.

Maximum Length: 18

            eans

array

list of EANs associated with this product
Provides a list of EANs and additional meta information concerning the single EANs.

Minimum number of items 0
Maximum number of items: 99

                (Array item)

object

Additional Properties: false

                    ean*

integer

The EAN number
The EAN number itself.

Minimum: 0
Maximum: 9999999999999

                    active*

boolean

active flag
Provides information about whether the EAN is active (true) or inactive/deleted (false).

                    eanPriority*

integer

priority of the EAN on a printed content list
Priority of the EAN on a printed content list. EAN always has lowest priority (=1). Primary EAN should have priority 1. The rest should be correlative numbers >1.

Minimum: 1
Maximum: 9

                    deletionTime

string (date-time)

Deletion timestamp
Time of the deletion of this ean (when the active flag switched to false) in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

            season

integer

season (bestandsSaison)
Season in which the article is used, OTTO-specific encoding

Minimum: 0
Maximum: 999

            color

string

simplified color (farbe) description
Simplified color description of the product for logistical processes.

Maximum Length: 12

            style

string

style information (style)
Style information for the packing slip. Appears on the print document ContentList (COBRA). According to NEON also relevant for PL

Maximum Length: 14

            imageUrls

array

array of image URLs
List of image URLs.

                (Array item)

string

image URL

Maximum Length: 256

            standardPrice

integer

selling price in cents (verkaufsPreis)
Selling price of the product in cents

Minimum: 0
Maximum: 9999999

            salesBrand

string

salesbrand (markenName)
salesbrand, e.g. Nike, Marco Polo, Jack & Jones

Maximum Length: 35

            partsQuantity

integer

number of parts (anzahlTeile)
The number of individual parts of an product within the package (must not be confused with the number of packages). Required for returns processing to determine if the product was returned complete. Example: double pack of T-shirts = 2 parts, bikini = 2 parts. The ERP determines which items should carry this attribute. The decision is mainly based on the meaningfulness (no puzzles, no Lego, small items are not checked for completeness in the return). Default value is then 1.

Minimum: 0
Maximum: 1000000000000000000

            measuringUnit*

string (enum)

measuring unit (mengeneinheit)
Identifies the measuring unit. PIECE = piece goods, LENGTH_VARIABLE = length can be specified but width is fixed (e.g. for curtains, fabric,…​), LENGTH_AND_WIDTH_VARIABLE = lenght and width can be specified (e.g. for custom made pleats)

Any of: [ "PIECE", "LENGTH_VARIABLE", "LENGTH_AND_WIDTH_VARIABLE" ]

            handlingType

string (enum)

type of handling (handlingId)
Indicates, how the product is going to be handled. ONE_MAN_HANDLING and TWO_MAN_HANDLING products belong to the bulky items logistics (GL).

Any of: [ "ONE_MAN_HANDLING", "TWO_MAN_HANDLING", "PARCEL", "HANGING_CONFECTION" ]

            productGroup

integer

product group (marktId)
Classification of products (phone, watch, cosmetics, etc.)

Minimum: 0
Maximum: 999

            assortmentClassification

array

use case based assortment classification
Provides information about specific assortments, differentiated by requirements of specific processes.

                (Array item)

object

                    process*

string (enum)

process
Identifies the process, which specifies the permissibility of the transmitted assortment.

Any of: [ "RETURNS_EVALUATION", "RETURNS_BILLING" ]

                    assortment*

integer

assortment ID
Identifies the assortment, which is connected to a process and its specific requirements.

Minimum: 0
Maximum: 999

            organic

object

organic characteristics of the product
Provides information about the organic characteristics of the product.

                hasOrganicCertification*

boolean

organic identification
Provides information on whether the product is an organic good.

                certificationType

string (enum)

type of organic certification
Identifies the type of organic certification of the product.

Any of: [ "GOTS" ]

            batchHandling

boolean

Batch Handling for this product required
This product requires a batch number (chargenNummer) and specific handling, e.g. the batch number of each item must be recorded in the inbound process and all items within an order must have the same batch number in the outbound process.

            shippingFromSupplier

boolean

shipping from supplier (VAL-Artikel)
Identifies, if the product is shipped directly from the supplier or not.

            deliveryScope

array

array of components of the delivery scope
List components of the delivery scope.

                (Array item)

string

component

Maximum Length: 256

            additionalNote

string

additional note (free text)
An additional note about the product, which can be freely defined.

Maximum Length: 1024

            partnerInformation

object

partner
Basic partner information.

                erpPartnerId*

string

ERP ID of partner.
ID of partner used by ERP.

Maximum Length: 36

                erpPartnerName*

string

Name of partner.
Name of partner.

Maximum Length: 36

        dangerousGoodsIdentification

object

dangerous goods characteristics of the product
Includes all relevant dangerous goods information concerning the product.

            dangerous

boolean

dangerous goods identification
Provides information on whether the product is a dangerous good.

            dangerousGoodsType

string (enum)

dangerous goods type
Provides information about the dangerous goods type.

Any of: [ "G01", "G02", "G03", "G04", "G05", "G06", "G07", "G08", "G09", "G10", "G11", "G12", "G13", "G14" ]

            dangerousGoodsStorageArea

string

dangerous goods storage area
Provides information about the dangerous goods storage area. Calculated in LSAS, based on dangerWarnings - and unNumber - attributes.

Maximum Length: 2

            exemptionNotice

string

dangerous goods exemption notice
This information should be attached, so that carriers know, that there are transport simplifications for the product concerning handling. Calculated in LSAS, based on unNumber - attribute.

Maximum Length: 15

            dangerousGoodsShare

integer

dangerous goods share
In most cases not the whole product is dangerous, but only a part of it is. Therefore a share in % is calculated in LSAS, based on productGroup and unNumber combination.

Minimum: 0
Maximum: 100

            physicalState

string

physical state
Provides information about the physical state of the product.

Maximum Length: 50

            accumulatorCapacity

string

accumulator capacity
Provides information about the accumulator capacity of the product in mAh.

Maximum Length: 20

            numberOfAccumulators

string

number of accumulators
Provides information about the number of accumulators of the product, between 1 and 10.

Maximum Length: 20

            numberOfBatteries

string

number of batteries
Provides information about the number of batteries of the product, between 1 and 10.

Maximum Length: 20

            batteryOrAccumulatorTechnology

string

battery or accumulator technology
Provides information about the battery or accumulator technology.

Maximum Length: 1024

            transportCategoryDangerousGoods

string

transport category dangerous goods
Provides information about the transport category of dangerous goods, between 0 and 4.

Maximum Length: 1

            clpHazardPictogram

array

hazard pictogram array
A hazard pictogram is a picture on a label with a warning symbol and certain colors to provide information about the damage that a certain substance or mixture can do to our health or the environment.

                (Array item)

string

hazard pictogram

Maximum Length: 1024

            clpProductLabel

string

product label
The attribute describes whether a CLP-product label is necessary.

Maximum Length: 1024

            clpSafetyDataSheet

string

safety data sheet
The safety data sheet is the central element of communication in the supply chain for hazardous substances and mixtures. It provides the user of chemicals with important information on the identity of the product.

Maximum Length: 1024

            dangerWarnings

array

danger warnings array
Packaging that contains dangerous substances or a dangerous mixture must be labeled to protect the user and the environment.

                (Array item)

string

danger warning

Maximum Length: 1024

            weightBatteriesOrAccumulator

string

weight of batteries or accumulator
Weight batteries/accumulator // Free field (without specifications)/indication of the mass of the installed or enclosed accumulator or battery in g.

Maximum Length: 20

            content

string

content
freetxt // specification of the content of the product.

Maximum Length: 4096

            storageCategoryHazardousMaterial

string

storage category hazardous material
A list of different storage classes.

Maximum Length: 20

            accumulatorPower

string

accumulator power
The specification of accumulator power in Wh. // Freetext

Maximum Length: 20

            deliveryConditionBatteriesOrAccumulators

string

delivery condition of batteries or accumulators
Information on whether a battery or accumulator is built into the product or if it is separated from the product.

Maximum Length: 1024

            limitedQuantityOfDangerousGoods

string

limited quantity of dangerous goods
Limited Quantities (LQ) is the abbreviation for the term dangerous goods, which are packed in limited amounts, that is stated by dangerous goods regulation.

Maximum Length: 1024

            testSummaryLithiumBatteries

string

test summary of lithium batteries
Test summary lithium batteries.

Maximum Length: 1024

            qualityAssuranceProgramLithiumBatteries

string

quality assurance program lithium batteries
Quality assurance program lithium batteries.

Maximum Length: 1024

            relevanceClpObligation

string

relevance of CLP obligation
The CLP regulation deals with the question, whether a substance or mixture has properties that can be considered as dangerous.

Maximum Length: 1024

            relevanceClpDangerousGoods

string

relevance of CLP
Relevance of CLP

Maximum Length: 1024

            safetyInstructions

array

safety instructions array
List of up to 127 safety notes

                (Array item)

string

safety instruction

Maximum Length: 1024

            signalWord

string

signal word
CAUTION/DANGER: The signal word indicates the level of danger and severity of injury or property damage.

Maximum Length: 50

            specialProvisionDangerousGoods

string

special provision of dangerous goods
For certain substances or objects the special regulations are applied, through which the shipping of these substances or objects is wholly or partially exempt from the regulations of the ADR. ADR: European agreement concerning the international carriage of dangerous goods by road.

Maximum Length: 1024

            accumulatorVoltage

string

accumulator voltage
The attribute describes the different voltages of accumulators.

Maximum Length: 50

            languagesClpSafetyDataSheet

string

languages clp safety data sheet
list of 28 languages

Maximum Length: 50

            unNumber

string

UN number
specification of UN-number

Maximum Length: 4

            unStandardTestLithiumBatteries

string

UN standard test lithium batteries
The UN 38.3 test ensures that lithium batteries can be shipped safely.

Maximum Length: 1024

            packingGroupsDangerousGoods

string

packing groups dangerous goods
Assignment of different packing groups, selection 1-3.

Maximum Length: 50

            netQuantityWeight

string

net quantity weight
Specification of the net quantity of the product in gram (g).

Maximum Length: 20

            netQuantityPiece

string

net quantity piece
Specification of the net quantity of the product in piece (pc).

Maximum Length: 20

            netQuantityVolume

string

net quantity volume
Specification of the net quantity of the product in volume (ml).

Maximum Length: 20

        ottoSpecificProcessing

object

process-relevant information concerning the business object, specific attributes for Otto and Bonprix products
Process-relevant information concerning the business object 'product'

            priorityInbound

boolean

priority for inbound processes (chefKz)
Product will be prioritized for inbound processes (true=yes, false=no). Bonprix only.

            priorityDelivery

integer

priority for delivery (deliveryFlag, NAB_Kz)
Product will be prioritized for delivery according to the level set. Bonprix only.

Minimum: 0
Maximum: 5

            specialPackaging

integer

product packing information (sonderverpackung, tuetenKz)
Product packing information indicates whether an article is bagable

Minimum: 0
Maximum: 9

            warehouseAreaType*

integer (enum)

warehouse area type (WBKZ)
Classifies an article with regard to the warehouse area, provides information about e. g. Sorter-Ability, Risk of theft, etc.

Any of: [ 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18 ]

            returnsSortCode*

integer

returns sort code (retourenSortierId)
Each article has a standard return destination that is stored in the master data

Minimum: 0
Maximum: 999

            oneStopShopping

boolean

one stop shopping code (AbwicklungsartOss)
Indicates if an product is processed as one stop shopping; true=OSS, false=no OSS

            supplierId

integer

supplier ID (LKZ)
Unique ID for the supplier (currently only known for Otto ERP), used by KR1 to identify the main supplier

Minimum: 0
Maximum: 999999

            disposal

integer (enum)

disposal (verwendung)
Indicates the current usage of an article

Any of: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 18, 19 ]

            enclosures

array

enclosures array (beilagen)
List of enclosures.

Minimum number of items 0
Maximum number of items: 3

                (Array item)

string

enclosure ID

Maximum Length: 4

            groupCodeComposed

integer

product group detail code (warengruppeGesamt)
Composed group Code

Minimum: 0
Maximum: 999

            groupCodeBuying*

integer

buying group code (warengruppeFuehrungsTeam)
Optional filter for the removal of goods, goods are classified by these attributes (needed for COBRA)

Minimum: 0
Maximum: 99

            groupCodeMerchandise*

integer

merchandise group code (warengruppeOperativesTeam)
Optional filter for the removal from storage, goods are classified by these attributes (needed for COBRA)

Minimum: 0
Maximum: 9

            reconditionCode

integer

recondition code (wiederaufbereitung)
Code for the routing label for rework of returned articles

Minimum: 0
Maximum: 9

            individualization

integer

individualization (individualisierung)
Indicates if an article has embossing or engraving

Minimum: 0
Maximum: 9

            expeditionCode

integer

encoding for process-handling of bulkyItems (versandschluessel)
Encoding for process-handling of bulkyItems, includes transport system, goods distribution centre, etc.

Minimum: 0
Maximum: 9999999

            checkRoomCode

integer

check room code (pruefraumId)
Testroom ID to filter removal from storage - results from quality tests

Minimum: 0
Maximum: 5

            ownershipId

integer (enum)

ownership of the product (verfuegbarkeitsId)
The attribute is used to logistically distinguish certain groups of goods. E.g. for stock removal processes (e. g. to prevent throughput goods from being outsourced); 0=OWN_GOODS, 1=EXTERNAL_GOODS_CONSIGNMENT, 3=EXTERNAL_GOODS_THROUGHPUT, 9=UNKNOWN

Any of: [ 0, 1, 3, 9 ]

            location

integer (enum)

master warehouse ID (stammlager)
The master warehouse provides information about where an article comes from

Any of: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 40, 43, 47, 48, 49, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 88, 92, 99 ]

            returnsVolumeClass

integer

volume class of an article (retourenVolumenklasse)
Volume class of an article, categorized in IDs.

Minimum: 0
Maximum: 13

        packingUnits*

array

packing units array (packstuecke)
List of all packing units

Minimum number of items 1
Maximum number of items: 99

            (Array item)

object

                metaData

object

meta data for packing units
Contains meta data for packing units.

                    measured

boolean

Identifies if the packingUnit was already measured in a warehouse.
Identifies if the packingUnit was already measured in a warehouse.

                    sourceSystem

string

Name of the source system, the measurements come from.

Maximum Length: 30

                    measurementTime

(date-time)

Timestamp of the latest measurement.
Timestamp of the latest measurement in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

                identification*

object

identification of the packing unit
technical and business - identifiers concerning the packing unit

                    logisticsPackingUnitId*

string

logistics packing unit ID
Common technical key between LSAS and warehouse management system. Assigned by LSAS, shared with the WMS.

Maximum Length: 36

                    erpPackingUnitId

string

ERP packing unit ID
Common technical key between LSAS and ERP.

Maximum Length: 36

                    packingUnitIndex

integer

Index of the packing unit (packstueckNr)
Index (number, starting with 1) of this packing unit within the list of all packing unit. If more than one packing unit is present, the packingUnitIndex is required.

Minimum: 1
Maximum: 99

                packingUnitDescription

string

ERP packing unit description
Describes in particular what is inside a packing unit.

Maximum Length: 1024

                geometry

object

geometric data of the packing unit
includes the geometric data of the packing unit

                    length

integer

length
Length in mm

Minimum: 0
Maximum: 99999

                    width

integer

width
Width in mm

Minimum: 0
Maximum: 99999

                    height

integer

height
Height in mm

Minimum: 0
Maximum: 99999

                    weight

integer

weight
Weight in g

Minimum: 0
Maximum: 9999999

                    volume

integer

volume
Volume in dl

Minimum: 0
Maximum: 9999999

                loadingUnitTypePicking

string (enum)

loading unit type for picking
The loading unit type for the process of picking.

Any of: [ "TROLLY_AUTO_SORTING", "TROLLY_NO_AUTO_SORTING", "PALLET" ]

                autoSorting

boolean

auto-sortable flag
Provides information about whether the product is auto-sortable or not.

                autoSortingTypes

array

auto-sorting-types listing
Provides information about on which auto-sorter type the product can be handled.

                    (Array item)

object

                        type*

string (enum)

auto-sorter-type identification
Identifies the auto-sorter type.

Any of: [ "BEUMER_BIG_POCKET_MANUAL", "BEUMER_BIG_POCKET_AUTO", "SPLIT_TILT_TRAYSORTER" ]

                        capable*

boolean

Capable - flag concerning the auto-sorter type
Identifies, if the product can be handled on a specific auto-sorter type.

                warehousePackingForShipping

boolean

deprecated: replaced/removed by shippingInOriginalPackaging with next schema change
Deprecated: Will be replaced/removed by shippingInOriginalPackaging with next schema change. Provides information about whether a product can be shipped in the storage packing without additional shipping packaging or not.

                shippingInOriginalPackaging

boolean

need of additional warehouse packaging
Provides information about whether a product can be shipped in the original product packaging without additional warehouse packaging or not.

                polyBagPacking

boolean

poly-bag-packing capability
Identifies, if the product can be packed in a poly-bag. Here the physical characteristics (not the size/weight!) should be evaluated. E.g. sharp or fragile objects cannot be packed into a polybag. If the product is to big for a bag or not has to be decided later by the ERP within the shipment-order-message (via logisticsbuffer).

                polyBagAutoPacking

boolean

poly-bag-autopacking capability
Identifies, if the product can be auto-packed in a poly-bag.

                polyBagAutoPackingTypes

array

poly-bag auto-packing types listing
Provides information about on which poly-bag auto-packing type the product can be handled.

                    (Array item)

object

                        type*

string (enum)

poly-bag auto-packing type identification
Identifies the poly-bag auto-packing type.

Any of: [ "BECK", "HUGO_BECK", "BVM" ]

                        capable*

boolean

Capable - flag concerning the poly-bag auto-packing type
Identifies, if the product can be handled on a specific poly-bag auto-packing type.

                temptsTheft

boolean

theft-prone flag
Provides information about whether the product is theft-prone or not.

2 -

2.1 -

Property Type Description

(Root)

object

Schema for logistical product data from the WAREHOUSE to FINE
Contains geometrical and further logistical data concerning the product.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: LOGISTICAL_DATA_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.2.0

    metaData*

object

additional meta information
required for identifying the source system of the geometrical and/or logistical data update

        sender*

string

Name of the source system, that has sent this message. Usually a WMS. E.g. one of: [KR1_SHF, KR1_HHSTR, KMOTION_ILO, KMOTION_GHM].

Maximum Length: 30

        measurementTime*

(date-time)

Timestamp of the latest measurement.
Timestamp of the latest measurement in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

Maximum Length: 36

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        identification*

object

identification of the business object
technical identifiers

            logisticsProductId*

string

technical ID 'logistics product ID'
Technical key referencing the product.

Maximum Length: 36

            logisticsPackingUnitId

string

logistics packing unit ID
Technical key for a specific packing unit of the product. This identifier is only needed, if the product has more than one packingUnit (especially in bulky items logistics).

Maximum Length: 36

        packingUnit*

object

packing unit (packstueck)
Attributes concerning the packing unit

            geometry*

object

geometric data of the packing unit
includes the geometric data of the packing unit

                length*

integer

length
Length in mm

Minimum: 0
Maximum: 99999

                width*

integer

width
Width in mm

Minimum: 0
Maximum: 99999

                height*

integer

height
Height in mm

Minimum: 0
Maximum: 99999

                weight*

integer

weight
Weight in g

Minimum: 0
Maximum: 9999999

                volume*

integer

volume
volume in dl

Minimum: 0
Maximum: 9999999

            specialPackaging

integer

product packing information (sonderverpackung, tuetenKz)
Product packing information indicates whether an article is bagable

Minimum: 0
Maximum: 9

            warehouseAreaType

integer (enum)

warehouse area type (wbkz)
Classifies an article with regard to the warehouse area, provides information about e. g. Sorter-Ability, Risk of theft, etc.

Any of: [ 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18 ]

            loadingUnitTypePicking

string (enum)

loading unit type for picking
The loading unit type for the process of picking.

Any of: [ "TROLLY_AUTO_SORTING", "TROLLY_NO_AUTO_SORTING", "PALLET" ]

            autoSorting

boolean

auto-sortable flag
Provides information about whether the product is auto-sortable or not.

            autoSortingTypes

array

auto-sorting-types listing
Provides information about on which auto-sorter type the product can be handled.

                (Array item)

object

                    type*

string (enum)

auto-sorter-type identification
Identifies the auto-sorter type.

Any of: [ "BEUMER_BIG_POCKET_MANUAL", "BEUMER_BIG_POCKET_AUTO", "SPLIT_TILT_TRAYSORTER" ]

                    capable*

boolean

Capable - flag concerning the auto-sorter type
Identifies, if the product can be handled on a specific auto-sorter type.

            warehousePackingForShipping

boolean

deprecated: replaced/removed by shippingInOriginalPackaging with next schema change
Deprecated: Will be replaced/removed by shippingInOriginalPackaging with next schema change. Provides information about whether a product can be shipped in the storage packing without additional shipping packaging or not.

            shippingInOriginalPackaging

boolean

need of additional warehouse packaging
Provides information about whether a product can be shipped in the original product packaging without additional warehouse packaging or not.

            polyBagPacking

boolean

poly-bag-packing capability
Identifies, if the product can be packed in a poly-bag. Here the physical characteristics (not the size/weight!) should be evaluated. E.g. sharp or fragile objects cannot be packed into a polybag. If the product is to big for a bag or not has to be decided later by the ERP within the shipment-order-message (via logisticsbuffer).

            polyBagAutoPacking

boolean

poly-bag-autopacking capability
Identifies, if the product can be auto-packed in a poly-bag.

            polyBagAutoPackingTypes

array

poly-bag auto-packing types listing
Provides information about on which poly-bag auto-packing type the product can be handled.

                (Array item)

object

                    type*

string (enum)

poly-bag auto-packing type identification
Identifies the poly-bag auto-packing type.

Any of: [ "BECK", "HUGO_BECK", "BVM" ]

                    capable*

boolean

Capable - flag concerning the poly-bag auto-packing type
Identifies, if the product can be handled on a specific poly-bag auto-packing type.

            temptsTheft

boolean

theft-prone flag
Provides information about whether the product is theft-prone or not.

2.2 -

Property Type Description

(Root)

object

Schema for Logistical Product Data (packing unit) from FINE to the ERP or WAREHOUSE
A Product with its associated logistical data and packing unit.

    eventId*

string

The unique eventId
Unique id for this event, set by the sender of the message. It is recommended to be set as a uuid.

    traceId*

string

The unique traceId
Unique id to trace the event/request through several systems. Also used for storing a reference to the original message payload. It is recommended to be set as a uuid.

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context*

string (const)

The context / business case = MASTERDATA
The optional context specified here means the business domain. Always 'MASTERDATA'

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: LOGISTICAL_DATA_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.2.0

    metaData*

object

additional meta information
Used to send other relevant information for the message, like sender.

        sender*

(const)

Name of the source system, that has sent this message. Always 'LSAS'.

Constant: LSAS

        sourceSystem*

string

The system that produced this dataset and originally sent it to LSAS. Usually a WMS-system.

Maximum Length: 30

        measurementTime*

(date-time)

Timestamp of the latest measurement (includes LSAS-internal calculations).
Timestamp of the latest measurement in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

Maximum Length: 36

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        identification*

object

identification of the business object
technical and business

            erpProductId*

string

technical ID 'erp product ID'
Unique technical key of the ERP for this product. Withing logistics and FINE only unique in combination with the sourceErp. must be used for all communication with an ERP referencing a product.

Maximum Length: 36

            erpPackingUnitId*

string

erp packing unit ID
Technical key for a specific packing unit of the product. This identifier is only needed, if the product has more than one packingUnit (especially in bulky items logistics).

Maximum Length: 36

        dangerousGoodsIdentification

object

dangerous goods characteristics of the product
Includes all relevant dangerous goods information concerning the product.

            dangerousGoodsStorageArea

string

dangerous goods storage area
Provides information about the dangerous goods storage area. Calculated in LSAS, based on dangerWarnings - and unNumber - attributes.

Maximum Length: 2

        ottoSpecificProcessing

object

process-relevant information concerning the business object, specific attributes for Otto and Bonprix products
Process-relevant information concerning the business object 'product'

            specialPackaging

integer

product packing information (sonderverpackung, tuetenKz)
Product packing information indicates whether an article is bagable

Minimum: 0
Maximum: 9

            warehouseAreaType

integer (enum)

warehouse area type (wbkz)
Classifies an article with regard to the warehouse area, provides information about e. g. Sorter-Ability, Risk of theft, etc.

Any of: [ 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18 ]

        packingUnit

object

packing unit (packstueck)
Attributes concerning the packing unit

            geometry

object

geometric data of the packing unit
includes the geometric data of the packing unit

                length

integer

length
Length in mm

Minimum: 0
Maximum: 99999

                width

integer

width
Width in mm

Minimum: 0
Maximum: 99999

                height

integer

height
Height in mm

Minimum: 0
Maximum: 99999

                weight

integer

weight
Weight in g

Minimum: 0
Maximum: 9999999

                volume

integer

volume
volume in dl

Minimum: 0
Maximum: 9999999

            autoSorting

boolean

auto-sortable flag
Provides information about whether the product is auto-sortable or not.

            autoSortingTypes

array

auto-sorting-types listing
Provides information about on which auto-sorter type the product can be handled.

                (Array item)

object

                    type*

string (enum)

auto-sorter-type identification
Identifies the auto-sorter type.

Any of: [ "BEUMER_BIG_POCKET_MANUAL", "BEUMER_BIG_POCKET_AUTO", "SPLIT_TILT_TRAYSORTER" ]

                    capable*

boolean

Capable - flag concerning the auto-sorter type
Identifies, if the product can be handled on a specific auto-sorter type.

            temptsTheft

boolean

theft-prone flag
Provides information about whether the product is theft-prone or not.

3 -

3.1 -

Property Type Description

(Root)

object

Schema for Supplier Master Data from ERP to FINE, 'single'-variant
A Supplier with all its associated data. Variant of the schema to send a single dataset.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional spanID.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: SUPPLIER_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.2.0

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string

Name of the source system, that has sent this message.

Maximum Length: 30

        company*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client system, this dataset should be sent to. LSAS uses this for filtering the messages.

            (Array item)

string

Maximum Length: 30

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        active*

boolean

active flag
Provides information about whether the supplier is active (true) or inactive/deleted (false)

        identification*

object

identification of the business object
technical and business - identifiers concerning the business object 'supplier'

            erpSupplierId*

string

technical ID 'erp supplier ID'
Unique technical key of the ERP for this supplier. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a supplier.

Maximum Length: 36

            supplierId

integer

supplier ID (LKZ)
Unique ID for the supplier (currently only known for Otto ERP), used by KR1 to identify the main supplier

Minimum: 0
Maximum: 999999

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'supplier'

            ownerCompany*

string

stock owner company (bestandsfirma)
stock owner company for the supplier

Maximum Length: 30

        supplier*

object

supplier
basic supplier information

            supplierName*

string

name of the supplier
Provides information about the name of the supplier.

Maximum Length: 35

            creditorNumber

integer

number of the creditor
Provides information about the creditor number of a supplier.

Minimum: 0
Maximum: 9999999999

        address

object

suppliers address
address information of the supplier

            addressName

string

name of the supplier (address header)
Provides information about the name of the supplier in the address header.

Maximum Length: 100

            addressStreet

string

address street
Provides information about the name of the street, where the supplier is located.

Maximum Length: 100

            addressZip

string

address ZIP Code
Provides information about the ZIP - code, where the supplier is located.

Maximum Length: 10

            addressCity

string

address city
Provides information about the name of the city, where the supplier is located.

Maximum Length: 100

            addressCountryCode

string

address country code
Provides information about the address country code of the suppliers origin (ISO standard).

Maximum Length: 2

3.2 -

Property Type Description

(Root)

object

Schema for Supplier Master Data from FINE to the WMS
A Supplier with all its associated data.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: SUPPLIER_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.2.0

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string (const)

Sender of the message
Name of the source system, that has sent this message.

Constant: LSAS

        sourceSystem*

string

The system that produced this dataset and originally sent it to LSAS. Usually an ERP-system.

Maximum Length: 30

        sourceCompany*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client systems this dataset is relevant for. Used for filtering for the different client systems.

            (Array item)

object

                client*

string

Name of client system.

Maximum Length: 30

                status*

string (enum)

Export status
Status to show, if a client should receive this dataset. RELEVANT - client must receive it, REMOVED - previously this item was relevant for a client, now it must be deleted (client must take care to delete the dataset by itself)

Any of: [ "RELEVANT", "REMOVED" ]

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        creationTime*

string (date-time)

Creation timestamp
Time of creation of the supplier in LSAS in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        updateTime*

string (date-time)

Last update timestamp
Time of last update in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        deletionTime

string (date-time)

Deletion timestamp
Time of the deletion of this supplier (when the active flag switched to false) in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        active*

boolean

active flag
Provides information about whether the supplier is active (true) or inactive/deleted (false)

        identification*

object

identification of the business object
technical and business - identifiers concerning the business object 'supplier'

            erpSupplierId*

string

technical ID 'erp supplier ID'
Unique technical key of the ERP for this supplier. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a supplier.

Maximum Length: 36

            logisticsSupplierId

string

technical ID 'logistics supplier ID'
Unique technical key in all logistics systems, assigned by LSAS. must be used in all communication between logistics systems and FINE, when referencing a supplier.

Maximum Length: 36

            supplierId

integer

supplier ID (LKZ)
Unique ID for the supplier (currently only known for Otto ERP), used by KR1 to identify the main supplier

Minimum: 0
Maximum: 999999

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'supplier'

            ownerCompany*

string

stock owner company (bestandsfirma)
stock owner company for the supplier

Maximum Length: 30

        supplier*

object

supplier
basic supplier information

            supplierName*

string

name of the supplier
Provides information about the name of the supplier.

Maximum Length: 35

            creditorNumber

integer

number of the creditor
Provides information about the creditor number of a supplier.

Minimum: 0
Maximum: 9999999999

        address

object

suppliers address
address information of the supplier

            addressName

string

name of the supplier (address header)
Provides information about the name of the supplier in the address header.

Maximum Length: 100

            addressStreet

string

address street
Provides information about the name of the street, where the supplier is located.

Maximum Length: 100

            addressZip

string

address ZIP Code
Provides information about the ZIP - code, where the supplier is located.

Maximum Length: 10

            addressCity

string

address city
Provides information about the name of the city, where the supplier is located.

Maximum Length: 100

            addressCountryCode

string

address country code
Provides information about the address country code of the suppliers origin (ISO standard).

Maximum Length: 2

4 -

4.1 -

Property Type Description

(Root)

object

Schema for Supplier-Product Master Data from ERP to FINE, 'single'-variant
A Supplier-Product with all its associated data. Variant of the schema to send a single dataset.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional spanID.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: SUPPLIER_PRODUCT_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.1.4

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string

Name of the source system, that has sent this message.

Maximum Length: 30

        company*

string

Name of the source company.

Maximum Length: 30

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        active*

boolean

active flag
Provides information about whether the supplier-product is active (true) or inactive/deleted (false)

        identification*

object

identification of the business object
technical and business - identifiers concerning the business object 'supplier-product'

            erpSupplierProductId*

string

technical ID 'erp supplier product ID'
Unique technical key of the ERP for this supplier-product. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a supplier-product.

Maximum Length: 36

            erpProductId*

string

technical ID 'erp product ID'
Unique technical key of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp. Needed in this interface for refering to the concrete product.

Maximum Length: 36

            erpSupplierId*

string

technical ID 'erp supplier ID'
Unique technical key of the ERP for this supplier. Within logistics and FINE only unique in combination with the sourceErp. Needed in this interface for refering to the concrete supplier.

Maximum Length: 36

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'supplier-product'

            ownerCompany*

string

stock company ID (bestandsfirma)
stock-owner company for the supplier-product

Maximum Length: 30

        supplierProduct*

object

supplier-product
basic supplier-product information

            productNameSupplier

string

product name used by the supplier
Provides information about, which product name the supplier is using.

Maximum Length: 35

            supplierSize

string

product - size defined by supplier
Provides information about the product size, defined by a specific supplier. Can be used for supplier-specific size-scaling.

Maximum Length: 18

            ean

array

list of EAN
Provides a list of EANs and additional meta information concerning the single EANs.

Minimum number of items 0
Maximum number of items: 99

                (Array item)

object

Additional Properties: false

                    ean*

integer

The EAN number
The EAN number itself.

Minimum: 0
Maximum: 9999999999999

                    active*

boolean

active flag
Provides information about whether the EAN is active (true) or inactive/deleted (false).

                    eanPriority*

integer

priority of the EAN on a printed content list
Priority of the EAN on a printed content list. EAN always has lowest priority (=1).

Minimum: 1
Maximum: 9

            goodsReceiptAllowed

boolean

goods receipt allowed - flag
Provides information on wether goods receipt is allowed for this supplier-product. Older supplier-products have to be active to provide EAN information for existing stock.

            testingAccuracy

string (enum)

testing accuracy
Needed for the 'offline' sample drawing in QA-process (Prüfschärfe) (sample calculation according to DIN ISO 2859). Enum related to german usage: "R"eduziert = AQL-based test method with reduced testing accuracy "N"ormal = AQL-based test method with normal testing accuracy "V"erschärft = AQL-based test method with higher testing accuracy "T" One-Part-Testing "1 Teil prüfen" "I" One-Part-Identification "1 Teil identifizieren" "S" One-Part-Visual inspection "1 Teil prüfen" "K" no testing = QA-examination not needed.

Any of: [ "R", "N", "V", "T", "I", "S", "K" ]

            testingLevel

integer

Needed for the 'offline' sample drawing in QA-process (Prüfniveau) (sample calculation according to DIN ISO 2859).

Minimum: 0
Maximum: 9

            acceptableQualityLimit

integer

Needed for the 'offline' sample drawing in QA-process (AQL) (sample calculation according to DIN ISO 2859).

Minimum: 0
Maximum: 99

            salesUnit

string (enum)

sales unit
Provides information about the kind of sales unit.

Any of: [ "NOT_DEFINED", "PIECE", "PAIR" ]

            supplierType

integer

supplier type
Each product can be supplied by several suppliers. This attribute provides information about the supplier-type (first to ninth supplier). 1=Primary supplier, >1=Alternative supplier.

Minimum: 1
Maximum: 9

            returnsHandling

integer

returns handling identification
Provides information about the kind of returns handling.

Minimum: 0
Maximum: 18

            supplierSequence

integer

supplier-sequence
Provides information about the position of the supplier within the supplier-sequence.

Minimum: 0
Maximum: 9

            approvedPurchasePrice

integer

approved purchase price
Provides information about the approved purchase price of a product.

Minimum: 0
Maximum: 999999999999

4.2 -

Property Type Description

(Root)

object

Schema for Supplier-Product Master Data from FINE to WMS
A Supplier-Product with all its associated data.

    eventId*

string

The unique eventId
Unique id for this event, set by the sender of the message. It is recommended to be set as a uuid.

    traceId*

string

The unique traceId
Unique id to trace the event/request through several systems. Also used for storing a reference to the original message payload. It is recommended to be set as a uuid.

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case = MASTERDATA
The optional context specified here means the business domain. Always 'MASTERDATA'

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record = SUPPLIER_PRODUCT_UPDATE
The concrete type record. Always 'SUPPLIER_PRODUCT_UPDATE'

Constant: SUPPLIER_PRODUCT_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.1.4

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string (const)

Sender of the message
Name of the source system, that has sent this message.

Constant: LSAS

        sourceSystem*

string

The system that produced this dataset and originally sent it to LSAS. Usually an ERP-system.

Maximum Length: 30

        sourceCompany*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client systems this dataset is relevant for. Used for filtering for the different client systems.

            (Array item)

object

                client*

string

Name of client system.

Maximum Length: 30

                status*

string (enum)

Export status
Status to show, if a client should receive this dataset. RELEVANT - client must receive it, REMOVED - previously this item was relevant for a client, now it must be deleted (client must take care to delete the dataset by itself)

Any of: [ "RELEVANT", "REMOVED" ]

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        creationTime*

string (date-time)

Creation timestamp
Time of creation of the supplier-product in LSAS in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        updateTime*

string (date-time)

Last update timestamp
Time of last update in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        deletionTime

string (date-time)

Deletion timestamp
Time of the deletion of this supplier-product (when the active flag switched to false) in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        active*

boolean

active flag
Provides information about whether the supplier-product is active (true) or inactive/deleted (false)

        identification*

object

identification of the business object
technical and business - identifiers concerning the business object 'supplier-product'

            erpSupplierProductId*

string

technical ID 'erp supplier product ID'
Unique technical key of the ERP for this supplier-product. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a supplier-product.

Maximum Length: 36

            logisticsSupplierProductId*

string

technical ID 'logistics supplier-product ID'
Unique technical key in all logistics systems, assigned by LSAS. Must be used in all communication between logistics systems and FINE, when referencing a supplier-product.

Maximum Length: 36

            logisticsProductId*

string

technical ID 'logistics product ID'
Unique technical key in all logistics systems, assigned by LSAS. Must be used in all communication between logistics systems and FINE, when referencing a product.

Maximum Length: 36

            logisticsSupplierId*

string

technical ID 'logistics supplier ID'
Unique technical key in all logistics systems, assigned by LSAS. must be used in all communication between logistics systems and FINE, when referencing a supplier.

Maximum Length: 36

            productNumber

integer

product number (artikelNummer)
Part of a deprecated combination of attributes, used for unique (business-)identification of a product in the warehouses. In this interface only needed by COBRA.

Minimum: 0
Maximum: 99999999

            sizeNumeric

integer

numerical product size (groesseNumerisch)
Part of a deprecated combination of attributes, used for unique (business-)identification of a product in the warehouses. In this interface only needed by COBRA.

Minimum: 0
Maximum: 999

            supplierId

integer

supplier ID (LKZ)
Part of a deprecated combination of attributes, used for unique (business-)identification of a product in the warehouses. In this interface only needed by COBRA.

Minimum: 0
Maximum: 999999

            season

integer

season (bestandsSaison)
Part of a deprecated combination of attributes, used for unique (business-)identification of a product in the warehouses. In this interface only needed by COBRA.

Minimum: 100
Maximum: 999

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'supplier-product'

            ownerCompany*

string

stock company ID (bestandsfirma)
stock-owner company for the supplier-product

Maximum Length: 30

        supplierProduct*

object

supplier-product
basic supplier-product information

            productNameSupplier

string

product name used by the supplier
Provides information about, which product name the supplier is using.

Maximum Length: 35

            supplierSize

string

product - size defined by supplier
Provides information about the product size, defined by a specific supplier. Can be used for supplier-specific size-scaling.

Maximum Length: 18

            ean

array

list of EAN
Provides a list of EANs and additional meta information concerning the single EANs.

Minimum number of items 0
Maximum number of items: 99

                (Array item)

object

Additional Properties: false

                    logisticsEanId*

string

technical ID 'logistics EAN ID'
Unique technical key for an EAN, assigned by LSAS, used between LSAS and logistics systems.

Maximum Length: 36

                    ean*

integer

The EAN number
The EAN number itself.

Minimum: 0
Maximum: 9999999999999

                    active*

boolean

active flag
Provides information about whether the EAN is active (true) or inactive/deleted (false).

                    deletionTime

string (date-time)

Time of deletion (active = false) of the EAN
Time at which this EAN was deleted/inactivated. Generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

                    eanPriority*

integer

priority of the EAN on a printed content list
Priority of the EAN on a printed content list. EAN always has lowest priority (=1).

Minimum: 1
Maximum: 9

            goodsReceiptAllowed

boolean

goods receipt allowed - flag
Provides information on wether goods receipt is allowed for this supplier-product. Older supplier-products have to be active to provide EAN information for existing stock.

            testingAccuracy

string (enum)

testing accuracy
Needed for the 'offline' sample drawing in QA-process (Prüfschärfe) (sample calculation according to DIN ISO 2859). Enum related to german usage: "R"eduziert = AQL-based test method with reduced testing accuracy "N"ormal = AQL-based test method with normal testing accuracy "V"erschärft = AQL-based test method with higher testing accuracy "T" One-Part-Testing "1 Teil prüfen" "I" One-Part-Identification "1 Teil identifizieren" "S" One-Part-Visual inspection "1 Teil prüfen" "K" no testing = QA-examination not needed.

Any of: [ "R", "N", "V", "T", "I", "S", "K" ]

            testingLevel

integer

Needed for the 'offline' sample drawing in QA-process (Prüfniveau) (sample calculation according to DIN ISO 2859).

Minimum: 0
Maximum: 9

            acceptableQualityLimit

integer

Needed for the 'offline' sample drawing in QA-process (AQL) (sample calculation according to DIN ISO 2859).

Minimum: 0
Maximum: 99

            salesUnit

string (enum)

sales unit
Provides information about the kind of sales unit.

Any of: [ "NOT_DEFINED", "PIECE", "PAIR" ]

            supplierType

integer

supplier type
Each product can be supplied by several suppliers. This attribute provides information about the supplier-type (first to ninth supplier). 1=Primary supplier, >1=Alternative supplier.

Minimum: 1
Maximum: 9

            returnsHandling

integer

returns handling identification
Provides information about the kind of returns handling.

Minimum: 0
Maximum: 18

            supplierSequence

integer

supplier-sequence
Provides information about the position of the supplier within the supplier-sequence.

Minimum: 0
Maximum: 9

            approvedPurchasePrice

integer

approved purchase price
Provides information about the approved purchase price of a product.

Minimum: 0
Maximum: 999999999999

5 -

5.1 -

Property Type Description

(Root)

object

Schema for response message from LSAS, Version 1
Contains LSAS response (either ok or with errors) to a previous message from another system (ERP or WMS). Reference to the previous message is possible by the traceId and the entityId.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (enum)

The concrete type record.
The concrete type record.

Any of: [ "PRODUCT_RESPONSE", "SUPPLIER_RESPONSE", "SUPPLIER_PRODUCT_RESPONSE", "LOGISTICAL_DATA_RESPONSE" ]

    version*

string (const)

The number of version of schema
Number of version of this data structure. A sematic specification with major & minor version numbers

Constant: 1.1

    metaData*

object

additional meta information
additional meta information

        sender*

string (const)

Sender of the message
Name of the source system, that has sent this message.

Constant: LSAS

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        logisticsEntityId

string

Technical ID of the referenced entity in LSAS
The ID references the LSAS-LogisticsID for the business object (e.g. logisticsProductId, logisticsSupplierId, etc.).

Maximum Length: 36

        entityId*

string

technical ID of the referenced entity within the message
depending on the eventType (e.g. PRODUCT_RESPONSE or SUPPLIER_RESPONSE), the ID references the business object (e.g. erpProductId, erpSupplierId).

Maximum Length: 36

        status*

boolean

Status
Status: true=message was accepted and processed by LSAS; false=LSAS could not process the message, see code and description in the errors-section for further details

        detailedStatus*

string (enum)

Detailed information about the outcome of the message received.

Any of: [ "INSERTED", "UPDATED", "UNCHANGED", "INSERT_REJECTED", "UPDATE_REJECTED", "INTERNAL_ERROR", "UNAVAILABLE" ]

        errors

array

            (Array item)

object

                code*

integer

                description

string

6 - M01 Product

1. Business Context

The service is used for the distribution of master data from the retailer to all consumers on the logistics side as well as in the FINE applications (e.g. FLASH, RESY). The retailers send their master data to LSAS. Here the product master is stored and enriched with attributes, e. g. identifiers like logisticsProductId.

Master data is identified differently depending on the merchant and the system. To standardize this, the logisticsProductID is used in FINE. It encapsulates the specifics of the merchants. All FINE apps and all WMS/return systems must identify products with this ID in the interfaces.

For more details to LSAS see also here.

2. Interfaces

2.1. Direction ERP to FINE

LSAS provides an interface to receive product data provided by an ERP-system. This interface is currently provided as REST-interface, reading a list of products.

Version 1.0 has reached end of life and is no longer supported.

Starting from version 2.0, LSAS is additionally providing a kafka-topic, where an ERP-system can send the product data with one dataset per message. All messages are validated and a response is provided on another topic. See: Response. For new systems, the connection with kafka is preferable to a REST-connection. Systems already connected to the REST-interface should consider to migrate to the kafka-solution.

2.1.1. Header

Since version 2.0 the Service Header is used.

2.1.2. Datamodel of upcoming version 2.8.0 ('single'-variant)

A Product with all its associated data. Variant of the schema to send a single dataset.

Property Type Description

(Root)

object

Schema for Product Master Data from ERP to FINE, 'single'-variant
A Product with all its associated data. Variant of the schema to send a single dataset.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional spanID.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: PRODUCT_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.8.0

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string

Name of the source system, that has sent this message.

Maximum Length: 30

        company*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client system, this dataset should be sent to. LSAS uses this for filtering the messages.

            (Array item)

string

Maximum Length: 30

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        active*

boolean

active flag
Provides information about whether the product is active (true) or inactive/deleted (false).

        identification*

object

identification of the business object
Technical and business - identifiers concerning the business object 'product'.

            erpProductId*

string

technical ID 'erp product ID'
Unique technical key of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp. must be used for all communication with an ERP referencing a product.

Maximum Length: 36

            erpProductCode

string

erpProductCode (erpSchluesselFachlich)
Unique business identifier of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp.

Maximum Length: 36

            ownerCompanyProductCode

string

ownerCompanyProductCode (referenzArtikelNummer)
Unique business identifier of the stock-owner company for this product. Within logistics and FINE only unique in combination with the owner company.

Maximum Length: 36

            itemoptioncommkey

string

technical key, provided by ERP
Created and transmitted via LDH to LSAS, unique within this ERP; needed by KR1- and COBRA-system for parallel testing (deprecated afterwards).

Maximum Length: 18

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'product'

            ownerCompany*

string

stock company ID (bestandsfirma)
stock-owner company for the product

Maximum Length: 30

            sourceOwnerCompany

string

stock company origin (firmenHerkunft)
Original stock company before the conversion to Corso, relevant for bookings to ERP. Mandatory field if ownerCompany = CORSO

Maximum Length: 30

        product*

object

product
basic product information

            productName*

string

product description (shortened, optimized for logistics use-cases)
Name/short description of the product

Maximum Length: 18

            productNumber*

integer

product number (artikelNummer)
Product number, used in warehouses to identify a product. Will be replaced later by new business and technical identifiers.

Minimum: 0
Maximum: 99999999

            size*

string

alphanumerical product size (groesseLogistisch)
Product size as String. For OTTO-Products the maxLength is 3 characters due to restrictions in consuming systems.

Maximum Length: 10

            sizeNumeric

integer

numerical product size (groesseNumerisch)
Numerical product size (OTTO-specific legacy-attribute). Alphanumerical sizes can be mapped to numerical sizes using a mapping table (see further documentation).

Minimum: 0
Maximum: 999

            orderSize

string

additional - freely defined - alphanumerical product size
Size which was used for purchase and thus used for declaration of packages in the goods in processes. Can be freely defined by the producer of the message.

Maximum Length: 18

            eans

array

list of alternative EANs
Provides a list of EANs and additional meta information concerning the single EANs.

Minimum number of items 0
Maximum number of items: 99

                (Array item)

object

Additional Properties: false

                    ean*

integer

The EAN number
The EAN number itself.

Minimum: 0
Maximum: 9999999999999

                    active*

boolean

active flag
Provides information about whether the EAN is active (true) or inactive/deleted (false).

                    eanPriority*

integer

priority of the EAN on a printed content list
Priority of the EAN on a printed content list. EAN always has lowest priority (=1). Primary EAN should have priority 1. The rest should be correlative numbers >1.

Minimum: 1
Maximum: 9

            season

integer

season (bestandsSaison)
Season in which the article is used, OTTO-specific encoding

Minimum: 0
Maximum: 999

            color

string

simplified color (farbe) description
Simplified color description of the product for logistical processes.

Maximum Length: 12

            style

string

style information (style)
Style information for the packing slip. Appears on the print document ContentList (COBRA). According to NEON also relevant for PL

Maximum Length: 14

            imageUrls

array

array of image URLs
List of image URLs.

                (Array item)

string

image URL

Maximum Length: 256

            standardPrice

integer

selling price in cents (verkaufsPreis)
Selling price of the product in cents

Minimum: 0
Maximum: 9999999

            salesBrand

string

salesbrand (markenName)
salesbrand, e.g. Nike, Marco Polo, Jack & Jones

Maximum Length: 35

            partsQuantity

integer

number of parts (anzahlTeile)
The number of individual parts of an product within the package (must not be confused with the number of packages). Required for returns processing to determine if the product was returned complete. Example: double pack of T-shirts = 2 parts, bikini = 2 parts. The ERP determines which items should carry this attribute. The decision is mainly based on the meaningfulness (no puzzles, no Lego, small items are not checked for completeness in the return). Default value is then 1.

Minimum: 0
Maximum: 1000000000000000000

            measuringUnit*

string (enum)

measuring unit (mengeneinheit)
Identifies the measuring unit. PIECE = piece goods, LENGTH_VARIABLE = length can be specified but width is fixed (e.g. for curtains, fabric,…​), LENGTH_AND_WIDTH_VARIABLE = lenght and width can be specified (e.g. for custom made pleats)

Any of: [ "PIECE", "LENGTH_VARIABLE", "LENGTH_AND_WIDTH_VARIABLE" ]

            logisticsType*

string (enum)

logistics type (Lagerbestandstyp)
The logistics type should provide information on whether the product is a parcel logistics (Paketlogistik) or a bulky items logistics (Großstuecklogistik) product.

Any of: [ "PARCEL", "BULKY", "UNKNOWN" ]

            handlingType

string (enum)

type of handling (handlingId)
Indicates, how the product is going to be handled. ONE_MAN_HANDLING and TWO_MAN_HANDLING products belong to the bulky items logistics (GL).

Any of: [ "ONE_MAN_HANDLING", "TWO_MAN_HANDLING", "PARCEL", "HANGING_CONFECTION" ]

            productGroup

integer

product group (marktId)
Classification of products (phone, watch, cosmetics, etc.)

Minimum: 0
Maximum: 999

            assortmentClassification

array

use case based assortment classification
Provides information about specific assortments, differentiated by requirements of specific processes.

                (Array item)

object

                    process*

string (enum)

process
Identifies the process, which specifies the permissibility of the transmitted assortment.

Any of: [ "RETURNS_EVALUATION", "RETURNS_BILLING" ]

                    assortment*

integer

assortment ID
Identifies the assortment, which is connected to a process and its specific requirements.

Minimum: 0
Maximum: 999

            organic

object

organic characteristics of the product
Provides information about the organic characteristics of the product.

                hasOrganicCertification*

boolean

organic identification
Provides information on whether the product is an organic good.

                certificationType

string (enum)

type of organic certification
Identifies the type of organic certification of the product.

Any of: [ "GOTS" ]

            batchHandling

boolean

Batch Handling for this product required
This product requires a batch number (chargenNummer) and specific handling, e.g. the batch number of each item must be recorded in the inbound process and all items within an order must have the same batch number in the outbound process.

            shippingFromSupplier

boolean

shipping from supplier (VAL-Artikel)
Identifies, if the product is shipped directly from the supplier or not.

            deliveryScope

array

array of components of the delivery scope
List components of the delivery scope.

                (Array item)

string

component

Maximum Length: 256

            additionalNote

string

additional note (free text)
An additional note about the product, which can be freely defined.

Maximum Length: 1024

            partnerInformation

object

partner
Basic partner information.

                erpPartnerId*

string

ERP ID of partner.
ID of partner used by ERP.

Maximum Length: 36

                erpPartnerName*

string

Name of partner.
Name of partner.

Maximum Length: 36

        dangerousGoodsIdentification

object

dangerous goods characteristics of the product
Includes all relevant dangerous goods information concerning the product.

            dangerous

boolean

dangerous goods identification
Provides information on whether the product is a dangerous good.

            dangerousGoodsType

string (enum)

dangerous goods type
Provides information about the dangerous goods type.

Any of: [ "G01", "G02", "G03", "G04", "G05", "G06", "G07", "G08", "G09", "G10", "G11", "G12", "G13", "G14" ]

            physicalState

string

physical state
Provides information about the physical state of the product.

Maximum Length: 50

            accumulatorCapacity

string

accumulator capacity
Provides information about the accumulator capacity of the product in mAh.

Maximum Length: 20

            numberOfAccumulators

string

number of accumulators
Provides information about the number of accumulators of the product, between 1 and 10.

Maximum Length: 20

            numberOfBatteries

string

number of batteries
Provides information about the number of batteries of the product, between 1 and 10.

Maximum Length: 20

            batteryOrAccumulatorTechnology

string

battery or accumulator technology
Provides information about the battery or accumulator technology.

Maximum Length: 1024

            transportCategoryDangerousGoods

string

transport category dangerous goods
Provides information about the transport category of dangerous goods, between 0 and 4.

Maximum Length: 1

            clpHazardPictogram

array

hazard pictogram array
A hazard pictogram is a picture on a label with a warning symbol and certain colors to provide information about the damage that a certain substance or mixture can do to our health or the environment.

                (Array item)

string

hazard pictogram

Maximum Length: 1024

            clpProductLabel

string

product label
The attribute describes whether a CLP-product label is necessary.

Maximum Length: 1024

            clpSafetyDataSheet

string

safety data sheet
The safety data sheet is the central element of communication in the supply chain for hazardous substances and mixtures. It provides the user of chemicals with important information on the identity of the product.

Maximum Length: 1024

            dangerWarnings

array

danger warnings array
Packaging that contains dangerous substances or a dangerous mixture must be labeled to protect the user and the environment.

                (Array item)

string

danger warning

Maximum Length: 1024

            weightBatteriesOrAccumulator

string

weight of batteries or accumulator
Weight batteries/accumulator // Free field (without specifications)/indication of the mass of the installed or enclosed accumulator or battery in g.

Maximum Length: 20

            content

string

content
freetxt // specification of the content of the product.

Maximum Length: 4096

            storageCategoryHazardousMaterial

string

storage category hazardous material
A list of different storage classes.

Maximum Length: 20

            accumulatorPower

string

accumulator power
The specification of accumulator power in Wh. // Freetext

Maximum Length: 20

            deliveryConditionBatteriesOrAccumulators

string

delivery condition of batteries or accumulators
Information on whether a battery or accumulator is built into the product or if it is separated from the product.

Maximum Length: 1024

            limitedQuantityOfDangerousGoods

string

limited quantity of dangerous goods
Limited Quantities (LQ) is the abbreviation for the term dangerous goods, which are packed in limited amounts, that is stated by dangerous goods regulation.

Maximum Length: 1024

            testSummaryLithiumBatteries

string

test summary of lithium batteries
Test summary lithium batteries.

Maximum Length: 1024

            qualityAssuranceProgramLithiumBatteries

string

quality assurance program lithium batteries
Quality assurance program lithium batteries.

Maximum Length: 1024

            relevanceClpObligation

string

relevance of CLP obligation
The CLP regulation deals with the question, whether a substance or mixture has properties that can be considered as dangerous.

Maximum Length: 1024

            relevanceClpDangerousGoods

string

relevance of CLP
Relevance of CLP

Maximum Length: 1024

            safetyInstructions

array

safety instructions array
List of up to 127 safety notes

                (Array item)

string

safety instruction

Maximum Length: 1024

            signalWord

string

signal word
CAUTION/DANGER: The signal word indicates the level of danger and severity of injury or property damage.

Maximum Length: 50

            specialProvisionDangerousGoods

string

special provision of dangerous goods
For certain substances or objects the special regulations are applied, through which the shipping of these substances or objects is wholly or partially exempt from the regulations of the ADR. ADR: European agreement concerning the international carriage of dangerous goods by road.

Maximum Length: 1024

            accumulatorVoltage

string

accumulator voltage
The attribute describes the different voltages of accumulators.

Maximum Length: 50

            languagesClpSafetyDataSheet

string

languages clp safety data sheet
list of 28 languages

Maximum Length: 50

            unNumber

string

UN number
specification of UN-number

Maximum Length: 1024

            unStandardTestLithiumBatteries

string

UN standard test lithium batteries
The UN 38.3 test ensures that lithium batteries can be shipped safely.

Maximum Length: 1024

            packingGroupsDangerousGoods

string

packing groups dangerous goods
Assignment of different packing groups, selection 1-3.

Maximum Length: 50

            netQuantityWeight

string

net quantity weight
Specification of the net quantity of the product in gram (g).

Maximum Length: 20

            netQuantityPiece

string

net quantity piece
Specification of the net quantity of the product in piece (pc).

Maximum Length: 20

            netQuantityVolume

string

net quantity volume
Specification of the net quantity of the product in volume (ml).

Maximum Length: 20

        ottoSpecificProcessing

object

process-relevant information concerning the business object, specific attributes for Otto and Bonprix products
Process-relevant information concerning the business object 'product'

            priorityInbound

boolean

priority for inbound processes (chefKz)
Product will be prioritized for inbound processes (true=yes, false=no). Bonprix only.

            priorityDelivery

integer

priority for delivery (deliveryFlag, NAB_Kz)
Product will be prioritized for delivery according to the level set. Bonprix only.

Minimum: 0
Maximum: 5

            specialPackaging

integer

product packing information (sonderverpackung, tuetenKz)
Product packing information indicates whether an article is bagable

Minimum: 0
Maximum: 9

            warehouseAreaType*

integer (enum)

warehouse area type (WBKZ)
Classifies an article with regard to the warehouse area, provides information about e. g. Sorter-Ability, Risk of theft, etc.

Any of: [ 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18 ]

            returnsSortCode*

integer

returns sort code (retourenSortierId)
Each article has a standard return destination that is stored in the master data

Minimum: 0
Maximum: 999

            oneStopShopping

boolean

one stop shopping code (AbwicklungsartOss)
Indicates if an product is processed as one stop shopping; true=OSS, false=no OSS

            supplierId

integer

supplier ID (LKZ)
Unique ID for the supplier (currently only known for Otto ERP), used by KR1 to identify the main supplier

Minimum: 0
Maximum: 999999

            disposal

integer (enum)

disposal (verwendung)
Indicates the current usage of an article

Any of: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 18, 19 ]

            enclosures

array

enclosures array (beilagen)
List of enclosures.

Minimum number of items 0
Maximum number of items: 3

                (Array item)

string

enclosure ID

Maximum Length: 4

            groupCodeComposed

integer

product group detail code (warengruppeGesamt)
Composed group Code

Minimum: 0
Maximum: 999

            groupCodeBuying*

integer

buying group code (warengruppeFuehrungsTeam)
Optional filter for the removal of goods, goods are classified by these attributes (needed for COBRA)

Minimum: 0
Maximum: 99

            groupCodeMerchandise*

integer

merchandise group code (warengruppeOperativesTeam)
Optional filter for the removal from storage, goods are classified by these attributes (needed for COBRA)

Minimum: 0
Maximum: 9

            reconditionCode

integer

recondition code (wiederaufbereitung)
Code for the routing label for rework of returned articles

Minimum: 0
Maximum: 9

            individualization

integer

individualization (individualisierung)
Indicates if an article has embossing or engraving

Minimum: 0
Maximum: 9

            expeditionCode

integer

encoding for process-handling of bulkyItems (versandschluessel)
Encoding for process-handling of bulkyItems, includes transport system, goods distribution centre, etc.

Minimum: 0
Maximum: 9999999

            checkRoomCode

integer

check room code (pruefraumId)
Testroom ID to filter removal from storage - results from quality tests

Minimum: 0
Maximum: 5

            ownershipId

integer (enum)

ownership of the product (verfuegbarkeitsId)
The attribute is used to logistically distinguish certain groups of goods. E.g. for stock removal processes (e. g. to prevent throughput goods from being outsourced); 0=OWN_GOODS, 1=EXTERNAL_GOODS_CONSIGNMENT, 3=EXTERNAL_GOODS_THROUGHPUT, 9=UNKNOWN.

Any of: [ 0, 1, 3, 9 ]

            location

integer (enum)

master warehouse ID (stammlager)
The master warehouse provides information about where an article comes from.

Any of: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 40, 43, 47, 48, 49, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 88, 92, 99 ]

            returnsVolumeClass

integer

volume class of an article (retourenVolumenklasse)
Volume class of an article, categorized in IDs.

Minimum: 0
Maximum: 13

        packingUnits*

array

packing units array (packstuecke)
List of all packing units

Minimum number of items 1
Maximum number of items: 99

            (Array item)

object

                identification*

object

identification of the packing unit
technical and business - identifiers concerning the packing unit

                    erpPackingUnitId*

string

ERP packing unit ID
Common technical key between LSAS and ERP.

Maximum Length: 36

                    packingUnitIndex

integer

Index of the packing unit (packstueckNr)
Index (number, starting with 1) of this packing unit within the list of all packing unit. If more than one packing unit is present, the packingUnitIndex is required.

Minimum: 1
Maximum: 99

                packingUnitDescription

string

ERP packing unit description
Describes in particular what is inside a packing unit.

Maximum Length: 1024

                geometry

object

geometric data of the packing unit
includes the geometric data of the packing unit

                    length

integer

length
Length in mm

Minimum: 0
Maximum: 99999

                    width

integer

width
Width in mm

Minimum: 0
Maximum: 99999

                    height

integer

height
Height in mm

Minimum: 0
Maximum: 99999

                    weight

integer

weight
Weight in g

Minimum: 0
Maximum: 9999999

                    volume

integer

volume
Volume in dl

Minimum: 0
Maximum: 9999999

2.1.3. Schema

Table 1. Version ERP to FINE
Version Status Changes

2.8.0-single
2.8.0-list

upcoming version

1. extend dangerousGoodsType by 'G14'
2. remove warehouseAreaType = 10
3. allow season < 100 per schema restrictions

2.7.2-single
2.7.2-list

current version

1. switch from global enum references to strings

2.7.1-single
2.7.1-list

previous version

1. new field partnerInformation

2.7.0-single
2.7.0-list

previous version

1. new fields ownerCompanyProductCode and packingUnitDescription

2.6.5-single
2.6.5-list

previous version

1. for company enums: switch from global enum references to strings

2.6.4-single
2.6.4-list

previous version

1. location and ownershipId no longer required by schema

2.6.3-single
2.6.3-list

previous version

1. Added eans array (used by LDH)

2.6.2-single
2.6.2-list

previous version

1. accept ownershipId = 9 when clientSystem = Resy
2. increased max. length of dangerousGoodsIdentification.content to 4096

2.6.1-single
2.6.1-list

previous version

1. update version field
2. update system(v9)-enum

2.6.0-single
2.6.0-list

previous version

1. switch from pattern to constant for field version
2. update company(v6)- and system(v8)-enum
3. remove obsolete field deliveryBlockingCode

2.5-single
2.5-list

previous version

1. New attributes for F2X - connection (shippingFromSupplier, deliveryScope, additionalNote, assortmentClassification)
2. Update of systems-enum (v6)
3. Update of company-enum (v5)

1.0-MT

deprecated version
(EOL. No longer supported)

initial version (released on 03.05.2022)

2.2. Direction FINE to WMS

Version 1.0 has reached end of life and is no longer supported.

2.2.1. Header

Since version 2.0 the Service Header is used.

2.2.2. Datamodel of upcoming version 2.8.0

A Product with all its associated data.

Property Type Description

(Root)

object

Schema for Product Master Data from FINE to WMS
A Product with all its associated data.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record = PRODUCT_UPDATE
The concrete type record. Always 'PRODUCT_UPDATE'

Constant: PRODUCT_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.8.0

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string (const)

Sender of the message
Name of the source system, that has sent this message.

Constant: LSAS

        sourceSystem*

string

The system that produced this dataset and originally sent it to LSAS. Usually an ERP-system.

Maximum Length: 30

        sourceCompany*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client systems this dataset is relevant for. Used for filtering for the different client systems.

            (Array item)

object

                client*

string

Name of client system.

Maximum Length: 30

                status*

string (enum)

Export status
Status to show, if a client should receive this dataset. RELEVANT - client must receive it, REMOVED - previously this item was relevant for a client, now it must be deleted (client must take care to delete the dataset by itself)

Any of: [ "RELEVANT", "REMOVED" ]

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        creationTime*

string (date-time)

Creation timestamp
Time of creation of the product in LSAS in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        updateTime*

string (date-time)

Last update timestamp
Time of last update in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        deletionTime

string (date-time)

Deletion timestamp
Time of the deletion of this product (when the active flag switched to false) in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        active*

boolean

active flag
Provides information about whether the product is active (true) or inactive/deleted (false).

        identification*

object

identification of the business object
Technical and business - identifiers concerning the business object 'product'.

            logisticsProductId*

string

technical ID 'logistics product ID'
Unique technical key in all logistics systems, assigned by LSAS. Must be used in all communication between logistics systems and FINE, when referencing a product.

Maximum Length: 36

            erpProductId*

string

technical ID 'erp product ID'
Unique technical key of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a product.

Maximum Length: 36

            erp*

string

ERP identifier
Identifies the ERP as producer of the message. In combination with the erpProductId it is unique.

Maximum Length: 30

            erpProductCode

string

erpProductCode (erpSchluesselFachlich)
Unique business identifier of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp.

Maximum Length: 36

            ownerCompanyProductCode

string

ownerCompanyProductCode (referenzArtikelNummer)
Unique business identifier of the stock-owner company for this product. Within logistics and FINE only unique in combination with the owner company.

Maximum Length: 36

            itemoptioncommkey

string

technical key, provided by ERP
Created and transmitted via LDH to LSAS, unique within this ERP; needed by KR1- and COBRA-system for parallel testing (deprecated afterwards).

Maximum Length: 18

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'product'

            ownerCompany*

string

stock company ID (bestandsfirma)
stock-owner company for the product

Maximum Length: 30

            sourceOwnerCompany

string

stock company origin (firmenHerkunft)
Original stock company before the conversion to Corso, relevant for bookings to ERP. Mandatory field if ownerCompany = CORSO

Maximum Length: 30

        product*

object

product
basic product information

            productName*

string

product description (shortened, optimized for logistics use-cases)
Name/short description of the product

Maximum Length: 18

            productNumber*

integer

product number (artikelNummer)
Product number, used in warehouses to identify a product. Will be replaced later by new business and technical identifiers like logisticsProductCode, logisticsProductId, erpProductId,…​

Minimum: 0
Maximum: 99999999

            size*

string

alphanumerical product size (groesseLogistisch)
Product size as String. For OTTO-Products the maxLength is 3 characters due to restrictions in consuming systems.

Maximum Length: 10

            sizeNumeric

integer

numerical product size (groesseNumerisch)
Numerical product size (OTTO-specific legacy-attribute). Alphanumerical sizes can be mapped to numerical sizes using a mapping table (see further documentation).

Minimum: 0
Maximum: 999

            orderSize

string

additional - freely defined - alphanumerical product size
Size which was used for purchase and thus used for declaration of packages in the goods in processes. Can be freely defined by the producer of the message.

Maximum Length: 18

            eans

array

list of EANs associated with this product
Provides a list of EANs and additional meta information concerning the single EANs.

Minimum number of items 0
Maximum number of items: 99

                (Array item)

object

Additional Properties: false

                    ean*

integer

The EAN number
The EAN number itself.

Minimum: 0
Maximum: 9999999999999

                    active*

boolean

active flag
Provides information about whether the EAN is active (true) or inactive/deleted (false).

                    eanPriority*

integer

priority of the EAN on a printed content list
Priority of the EAN on a printed content list. EAN always has lowest priority (=1). Primary EAN should have priority 1. The rest should be correlative numbers >1.

Minimum: 1
Maximum: 9

                    deletionTime

string (date-time)

Deletion timestamp
Time of the deletion of this ean (when the active flag switched to false) in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

            season

integer

season (bestandsSaison)
Season in which the article is used, OTTO-specific encoding

Minimum: 0
Maximum: 999

            color

string

simplified color (farbe) description
Simplified color description of the product for logistical processes.

Maximum Length: 12

            style

string

style information (style)
Style information for the packing slip. Appears on the print document ContentList (COBRA). According to NEON also relevant for PL

Maximum Length: 14

            imageUrls

array

array of image URLs
List of image URLs.

                (Array item)

string

image URL

Maximum Length: 256

            standardPrice

integer

selling price in cents (verkaufsPreis)
Selling price of the product in cents

Minimum: 0
Maximum: 9999999

            salesBrand

string

salesbrand (markenName)
salesbrand, e.g. Nike, Marco Polo, Jack & Jones

Maximum Length: 35

            partsQuantity

integer

number of parts (anzahlTeile)
The number of individual parts of an product within the package (must not be confused with the number of packages). Required for returns processing to determine if the product was returned complete. Example: double pack of T-shirts = 2 parts, bikini = 2 parts. The ERP determines which items should carry this attribute. The decision is mainly based on the meaningfulness (no puzzles, no Lego, small items are not checked for completeness in the return). Default value is then 1.

Minimum: 0
Maximum: 1000000000000000000

            measuringUnit*

string (enum)

measuring unit (mengeneinheit)
Identifies the measuring unit. PIECE = piece goods, LENGTH_VARIABLE = length can be specified but width is fixed (e.g. for curtains, fabric,…​), LENGTH_AND_WIDTH_VARIABLE = lenght and width can be specified (e.g. for custom made pleats)

Any of: [ "PIECE", "LENGTH_VARIABLE", "LENGTH_AND_WIDTH_VARIABLE" ]

            handlingType

string (enum)

type of handling (handlingId)
Indicates, how the product is going to be handled. ONE_MAN_HANDLING and TWO_MAN_HANDLING products belong to the bulky items logistics (GL).

Any of: [ "ONE_MAN_HANDLING", "TWO_MAN_HANDLING", "PARCEL", "HANGING_CONFECTION" ]

            productGroup

integer

product group (marktId)
Classification of products (phone, watch, cosmetics, etc.)

Minimum: 0
Maximum: 999

            assortmentClassification

array

use case based assortment classification
Provides information about specific assortments, differentiated by requirements of specific processes.

                (Array item)

object

                    process*

string (enum)

process
Identifies the process, which specifies the permissibility of the transmitted assortment.

Any of: [ "RETURNS_EVALUATION", "RETURNS_BILLING" ]

                    assortment*

integer

assortment ID
Identifies the assortment, which is connected to a process and its specific requirements.

Minimum: 0
Maximum: 999

            organic

object

organic characteristics of the product
Provides information about the organic characteristics of the product.

                hasOrganicCertification*

boolean

organic identification
Provides information on whether the product is an organic good.

                certificationType

string (enum)

type of organic certification
Identifies the type of organic certification of the product.

Any of: [ "GOTS" ]

            batchHandling

boolean

Batch Handling for this product required
This product requires a batch number (chargenNummer) and specific handling, e.g. the batch number of each item must be recorded in the inbound process and all items within an order must have the same batch number in the outbound process.

            shippingFromSupplier

boolean

shipping from supplier (VAL-Artikel)
Identifies, if the product is shipped directly from the supplier or not.

            deliveryScope

array

array of components of the delivery scope
List components of the delivery scope.

                (Array item)

string

component

Maximum Length: 256

            additionalNote

string

additional note (free text)
An additional note about the product, which can be freely defined.

Maximum Length: 1024

            partnerInformation

object

partner
Basic partner information.

                erpPartnerId*

string

ERP ID of partner.
ID of partner used by ERP.

Maximum Length: 36

                erpPartnerName*

string

Name of partner.
Name of partner.

Maximum Length: 36

        dangerousGoodsIdentification

object

dangerous goods characteristics of the product
Includes all relevant dangerous goods information concerning the product.

            dangerous

boolean

dangerous goods identification
Provides information on whether the product is a dangerous good.

            dangerousGoodsType

string (enum)

dangerous goods type
Provides information about the dangerous goods type.

Any of: [ "G01", "G02", "G03", "G04", "G05", "G06", "G07", "G08", "G09", "G10", "G11", "G12", "G13", "G14" ]

            dangerousGoodsStorageArea

string

dangerous goods storage area
Provides information about the dangerous goods storage area. Calculated in LSAS, based on dangerWarnings - and unNumber - attributes.

Maximum Length: 2

            exemptionNotice

string

dangerous goods exemption notice
This information should be attached, so that carriers know, that there are transport simplifications for the product concerning handling. Calculated in LSAS, based on unNumber - attribute.

Maximum Length: 15

            dangerousGoodsShare

integer

dangerous goods share
In most cases not the whole product is dangerous, but only a part of it is. Therefore a share in % is calculated in LSAS, based on productGroup and unNumber combination.

Minimum: 0
Maximum: 100

            physicalState

string

physical state
Provides information about the physical state of the product.

Maximum Length: 50

            accumulatorCapacity

string

accumulator capacity
Provides information about the accumulator capacity of the product in mAh.

Maximum Length: 20

            numberOfAccumulators

string

number of accumulators
Provides information about the number of accumulators of the product, between 1 and 10.

Maximum Length: 20

            numberOfBatteries

string

number of batteries
Provides information about the number of batteries of the product, between 1 and 10.

Maximum Length: 20

            batteryOrAccumulatorTechnology

string

battery or accumulator technology
Provides information about the battery or accumulator technology.

Maximum Length: 1024

            transportCategoryDangerousGoods

string

transport category dangerous goods
Provides information about the transport category of dangerous goods, between 0 and 4.

Maximum Length: 1

            clpHazardPictogram

array

hazard pictogram array
A hazard pictogram is a picture on a label with a warning symbol and certain colors to provide information about the damage that a certain substance or mixture can do to our health or the environment.

                (Array item)

string

hazard pictogram

Maximum Length: 1024

            clpProductLabel

string

product label
The attribute describes whether a CLP-product label is necessary.

Maximum Length: 1024

            clpSafetyDataSheet

string

safety data sheet
The safety data sheet is the central element of communication in the supply chain for hazardous substances and mixtures. It provides the user of chemicals with important information on the identity of the product.

Maximum Length: 1024

            dangerWarnings

array

danger warnings array
Packaging that contains dangerous substances or a dangerous mixture must be labeled to protect the user and the environment.

                (Array item)

string

danger warning

Maximum Length: 1024

            weightBatteriesOrAccumulator

string

weight of batteries or accumulator
Weight batteries/accumulator // Free field (without specifications)/indication of the mass of the installed or enclosed accumulator or battery in g.

Maximum Length: 20

            content

string

content
freetxt // specification of the content of the product.

Maximum Length: 4096

            storageCategoryHazardousMaterial

string

storage category hazardous material
A list of different storage classes.

Maximum Length: 20

            accumulatorPower

string

accumulator power
The specification of accumulator power in Wh. // Freetext

Maximum Length: 20

            deliveryConditionBatteriesOrAccumulators

string

delivery condition of batteries or accumulators
Information on whether a battery or accumulator is built into the product or if it is separated from the product.

Maximum Length: 1024

            limitedQuantityOfDangerousGoods

string

limited quantity of dangerous goods
Limited Quantities (LQ) is the abbreviation for the term dangerous goods, which are packed in limited amounts, that is stated by dangerous goods regulation.

Maximum Length: 1024

            testSummaryLithiumBatteries

string

test summary of lithium batteries
Test summary lithium batteries.

Maximum Length: 1024

            qualityAssuranceProgramLithiumBatteries

string

quality assurance program lithium batteries
Quality assurance program lithium batteries.

Maximum Length: 1024

            relevanceClpObligation

string

relevance of CLP obligation
The CLP regulation deals with the question, whether a substance or mixture has properties that can be considered as dangerous.

Maximum Length: 1024

            relevanceClpDangerousGoods

string

relevance of CLP
Relevance of CLP

Maximum Length: 1024

            safetyInstructions

array

safety instructions array
List of up to 127 safety notes

                (Array item)

string

safety instruction

Maximum Length: 1024

            signalWord

string

signal word
CAUTION/DANGER: The signal word indicates the level of danger and severity of injury or property damage.

Maximum Length: 50

            specialProvisionDangerousGoods

string

special provision of dangerous goods
For certain substances or objects the special regulations are applied, through which the shipping of these substances or objects is wholly or partially exempt from the regulations of the ADR. ADR: European agreement concerning the international carriage of dangerous goods by road.

Maximum Length: 1024

            accumulatorVoltage

string

accumulator voltage
The attribute describes the different voltages of accumulators.

Maximum Length: 50

            languagesClpSafetyDataSheet

string

languages clp safety data sheet
list of 28 languages

Maximum Length: 50

            unNumber

string

UN number
specification of UN-number

Maximum Length: 4

            unStandardTestLithiumBatteries

string

UN standard test lithium batteries
The UN 38.3 test ensures that lithium batteries can be shipped safely.

Maximum Length: 1024

            packingGroupsDangerousGoods

string

packing groups dangerous goods
Assignment of different packing groups, selection 1-3.

Maximum Length: 50

            netQuantityWeight

string

net quantity weight
Specification of the net quantity of the product in gram (g).

Maximum Length: 20

            netQuantityPiece

string

net quantity piece
Specification of the net quantity of the product in piece (pc).

Maximum Length: 20

            netQuantityVolume

string

net quantity volume
Specification of the net quantity of the product in volume (ml).

Maximum Length: 20

        ottoSpecificProcessing

object

process-relevant information concerning the business object, specific attributes for Otto and Bonprix products
Process-relevant information concerning the business object 'product'

            priorityInbound

boolean

priority for inbound processes (chefKz)
Product will be prioritized for inbound processes (true=yes, false=no). Bonprix only.

            priorityDelivery

integer

priority for delivery (deliveryFlag, NAB_Kz)
Product will be prioritized for delivery according to the level set. Bonprix only.

Minimum: 0
Maximum: 5

            specialPackaging

integer

product packing information (sonderverpackung, tuetenKz)
Product packing information indicates whether an article is bagable

Minimum: 0
Maximum: 9

            warehouseAreaType*

integer (enum)

warehouse area type (WBKZ)
Classifies an article with regard to the warehouse area, provides information about e. g. Sorter-Ability, Risk of theft, etc.

Any of: [ 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18 ]

            returnsSortCode*

integer

returns sort code (retourenSortierId)
Each article has a standard return destination that is stored in the master data

Minimum: 0
Maximum: 999

            oneStopShopping

boolean

one stop shopping code (AbwicklungsartOss)
Indicates if an product is processed as one stop shopping; true=OSS, false=no OSS

            supplierId

integer

supplier ID (LKZ)
Unique ID for the supplier (currently only known for Otto ERP), used by KR1 to identify the main supplier

Minimum: 0
Maximum: 999999

            disposal

integer (enum)

disposal (verwendung)
Indicates the current usage of an article

Any of: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 18, 19 ]

            enclosures

array

enclosures array (beilagen)
List of enclosures.

Minimum number of items 0
Maximum number of items: 3

                (Array item)

string

enclosure ID

Maximum Length: 4

            groupCodeComposed

integer

product group detail code (warengruppeGesamt)
Composed group Code

Minimum: 0
Maximum: 999

            groupCodeBuying*

integer

buying group code (warengruppeFuehrungsTeam)
Optional filter for the removal of goods, goods are classified by these attributes (needed for COBRA)

Minimum: 0
Maximum: 99

            groupCodeMerchandise*

integer

merchandise group code (warengruppeOperativesTeam)
Optional filter for the removal from storage, goods are classified by these attributes (needed for COBRA)

Minimum: 0
Maximum: 9

            reconditionCode

integer

recondition code (wiederaufbereitung)
Code for the routing label for rework of returned articles

Minimum: 0
Maximum: 9

            individualization

integer

individualization (individualisierung)
Indicates if an article has embossing or engraving

Minimum: 0
Maximum: 9

            expeditionCode

integer

encoding for process-handling of bulkyItems (versandschluessel)
Encoding for process-handling of bulkyItems, includes transport system, goods distribution centre, etc.

Minimum: 0
Maximum: 9999999

            checkRoomCode

integer

check room code (pruefraumId)
Testroom ID to filter removal from storage - results from quality tests

Minimum: 0
Maximum: 5

            ownershipId

integer (enum)

ownership of the product (verfuegbarkeitsId)
The attribute is used to logistically distinguish certain groups of goods. E.g. for stock removal processes (e. g. to prevent throughput goods from being outsourced); 0=OWN_GOODS, 1=EXTERNAL_GOODS_CONSIGNMENT, 3=EXTERNAL_GOODS_THROUGHPUT, 9=UNKNOWN

Any of: [ 0, 1, 3, 9 ]

            location

integer (enum)

master warehouse ID (stammlager)
The master warehouse provides information about where an article comes from

Any of: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 40, 43, 47, 48, 49, 54, 55, 56, 57, 58, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 88, 92, 99 ]

            returnsVolumeClass

integer

volume class of an article (retourenVolumenklasse)
Volume class of an article, categorized in IDs.

Minimum: 0
Maximum: 13

        packingUnits*

array

packing units array (packstuecke)
List of all packing units

Minimum number of items 1
Maximum number of items: 99

            (Array item)

object

                metaData

object

meta data for packing units
Contains meta data for packing units.

                    measured

boolean

Identifies if the packingUnit was already measured in a warehouse.
Identifies if the packingUnit was already measured in a warehouse.

                    sourceSystem

string

Name of the source system, the measurements come from.

Maximum Length: 30

                    measurementTime

(date-time)

Timestamp of the latest measurement.
Timestamp of the latest measurement in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

                identification*

object

identification of the packing unit
technical and business - identifiers concerning the packing unit

                    logisticsPackingUnitId*

string

logistics packing unit ID
Common technical key between LSAS and warehouse management system. Assigned by LSAS, shared with the WMS.

Maximum Length: 36

                    erpPackingUnitId

string

ERP packing unit ID
Common technical key between LSAS and ERP.

Maximum Length: 36

                    packingUnitIndex

integer

Index of the packing unit (packstueckNr)
Index (number, starting with 1) of this packing unit within the list of all packing unit. If more than one packing unit is present, the packingUnitIndex is required.

Minimum: 1
Maximum: 99

                packingUnitDescription

string

ERP packing unit description
Describes in particular what is inside a packing unit.

Maximum Length: 1024

                geometry

object

geometric data of the packing unit
includes the geometric data of the packing unit

                    length

integer

length
Length in mm

Minimum: 0
Maximum: 99999

                    width

integer

width
Width in mm

Minimum: 0
Maximum: 99999

                    height

integer

height
Height in mm

Minimum: 0
Maximum: 99999

                    weight

integer

weight
Weight in g

Minimum: 0
Maximum: 9999999

                    volume

integer

volume
Volume in dl

Minimum: 0
Maximum: 9999999

                loadingUnitTypePicking

string (enum)

loading unit type for picking
The loading unit type for the process of picking.

Any of: [ "TROLLY_AUTO_SORTING", "TROLLY_NO_AUTO_SORTING", "PALLET" ]

                autoSorting

boolean

auto-sortable flag
Provides information about whether the product is auto-sortable or not.

                autoSortingTypes

array

auto-sorting-types listing
Provides information about on which auto-sorter type the product can be handled.

                    (Array item)

object

                        type*

string (enum)

auto-sorter-type identification
Identifies the auto-sorter type.

Any of: [ "BEUMER_BIG_POCKET_MANUAL", "BEUMER_BIG_POCKET_AUTO", "SPLIT_TILT_TRAYSORTER" ]

                        capable*

boolean

Capable - flag concerning the auto-sorter type
Identifies, if the product can be handled on a specific auto-sorter type.

                warehousePackingForShipping

boolean

deprecated: replaced/removed by shippingInOriginalPackaging with next schema change
Deprecated: Will be replaced/removed by shippingInOriginalPackaging with next schema change. Provides information about whether a product can be shipped in the storage packing without additional shipping packaging or not.

                shippingInOriginalPackaging

boolean

need of additional warehouse packaging
Provides information about whether a product can be shipped in the original product packaging without additional warehouse packaging or not.

                polyBagPacking

boolean

poly-bag-packing capability
Identifies, if the product can be packed in a poly-bag. Here the physical characteristics (not the size/weight!) should be evaluated. E.g. sharp or fragile objects cannot be packed into a polybag. If the product is to big for a bag or not has to be decided later by the ERP within the shipment-order-message (via logisticsbuffer).

                polyBagAutoPacking

boolean

poly-bag-autopacking capability
Identifies, if the product can be auto-packed in a poly-bag.

                polyBagAutoPackingTypes

array

poly-bag auto-packing types listing
Provides information about on which poly-bag auto-packing type the product can be handled.

                    (Array item)

object

                        type*

string (enum)

poly-bag auto-packing type identification
Identifies the poly-bag auto-packing type.

Any of: [ "BECK", "HUGO_BECK", "BVM" ]

                        capable*

boolean

Capable - flag concerning the poly-bag auto-packing type
Identifies, if the product can be handled on a specific poly-bag auto-packing type.

                temptsTheft

boolean

theft-prone flag
Provides information about whether the product is theft-prone or not.

2.2.3. Schema

Table 2. Version FINE to WMS
Version Status Changes

2.8.0

upcoming version

1. extend dangerousGoodsType by 'G14'
2. remove warehouseAreaType = 10
3. allow season < 100 per schema restrictions
4. introduce shippingInOriginalPackaging

2.7.2

current version

1. new field eans

2.7.1

previous version

1. new field partnerInformation

2.7.0

previous version

1. new fields ownerCompanyProductCode and packingUnitDescription

2.6.3

previous version

1. for company enums: switch from global enum references to strings

2.6.2

previous version

1. accept ownershipId = 9 when clientSystem = Resy
2. increased max. length of dangerousGoodsIdentification.content to 4096

2.6.1

previous version

1. update version field
2. update system(v9)-enum

2.6.0

previous version

1. switch from pattern to constant for field version
2. update company(v6)- and system(v8)-enum
3. remove obsolete field deliveryBlockingCode
4. include new dangerousGoods - attributes (exemptionNotice, share)
5. adjust autoSortingTypes.type - enum

2.5

previous version

1. New attributes for F2X - connection (shippingFromSupplier, deliveryScope, additionalNote, assortmentClassification)
2. Update of systems-enum (v6)
3. Update of company-enum (v5)
4. ERP added in data.identification

1.1

deprecated version
(EOL. No longer supported)

1. Added ERP ID 5 (F2X), removed ERP ID 1 (Internal).
2. Added F2X bestandsFirmen (ownerCompanies).
3. retourenSortierId no longer required.
4. Removed minimum/maximum validation for enum integer attributes.
5. marktId is now a regular integer.
6. Removed example attribute.

1.0

deprecated version
(EOL. No longer supported)

initial version

3. Kafka Topics

Unresolved directive in <stdin> - include::../../../../integration-layer/topics/interfaces/M01.adoc[]

7 - M02 Logistical Data

1. Business Context

The service is used for the distribution of geometrical data updates for products, respectively the packing units of products, from the WMS on logistics side to all retailers. The WMS send their geometrical data updates to LSAS. LSAS then distributes the update to all relevant retailer-systems and - within updates on products - also again to other WMS.

The logisticsPackingUnitId is used in LSAS to identify the packing units of products, which needs to be updated. All WMS must identify products with this ID in the interfaces to LSAS.

For more details to LSAS see also here.

2. Interface

Starting from version 2.0, LSAS is providing a kafka-topic, where an WMS can send the products logistical data with one dataset per message. All messages are validated and a response is provided on another topic. See: Response.

2.1. Direction WMS to FINE

2.1.1. Header

Since version 2.0 the Service Header is used.

2.1.2. Datamodel of upcoming version 2.2.0

Property Type Description

(Root)

object

Schema for logistical product data from the WAREHOUSE to FINE
Contains geometrical and further logistical data concerning the product.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: LOGISTICAL_DATA_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.2.0

    metaData*

object

additional meta information
required for identifying the source system of the geometrical and/or logistical data update

        sender*

string

Name of the source system, that has sent this message. Usually a WMS. E.g. one of: [KR1_SHF, KR1_HHSTR, KMOTION_ILO, KMOTION_GHM].

Maximum Length: 30

        measurementTime*

(date-time)

Timestamp of the latest measurement.
Timestamp of the latest measurement in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

Maximum Length: 36

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        identification*

object

identification of the business object
technical identifiers

            logisticsProductId*

string

technical ID 'logistics product ID'
Technical key referencing the product.

Maximum Length: 36

            logisticsPackingUnitId

string

logistics packing unit ID
Technical key for a specific packing unit of the product. This identifier is only needed, if the product has more than one packingUnit (especially in bulky items logistics).

Maximum Length: 36

        packingUnit*

object

packing unit (packstueck)
Attributes concerning the packing unit

            geometry*

object

geometric data of the packing unit
includes the geometric data of the packing unit

                length*

integer

length
Length in mm

Minimum: 0
Maximum: 99999

                width*

integer

width
Width in mm

Minimum: 0
Maximum: 99999

                height*

integer

height
Height in mm

Minimum: 0
Maximum: 99999

                weight*

integer

weight
Weight in g

Minimum: 0
Maximum: 9999999

                volume*

integer

volume
volume in dl

Minimum: 0
Maximum: 9999999

            specialPackaging

integer

product packing information (sonderverpackung, tuetenKz)
Product packing information indicates whether an article is bagable

Minimum: 0
Maximum: 9

            warehouseAreaType

integer (enum)

warehouse area type (wbkz)
Classifies an article with regard to the warehouse area, provides information about e. g. Sorter-Ability, Risk of theft, etc.

Any of: [ 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18 ]

            loadingUnitTypePicking

string (enum)

loading unit type for picking
The loading unit type for the process of picking.

Any of: [ "TROLLY_AUTO_SORTING", "TROLLY_NO_AUTO_SORTING", "PALLET" ]

            autoSorting

boolean

auto-sortable flag
Provides information about whether the product is auto-sortable or not.

            autoSortingTypes

array

auto-sorting-types listing
Provides information about on which auto-sorter type the product can be handled.

                (Array item)

object

                    type*

string (enum)

auto-sorter-type identification
Identifies the auto-sorter type.

Any of: [ "BEUMER_BIG_POCKET_MANUAL", "BEUMER_BIG_POCKET_AUTO", "SPLIT_TILT_TRAYSORTER" ]

                    capable*

boolean

Capable - flag concerning the auto-sorter type
Identifies, if the product can be handled on a specific auto-sorter type.

            warehousePackingForShipping

boolean

deprecated: replaced/removed by shippingInOriginalPackaging with next schema change
Deprecated: Will be replaced/removed by shippingInOriginalPackaging with next schema change. Provides information about whether a product can be shipped in the storage packing without additional shipping packaging or not.

            shippingInOriginalPackaging

boolean

need of additional warehouse packaging
Provides information about whether a product can be shipped in the original product packaging without additional warehouse packaging or not.

            polyBagPacking

boolean

poly-bag-packing capability
Identifies, if the product can be packed in a poly-bag. Here the physical characteristics (not the size/weight!) should be evaluated. E.g. sharp or fragile objects cannot be packed into a polybag. If the product is to big for a bag or not has to be decided later by the ERP within the shipment-order-message (via logisticsbuffer).

            polyBagAutoPacking

boolean

poly-bag-autopacking capability
Identifies, if the product can be auto-packed in a poly-bag.

            polyBagAutoPackingTypes

array

poly-bag auto-packing types listing
Provides information about on which poly-bag auto-packing type the product can be handled.

                (Array item)

object

                    type*

string (enum)

poly-bag auto-packing type identification
Identifies the poly-bag auto-packing type.

Any of: [ "BECK", "HUGO_BECK", "BVM" ]

                    capable*

boolean

Capable - flag concerning the poly-bag auto-packing type
Identifies, if the product can be handled on a specific poly-bag auto-packing type.

            temptsTheft

boolean

theft-prone flag
Provides information about whether the product is theft-prone or not.

2.1.3. Schema

Table 1. Version WMS to FINE
Version Status Changes

2.2.0

upcoming version

1. introduce shippingInOriginalPackaging
2. remove warehouseAreaType = 10

2.1.1

current version

1. switch from enum to string for field sender

2.1.0

previous version

1. switch from pattern to constant for field version
2. update system(v8)-enum
3. update autoSortingTypes - enum

2.0

previous version

version 2 in English, containing header, all attributes from NEON WEN2

2.2. Direction FINE to ERP

2.2.1. Header

Since version 2.0 the Service Header is used.

2.2.2. Datamodel of upcoming version 2.2.0

Property Type Description

(Root)

object

Schema for Logistical Product Data (packing unit) from FINE to the ERP or WAREHOUSE
A Product with its associated logistical data and packing unit.

    eventId*

string

The unique eventId
Unique id for this event, set by the sender of the message. It is recommended to be set as a uuid.

    traceId*

string

The unique traceId
Unique id to trace the event/request through several systems. Also used for storing a reference to the original message payload. It is recommended to be set as a uuid.

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context*

string (const)

The context / business case = MASTERDATA
The optional context specified here means the business domain. Always 'MASTERDATA'

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: LOGISTICAL_DATA_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.2.0

    metaData*

object

additional meta information
Used to send other relevant information for the message, like sender.

        sender*

(const)

Name of the source system, that has sent this message. Always 'LSAS'.

Constant: LSAS

        sourceSystem*

string

The system that produced this dataset and originally sent it to LSAS. Usually a WMS-system.

Maximum Length: 30

        measurementTime*

(date-time)

Timestamp of the latest measurement (includes LSAS-internal calculations).
Timestamp of the latest measurement in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

Maximum Length: 36

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        identification*

object

identification of the business object
technical and business

            erpProductId*

string

technical ID 'erp product ID'
Unique technical key of the ERP for this product. Withing logistics and FINE only unique in combination with the sourceErp. must be used for all communication with an ERP referencing a product.

Maximum Length: 36

            erpPackingUnitId*

string

erp packing unit ID
Technical key for a specific packing unit of the product. This identifier is only needed, if the product has more than one packingUnit (especially in bulky items logistics).

Maximum Length: 36

        dangerousGoodsIdentification

object

dangerous goods characteristics of the product
Includes all relevant dangerous goods information concerning the product.

            dangerousGoodsStorageArea

string

dangerous goods storage area
Provides information about the dangerous goods storage area. Calculated in LSAS, based on dangerWarnings - and unNumber - attributes.

Maximum Length: 2

        ottoSpecificProcessing

object

process-relevant information concerning the business object, specific attributes for Otto and Bonprix products
Process-relevant information concerning the business object 'product'

            specialPackaging

integer

product packing information (sonderverpackung, tuetenKz)
Product packing information indicates whether an article is bagable

Minimum: 0
Maximum: 9

            warehouseAreaType

integer (enum)

warehouse area type (wbkz)
Classifies an article with regard to the warehouse area, provides information about e. g. Sorter-Ability, Risk of theft, etc.

Any of: [ 0, 1, 2, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18 ]

        packingUnit

object

packing unit (packstueck)
Attributes concerning the packing unit

            geometry

object

geometric data of the packing unit
includes the geometric data of the packing unit

                length

integer

length
Length in mm

Minimum: 0
Maximum: 99999

                width

integer

width
Width in mm

Minimum: 0
Maximum: 99999

                height

integer

height
Height in mm

Minimum: 0
Maximum: 99999

                weight

integer

weight
Weight in g

Minimum: 0
Maximum: 9999999

                volume

integer

volume
volume in dl

Minimum: 0
Maximum: 9999999

            autoSorting

boolean

auto-sortable flag
Provides information about whether the product is auto-sortable or not.

            autoSortingTypes

array

auto-sorting-types listing
Provides information about on which auto-sorter type the product can be handled.

                (Array item)

object

                    type*

string (enum)

auto-sorter-type identification
Identifies the auto-sorter type.

Any of: [ "BEUMER_BIG_POCKET_MANUAL", "BEUMER_BIG_POCKET_AUTO", "SPLIT_TILT_TRAYSORTER" ]

                    capable*

boolean

Capable - flag concerning the auto-sorter type
Identifies, if the product can be handled on a specific auto-sorter type.

            temptsTheft

boolean

theft-prone flag
Provides information about whether the product is theft-prone or not.

2.2.3. Schema

Table 2. Version FINE to ERP
Version Status Changes

2.2.0

upcoming version

1. introduce temptsTheft
2. remove warehouseAreaType = 10

2.1.1

current version

1. switch from enum to string for field sourceSystem

2.1.0

previous version

1. include autoSorting, autosortingTypes & dangerousGoodsStorageArea as optional
2. turn packingUnit and all of it’s components to optional

2.0-beta

previous version

version 2 in English, containing header, all attributes from NEON WEN2

8 - M03 Supplier

1. Business Context

The service is used for the distribution of master data from the retailer to all consumers on the logistics side as well as in the FINE applications (e.g. FLASH, RESY). The retailers send their master data to LSAS. Here the supplier master is stored and enriched with attributes, mainly identifiers like logisticsSupplierId.

Master data is identified differently depending on the merchant and the system. To standardize this, the logisticsSupplierId is used in FINE. It encapsulates the specifics of the merchants. All FINE apps and all WMS/return systems must identify products with this ID in the interfaces.

For more details to LSAS see also here.

2. Interfaces

2.1. Direction ERP to FINE

LSAS provides an interface to receive supplier data provided by an ERP-system. This interface is currently provided as REST-interface, reading a list of suppliers.

Starting from version 2.0, LSAS will also provide a kafka-topic, where an ERP-system can send the supplier data with one dataset per message. All messages are validated and a response is provided on another topic. See: Response.

2.1.1. Header

Since version 2.0, this interface uses the Service Header.

2.1.2. Datamodel upcoming version 2.2.0 ('single'-variant)

Property Type Description

(Root)

object

Schema for Supplier Master Data from ERP to FINE, 'single'-variant
A Supplier with all its associated data. Variant of the schema to send a single dataset.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional spanID.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: SUPPLIER_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.2.0

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string

Name of the source system, that has sent this message.

Maximum Length: 30

        company*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client system, this dataset should be sent to. LSAS uses this for filtering the messages.

            (Array item)

string

Maximum Length: 30

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        active*

boolean

active flag
Provides information about whether the supplier is active (true) or inactive/deleted (false)

        identification*

object

identification of the business object
technical and business - identifiers concerning the business object 'supplier'

            erpSupplierId*

string

technical ID 'erp supplier ID'
Unique technical key of the ERP for this supplier. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a supplier.

Maximum Length: 36

            supplierId

integer

supplier ID (LKZ)
Unique ID for the supplier (currently only known for Otto ERP), used by KR1 to identify the main supplier

Minimum: 0
Maximum: 999999

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'supplier'

            ownerCompany*

string

stock owner company (bestandsfirma)
stock owner company for the supplier

Maximum Length: 30

        supplier*

object

supplier
basic supplier information

            supplierName*

string

name of the supplier
Provides information about the name of the supplier.

Maximum Length: 35

            creditorNumber

integer

number of the creditor
Provides information about the creditor number of a supplier.

Minimum: 0
Maximum: 9999999999

        address

object

suppliers address
address information of the supplier

            addressName

string

name of the supplier (address header)
Provides information about the name of the supplier in the address header.

Maximum Length: 100

            addressStreet

string

address street
Provides information about the name of the street, where the supplier is located.

Maximum Length: 100

            addressZip

string

address ZIP Code
Provides information about the ZIP - code, where the supplier is located.

Maximum Length: 10

            addressCity

string

address city
Provides information about the name of the city, where the supplier is located.

Maximum Length: 100

            addressCountryCode

string

address country code
Provides information about the address country code of the suppliers origin (ISO standard).

Maximum Length: 2

2.1.3. Schema

Table 1. Version ERP to FINE
Version Status Changes

2.2.0-list
2.2.0-single

upcoming version

1. remove deprecated attributes unreliabilityCode, deliveryCode, rmaCode

2.1.4-list
2.1.4-single

current version

1. changed sender and clientSystems fields from enum to string

2.1.3-list
2.1.3-single

previous version

1. changed company fields from enum to string

2.1.2-list
2.1.2-single

previous version

1. update version field
2. update system(v9)-enum

2.1.1-list
2.1.1-single

previous version

1. switch from pattern to constant for field version
2. update system(v8)-enum
3. update company(v6)-enum

2.1-list
2.1-single

previous version

new v4 global enum references,
client-systems - array

1.0-MT

deprecated version
(EOL. No longer supported)

initial version

2.2. Direction FINE to WMS

2.2.1. Header

Since version 2.0, this interface uses the Service Header.

2.2.2. Datamodel of upcoming version 2.2.0

Property Type Description

(Root)

object

Schema for Supplier Master Data from FINE to the WMS
A Supplier with all its associated data.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: SUPPLIER_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.2.0

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string (const)

Sender of the message
Name of the source system, that has sent this message.

Constant: LSAS

        sourceSystem*

string

The system that produced this dataset and originally sent it to LSAS. Usually an ERP-system.

Maximum Length: 30

        sourceCompany*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client systems this dataset is relevant for. Used for filtering for the different client systems.

            (Array item)

object

                client*

string

Name of client system.

Maximum Length: 30

                status*

string (enum)

Export status
Status to show, if a client should receive this dataset. RELEVANT - client must receive it, REMOVED - previously this item was relevant for a client, now it must be deleted (client must take care to delete the dataset by itself)

Any of: [ "RELEVANT", "REMOVED" ]

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        creationTime*

string (date-time)

Creation timestamp
Time of creation of the supplier in LSAS in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        updateTime*

string (date-time)

Last update timestamp
Time of last update in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        deletionTime

string (date-time)

Deletion timestamp
Time of the deletion of this supplier (when the active flag switched to false) in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        active*

boolean

active flag
Provides information about whether the supplier is active (true) or inactive/deleted (false)

        identification*

object

identification of the business object
technical and business - identifiers concerning the business object 'supplier'

            erpSupplierId*

string

technical ID 'erp supplier ID'
Unique technical key of the ERP for this supplier. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a supplier.

Maximum Length: 36

            logisticsSupplierId

string

technical ID 'logistics supplier ID'
Unique technical key in all logistics systems, assigned by LSAS. must be used in all communication between logistics systems and FINE, when referencing a supplier.

Maximum Length: 36

            supplierId

integer

supplier ID (LKZ)
Unique ID for the supplier (currently only known for Otto ERP), used by KR1 to identify the main supplier

Minimum: 0
Maximum: 999999

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'supplier'

            ownerCompany*

string

stock owner company (bestandsfirma)
stock owner company for the supplier

Maximum Length: 30

        supplier*

object

supplier
basic supplier information

            supplierName*

string

name of the supplier
Provides information about the name of the supplier.

Maximum Length: 35

            creditorNumber

integer

number of the creditor
Provides information about the creditor number of a supplier.

Minimum: 0
Maximum: 9999999999

        address

object

suppliers address
address information of the supplier

            addressName

string

name of the supplier (address header)
Provides information about the name of the supplier in the address header.

Maximum Length: 100

            addressStreet

string

address street
Provides information about the name of the street, where the supplier is located.

Maximum Length: 100

            addressZip

string

address ZIP Code
Provides information about the ZIP - code, where the supplier is located.

Maximum Length: 10

            addressCity

string

address city
Provides information about the name of the city, where the supplier is located.

Maximum Length: 100

            addressCountryCode

string

address country code
Provides information about the address country code of the suppliers origin (ISO standard).

Maximum Length: 2

2.2.3. Schema

Table 2. Version FINE to WMS
Version Status Changes

2.2.0

upcoming version

1. remove deprecated attributes unreliabilityCode, deliveryCode, rmaCode

2.1.4

current version

1. changed sourceSystem and client fields from enum to string

2.1.3

previous version

1. changed company fields from enum to string

2.1.2

previous version

1. update version field
2. update system(v9)-enum

2.1.1

previous version

1. switch from pattern to constant for field version
2. update system(v8)-enum
3. update company(v6)-enum

2.1

previous version

new v4 global enum references,
client-systems - array,
creation-/update-/deletion timestamps

1.1

deprecated version
(EOL. No longer supported)

added ERP ID 5 (F2X), removed ERP ID 1 (Internal).
Added F2X bestandsFirmen (ownerCompanies).
Removed former uuid format for logistikLieferantId.

1.0

deprecated version
(EOL. No longer supported)

initial version

3. Kafka Topics

Unresolved directive in <stdin> - include::../../../../integration-layer/topics/interfaces/M03.adoc[]

9 - M04 Supplier Product

1. Business Context

The service is used for the distribution of master data from the merchants to all consumers on the logistics side as well as in the FINE Layer (e.g. FLASH, RESY).

The merchants ERP system send their master data to LSAS. Here the supplier-product master, as representation of supplier-specific product data is stored and enriched with attributes, mainly the technical identifiers for the logistics logisticsSupplierProductId is added.

Master data is identified differently depending on the merchant and the system. To standardize this, the logisticsSupplierProductId is used in FINE. It encapsulates the specifics of the merchants and provides a unique technical identifier for all logistic systems over all connected merchants. All FINE apps and all WMS/return systems must identify the entity with this ID in the interfaces.

For more details to LSAS see also here.

2. Interfaces

2.1. Direction ERP to FINE

LSAS provides an interface to receive supplier-product data provided by an ERP-system.

There is a REST-interface, where a list of multiple datasets can be sent to LSAS.

Version 1.0 has reached end of life and is no longer supported.

Starting from version 2.0, LSAS is also providing a kafka-topic, where an ERP-system can send the data with one dataset per message. All messages are validated and a response is provided on another topic. See: Response.

2.1.1. Header

Since version 2.0 the Service Header is used.

2.1.2. Datamodel of upcoming version 2.1.4 ('single'-variant)

Property Type Description

(Root)

object

Schema for Supplier-Product Master Data from ERP to FINE, 'single'-variant
A Supplier-Product with all its associated data. Variant of the schema to send a single dataset.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional spanID.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record
The concrete type record.

Constant: SUPPLIER_PRODUCT_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.1.4

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string

Name of the source system, that has sent this message.

Maximum Length: 30

        company*

string

Name of the source company.

Maximum Length: 30

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        active*

boolean

active flag
Provides information about whether the supplier-product is active (true) or inactive/deleted (false)

        identification*

object

identification of the business object
technical and business - identifiers concerning the business object 'supplier-product'

            erpSupplierProductId*

string

technical ID 'erp supplier product ID'
Unique technical key of the ERP for this supplier-product. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a supplier-product.

Maximum Length: 36

            erpProductId*

string

technical ID 'erp product ID'
Unique technical key of the ERP for this product. Within logistics and FINE only unique in combination with the sourceErp. Needed in this interface for refering to the concrete product.

Maximum Length: 36

            erpSupplierId*

string

technical ID 'erp supplier ID'
Unique technical key of the ERP for this supplier. Within logistics and FINE only unique in combination with the sourceErp. Needed in this interface for refering to the concrete supplier.

Maximum Length: 36

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'supplier-product'

            ownerCompany*

string

stock company ID (bestandsfirma)
stock-owner company for the supplier-product

Maximum Length: 30

        supplierProduct*

object

supplier-product
basic supplier-product information

            productNameSupplier

string

product name used by the supplier
Provides information about, which product name the supplier is using.

Maximum Length: 35

            supplierSize

string

product - size defined by supplier
Provides information about the product size, defined by a specific supplier. Can be used for supplier-specific size-scaling.

Maximum Length: 18

            ean

array

list of EAN
Provides a list of EANs and additional meta information concerning the single EANs.

Minimum number of items 0
Maximum number of items: 99

                (Array item)

object

Additional Properties: false

                    ean*

integer

The EAN number
The EAN number itself.

Minimum: 0
Maximum: 9999999999999

                    active*

boolean

active flag
Provides information about whether the EAN is active (true) or inactive/deleted (false).

                    eanPriority*

integer

priority of the EAN on a printed content list
Priority of the EAN on a printed content list. EAN always has lowest priority (=1).

Minimum: 1
Maximum: 9

            goodsReceiptAllowed

boolean

goods receipt allowed - flag
Provides information on wether goods receipt is allowed for this supplier-product. Older supplier-products have to be active to provide EAN information for existing stock.

            testingAccuracy

string (enum)

testing accuracy
Needed for the 'offline' sample drawing in QA-process (Prüfschärfe) (sample calculation according to DIN ISO 2859). Enum related to german usage: "R"eduziert = AQL-based test method with reduced testing accuracy "N"ormal = AQL-based test method with normal testing accuracy "V"erschärft = AQL-based test method with higher testing accuracy "T" One-Part-Testing "1 Teil prüfen" "I" One-Part-Identification "1 Teil identifizieren" "S" One-Part-Visual inspection "1 Teil prüfen" "K" no testing = QA-examination not needed.

Any of: [ "R", "N", "V", "T", "I", "S", "K" ]

            testingLevel

integer

Needed for the 'offline' sample drawing in QA-process (Prüfniveau) (sample calculation according to DIN ISO 2859).

Minimum: 0
Maximum: 9

            acceptableQualityLimit

integer

Needed for the 'offline' sample drawing in QA-process (AQL) (sample calculation according to DIN ISO 2859).

Minimum: 0
Maximum: 99

            salesUnit

string (enum)

sales unit
Provides information about the kind of sales unit.

Any of: [ "NOT_DEFINED", "PIECE", "PAIR" ]

            supplierType

integer

supplier type
Each product can be supplied by several suppliers. This attribute provides information about the supplier-type (first to ninth supplier). 1=Primary supplier, >1=Alternative supplier.

Minimum: 1
Maximum: 9

            returnsHandling

integer

returns handling identification
Provides information about the kind of returns handling.

Minimum: 0
Maximum: 18

            supplierSequence

integer

supplier-sequence
Provides information about the position of the supplier within the supplier-sequence.

Minimum: 0
Maximum: 9

            approvedPurchasePrice

integer

approved purchase price
Provides information about the approved purchase price of a product.

Minimum: 0
Maximum: 999999999999

2.1.3. Schema

Table 1. Version ERP to FINE
Version Status Changes

2.1.4-list
2.1.4-single

upcoming version

1. changed sender field from enum to string

2.0.3-list
2.0.3-single

current version

1. changed company fields from enum to string
2. removed salesQuantity
3. removed ean.deletionTime

2.0.2-list
2.0.2-single

previous version

1. update version field
2. update system(v9)-enum
3. updated supplierType description

2.0.1-list
2.0.1-single

previous version

1. switch from pattern to constant for field version
2. update system(v8)-enum
3. update company(v6)-enum

2.0-list
2.0-single

previous version

1. switch to English interface
2. include FINE - service header
3. add new attributes (supplierSize, goodsReceiptAllowed)
4. add 'single' - version
5. add global enums (v4)
6. changed attribute type from "number" to "integer", where relevant

1.0-MT

deprecated version
(EOL. No longer supported)

initial version

2.2. Direction FINE to WMS

Version 1.0 has reached end of life and is no longer supported.

2.2.1. Header

Since version 2.0 the Service Header is used.

2.2.2. Datamodel of upcoming Version 2.1.4

Property Type Description

(Root)

object

Schema for Supplier-Product Master Data from FINE to WMS
A Supplier-Product with all its associated data.

    eventId*

string

The unique eventId
Unique id for this event, set by the sender of the message. It is recommended to be set as a uuid.

    traceId*

string

The unique traceId
Unique id to trace the event/request through several systems. Also used for storing a reference to the original message payload. It is recommended to be set as a uuid.

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case = MASTERDATA
The optional context specified here means the business domain. Always 'MASTERDATA'

Constant: MASTERDATA

    eventType*

string (const)

The concrete type record = SUPPLIER_PRODUCT_UPDATE
The concrete type record. Always 'SUPPLIER_PRODUCT_UPDATE'

Constant: SUPPLIER_PRODUCT_UPDATE

    version*

string (const)

The number of version of schema
Number of version of this data structure. A semantic specification with major & minor version numbers

Constant: 2.1.4

    metaData*

object

additional meta information
optional, can be used with different characteristics for technical data per interface

        sender*

string (const)

Sender of the message
Name of the source system, that has sent this message.

Constant: LSAS

        sourceSystem*

string

The system that produced this dataset and originally sent it to LSAS. Usually an ERP-system.

Maximum Length: 30

        sourceCompany*

string

Name of the source company.

Maximum Length: 30

        clientSystems*

array

List of client systems this dataset is relevant for. Used for filtering for the different client systems.

            (Array item)

object

                client*

string

Name of client system.

Maximum Length: 30

                status*

string (enum)

Export status
Status to show, if a client should receive this dataset. RELEVANT - client must receive it, REMOVED - previously this item was relevant for a client, now it must be deleted (client must take care to delete the dataset by itself)

Any of: [ "RELEVANT", "REMOVED" ]

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        creationTime*

string (date-time)

Creation timestamp
Time of creation of the supplier-product in LSAS in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        updateTime*

string (date-time)

Last update timestamp
Time of last update in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        deletionTime

string (date-time)

Deletion timestamp
Time of the deletion of this supplier-product (when the active flag switched to false) in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

        active*

boolean

active flag
Provides information about whether the supplier-product is active (true) or inactive/deleted (false)

        identification*

object

identification of the business object
technical and business - identifiers concerning the business object 'supplier-product'

            erpSupplierProductId*

string

technical ID 'erp supplier product ID'
Unique technical key of the ERP for this supplier-product. Within logistics and FINE only unique in combination with the sourceErp. Must be used for all communication with an ERP referencing a supplier-product.

Maximum Length: 36

            logisticsSupplierProductId*

string

technical ID 'logistics supplier-product ID'
Unique technical key in all logistics systems, assigned by LSAS. Must be used in all communication between logistics systems and FINE, when referencing a supplier-product.

Maximum Length: 36

            logisticsProductId*

string

technical ID 'logistics product ID'
Unique technical key in all logistics systems, assigned by LSAS. Must be used in all communication between logistics systems and FINE, when referencing a product.

Maximum Length: 36

            logisticsSupplierId*

string

technical ID 'logistics supplier ID'
Unique technical key in all logistics systems, assigned by LSAS. must be used in all communication between logistics systems and FINE, when referencing a supplier.

Maximum Length: 36

            productNumber

integer

product number (artikelNummer)
Part of a deprecated combination of attributes, used for unique (business-)identification of a product in the warehouses. In this interface only needed by COBRA.

Minimum: 0
Maximum: 99999999

            sizeNumeric

integer

numerical product size (groesseNumerisch)
Part of a deprecated combination of attributes, used for unique (business-)identification of a product in the warehouses. In this interface only needed by COBRA.

Minimum: 0
Maximum: 999

            supplierId

integer

supplier ID (LKZ)
Part of a deprecated combination of attributes, used for unique (business-)identification of a product in the warehouses. In this interface only needed by COBRA.

Minimum: 0
Maximum: 999999

            season

integer

season (bestandsSaison)
Part of a deprecated combination of attributes, used for unique (business-)identification of a product in the warehouses. In this interface only needed by COBRA.

Minimum: 100
Maximum: 999

        ownership*

object

ownership information concerning the business object
Ownership information concerning the business object 'supplier-product'

            ownerCompany*

string

stock company ID (bestandsfirma)
stock-owner company for the supplier-product

Maximum Length: 30

        supplierProduct*

object

supplier-product
basic supplier-product information

            productNameSupplier

string

product name used by the supplier
Provides information about, which product name the supplier is using.

Maximum Length: 35

            supplierSize

string

product - size defined by supplier
Provides information about the product size, defined by a specific supplier. Can be used for supplier-specific size-scaling.

Maximum Length: 18

            ean

array

list of EAN
Provides a list of EANs and additional meta information concerning the single EANs.

Minimum number of items 0
Maximum number of items: 99

                (Array item)

object

Additional Properties: false

                    logisticsEanId*

string

technical ID 'logistics EAN ID'
Unique technical key for an EAN, assigned by LSAS, used between LSAS and logistics systems.

Maximum Length: 36

                    ean*

integer

The EAN number
The EAN number itself.

Minimum: 0
Maximum: 9999999999999

                    active*

boolean

active flag
Provides information about whether the EAN is active (true) or inactive/deleted (false).

                    deletionTime

string (date-time)

Time of deletion (active = false) of the EAN
Time at which this EAN was deleted/inactivated. Generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

                    eanPriority*

integer

priority of the EAN on a printed content list
Priority of the EAN on a printed content list. EAN always has lowest priority (=1).

Minimum: 1
Maximum: 9

            goodsReceiptAllowed

boolean

goods receipt allowed - flag
Provides information on wether goods receipt is allowed for this supplier-product. Older supplier-products have to be active to provide EAN information for existing stock.

            testingAccuracy

string (enum)

testing accuracy
Needed for the 'offline' sample drawing in QA-process (Prüfschärfe) (sample calculation according to DIN ISO 2859). Enum related to german usage: "R"eduziert = AQL-based test method with reduced testing accuracy "N"ormal = AQL-based test method with normal testing accuracy "V"erschärft = AQL-based test method with higher testing accuracy "T" One-Part-Testing "1 Teil prüfen" "I" One-Part-Identification "1 Teil identifizieren" "S" One-Part-Visual inspection "1 Teil prüfen" "K" no testing = QA-examination not needed.

Any of: [ "R", "N", "V", "T", "I", "S", "K" ]

            testingLevel

integer

Needed for the 'offline' sample drawing in QA-process (Prüfniveau) (sample calculation according to DIN ISO 2859).

Minimum: 0
Maximum: 9

            acceptableQualityLimit

integer

Needed for the 'offline' sample drawing in QA-process (AQL) (sample calculation according to DIN ISO 2859).

Minimum: 0
Maximum: 99

            salesUnit

string (enum)

sales unit
Provides information about the kind of sales unit.

Any of: [ "NOT_DEFINED", "PIECE", "PAIR" ]

            supplierType

integer

supplier type
Each product can be supplied by several suppliers. This attribute provides information about the supplier-type (first to ninth supplier). 1=Primary supplier, >1=Alternative supplier.

Minimum: 1
Maximum: 9

            returnsHandling

integer

returns handling identification
Provides information about the kind of returns handling.

Minimum: 0
Maximum: 18

            supplierSequence

integer

supplier-sequence
Provides information about the position of the supplier within the supplier-sequence.

Minimum: 0
Maximum: 9

            approvedPurchasePrice

integer

approved purchase price
Provides information about the approved purchase price of a product.

Minimum: 0
Maximum: 999999999999

2.2.3. Schema

Table 2. Version FINE to WMS
Version Status Changes

2.1.4

upcoming version

1. changed sourceSystem and client fields from enum to string

2.1.3

current version

1. changed company fields from enum to string
2. removed salesQuantity

2.1.2

previous version

1. update version-const
2. extend company & system - enums
3. updated supplierType description

2.1.1

previous version

1. update version-const
2. extend company - enum

2.1

previous version

1. switch to English interface
2. include FINE - service header
3. add new attributes (supplierSize, goodsReceiptAllowed, mapped identifiers from product, logisticsEanId)
4. add global enums (v4)
5. changed attribute type from "number" to "integer", where relevant

1.1

deprecated version
(EOL. No longer supported)

1. erpId and bestandsfirmaId enums adapted to the current state:

- erpId: added F2X, remove unused KR1

- bestandsfirmaId: added F2X companies, remove unused Schwab and Eddi Baur

2. Remove examples

3. Remove unnecessary min/max-boundaries

1.0

deprecated version
(EOL. No longer supported)

initial version

10 - Response

1. Business Context

Here the response message from LSAS to all interfaces (M01, M02, M03, M04) is described. An interface partner of LSAS will receive this response message on a kafka topic after sending a message to LSAS and LSAS validating the data. An error, as well as the "OK"-case will be answered.

2. Interface

2.1. Direction from LSAS to any interface partner

2.1.1. Header

This interface uses the Service Header.

2.1.2. Datamodel (single variant)

Property Type Description

(Root)

object

Schema for response message from LSAS, Version 1
Contains LSAS response (either ok or with errors) to a previous message from another system (ERP or WMS). Reference to the previous message is possible by the traceId and the entityId.

    eventId*

string

The unique eventId
Global unique Id, recommended as uuid

    traceId*

string

The unique traceId
Global unique Id for tracing the flow of events, recommended as uuid

    spanId

string

The eventId of previous record or batchId
Optional. Not provided by LSAS.

    eventTime*

string (date-time)

Time of occurrence of the event
Time at which this record (event) was technically generated in RFC3339 format in UTC time. Format: YYYY-MM-ddThh:mm:ss.SSSZ

    context

string (const)

The context / business case
The optional context specified here means the business domain.

Constant: MASTERDATA

    eventType*

string (enum)

The concrete type record.
The concrete type record.

Any of: [ "PRODUCT_RESPONSE", "SUPPLIER_RESPONSE", "SUPPLIER_PRODUCT_RESPONSE", "LOGISTICAL_DATA_RESPONSE" ]

    version*

string (const)

The number of version of schema
Number of version of this data structure. A sematic specification with major & minor version numbers

Constant: 1.1

    metaData*

object

additional meta information
additional meta information

        sender*

string (const)

Sender of the message
Name of the source system, that has sent this message.

Constant: LSAS

    data*

object

Data of the business object
business data, can be used with different characteristics per interface

        logisticsEntityId

string

Technical ID of the referenced entity in LSAS
The ID references the LSAS-LogisticsID for the business object (e.g. logisticsProductId, logisticsSupplierId, etc.).

Maximum Length: 36

        entityId*

string

technical ID of the referenced entity within the message
depending on the eventType (e.g. PRODUCT_RESPONSE or SUPPLIER_RESPONSE), the ID references the business object (e.g. erpProductId, erpSupplierId).

Maximum Length: 36

        status*

boolean

Status
Status: true=message was accepted and processed by LSAS; false=LSAS could not process the message, see code and description in the errors-section for further details

        detailedStatus*

string (enum)

Detailed information about the outcome of the message received.

Any of: [ "INSERTED", "UPDATED", "UNCHANGED", "INSERT_REJECTED", "UPDATE_REJECTED", "INTERNAL_ERROR", "UNAVAILABLE" ]

        errors

array

            (Array item)

object

                code*

integer

                description

string

2.1.3. Example (single variant)

Message
{
    "eventId":"2b6105df-d03a-4913-b1ea-5fdffb0d2b1c",
    "traceId":"9b183e1ab13fda5ed1c59ef838b609bd",
    "context":"MASTERDATA",
    "eventTime":"2023-01-25T12:12:28.079Z",
    "eventType":"LOGISTICAL_DATA_RESPONSE",
    "version":"1.1",
    "metaData":{
        "sender":"LSAS"
    },
    "data":{
        "entityId":"ABCDEFGHIJKLMNOPQ",
        "status":false,
        "detailedStatus": "INSERTED_REJECTED",
        "errors":[
            {
                "code":51,
                "description":"Unknown logisticsProductId."
            }
        ]
    }
}

2.1.4. Example (list variant)

Message
{
    "eventId":"2b6105df-d03a-4913-b1ea-5fdffb0d2b1c",
    "traceId":"9b183e1ab13fda5ed1c59ef838b609bd",
    "context":"MASTERDATA",
    "eventTime":"2023-01-25T12:12:28.079Z",
    "eventType":"LOGISTICAL_DATA_RESPONSE",
    "version":"1.1",
    "metaData":{
        "sender":"LSAS"
    },
    "data":{
        "status":false,
        "items": [
            {
                "status": true,
                "entityId":"000001",
                "detailedStatus": "INSERTED",
                "errors":[]
            },
            {
                "status": false,
                "entityId":"000003",
                "detailedStatus": "UPDATE_REJECTED",
                "errors":[
                    {
                        "code":51,
                        "description":"Unknown logisticsProductId."
                    }
                ]
            }

        ]
    }
}

2.1.5. Schema

Table 1. Version

Version

Status

Changes

1.1-single
1.1-list

current version

added detailedStatus field

1.0

previous version

initial version

2.1.6. Handling of new detailed status

To improve the clarity and usefulness of our responses, we have introduced a new detailedStatus field. This field will help you categorize and better understand the outcome of all messages your system sends to LSAS, making it easier to address issues when they arise.

The goal of providing this information is so you know how to proceed with each error type, and also so you are aware who is responsible for the fixes in each case.

Status Description Responsible system Severity

INSERTED

The record has been successfully inserted.

-

-

UPDATED

The record has been successfully updated.

-

-

UNCHANGED

The record has not changed (either because the data in the message was equal to what we already had or because the message was ignored due to a newer message having been processed first).

-

-

INSERT_REJECTED

Problem: The record could not be inserted because it is missing required attributes (e.g., the product is not yet logistics-ready).

Solution: ERP needs to fix the data.

ERP

Low

UPDATE_REJECTED

Problem: The record could not be updated due to validation issues (e.g., the product is logistics-ready but fails validation).

Solution: ERP needs to react to such messages and fix the data as soon as possible.

ERP

High

INTERNAL_ERROR

Problem: An internal error occurred in LSAS due to specific inputs.

Solution: LSAS needs to investigate and fix the issue, then inform ERP when they can resend the data.

LSAS

High

UNAVAILABLE

Problem: LSAS is currently unavailable, possibly due to high load.

Solution: ERP should try resending the data after some time.

ERP + LSAS

Medium

By understanding these statuses, users can take appropriate actions to resolve issues and know who to contact for further assistance.