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.

Last updated: Tue, 08 Jul 2025 01:45:37 UTC