Technical and business validation
Technical validation
Format
{
"errors": {
"{field}": [
"{errorCode}: {errorMessage}"
]
},
"status": 400,
"title": "{title}",
"traceId": "{traceId}",
"type": "https://tools.ietf.org/html/rfc9110#section-15.5.1 "
}
Example
{
"errors": {
"NumberOfPieces": [
"BCTV0004: The numberOfPieces value is not higher than 0."
]
},
"status": 400,
"title": "One or more validation errors occurred.",
"traceId": "00-f2d055723f7bbee867bb84941b11f5e4-22c55454316b9e2e-01",
"type": "https://tools.ietf.org/html/rfc9110#section-15.5.1 "
}
Error messages
Error code | Error message |
BCTV0001 | FluentValidation is used, more info on https://docs.fluentvalidation.net/en/latest/built-in-validators.html. Example: 'Description' must not be empty. |
BCTV0002 | The date-time value is not in the future. |
BCTV0003 | The date-time value is not later than the value specified in the expectedDeliveryDateTimeFrom element. |
BCTV0004 | The numberOfPieces value is not higher than 0. |
BCTV0005 | If the lspVisitReference is filled in within the sku object, then this data element is mandatory. Otherwise, it is optional. |
BCTV0006 | If the status has the value ‘exit’, then the following data elements become mandatory: incoTerms, bookingNumber and portOfDestination. Otherwise, these elements cannot be provided. |
BCTV0007 | The packageCode value is not valid according to CL017. |
BCTV0008 | The lspVisitReference value filled in within the sku object, cannot be found again in the lspVisitReference element of at least 1 visit object. |
BCTV0010 | If tdoKey is filled in, then this data element is mandatory. Otherwise, it is optional. |
BCTV0013 | The date-time value is not later than the value specified in the actualDeliveryDateTimeFrom element. |
BCTV0014 | Only the terminal operator can get by toReference. |
BCTV0015 | Only the logistic service provider can get by lspReference. |
Business validation
Format
{
"MessageHeader": {
"MessageTimestamp": "{messageTimestamp}",
"MessageId": "{messageId}",
"CorrelationId": "{correlationId}"
},
"NotificationDate": "{notificationDate}",
"EventType": "{eventType}",
"Body": {
"Errors": [
{
"SourceError": "Bulkchain",
"SequenceNumber": 1,
"ErrorReason": "{errorCode}",
"ErrorPointer": "{errorPointer}",
"ErrorMessage": "{errorMessage}"
}
]
}
}
Example
{
"MessageHeader": {
"MessageTimestamp": "2026-03-26T08:13:06.2889244+00:00",
"MessageId": "b025a361-6309-4170-8a94-d705dfff7bf5",
"CorrelationId": "c4d879cd-3038-4e4f-9d04-efd1e61a8f82"
},
"NotificationDate": "2026-03-26T08:13:06.2889245+00:00",
"EventType": "UpdateSkuFailed",
"Body": {
"Errors": [
{
"SourceError": "Bulkchain",
"SequenceNumber": 1,
"ErrorReason": "BCBV0025",
"ErrorPointer": "SkuKey",
"ErrorMessage": "The sku with 3069a28e-035e-416d-8105-11de62dcdf2c provided in the request does not exist within Bulkchain for your entity."
}
]
}
}
Error messages
Error code | Error message |
BCBV0001 | The [lspReference] with value [lspReference value from the request to be provided here dynamically] is not unique in combination with the NxtEntityId of the caller within Bulkchain. |
BCBV0002 | The terminalOperatorIdentificationCode could not be matched with a terminal operator party in the identity module of NxtPort. |
BCBV0005 | The [lspVisitReference] with value [lspVisitReference value from the request to be provided here dynamically] is not unique in combination with the NxtEntityId of the caller within Bulkchain. |
BCBV0006 | The terminalCode value does not exist within the identity module of NxtPort for the related terminal operator. |
BCBV0007 | The portLoCode value does not exist within the identity module of NxtPort for the related terminal operator. |
BCBV0008 | The [tdoKey] with value [tdoKey value from the request to be provided here dynamically] provided in the request does not exist within Bulkchain for your entity. Example 1: The tdoKey with value ‘TDO-REFERENCE-00001’ provided in the request does not exist within Bulkchain for your entity. |
BCBV0010 | The visitKey with value [visitKey] in the request does not exist within Bulkchain for your terminal entity. |
BCBV0011 | The visitKey with value [visitKey] in the request already received a terminal delivery confirmation for the following skuKey value(s): [skuKey], [skuKey],… |
BCBV0012 | The skuKey(s) with value(s): [skuKey], [skuKey],… in the request are not available for visit [visitKey] at your terminal. |
BCBV0016 | The sku with provided referenceKey value [insert value of skuKey] does not exist in Bulkchain for the related terminal delivery order. |
BCBV0017 | The lspVisitReference value filled in within the sku object, cannot be found in either the Bulkchain database or in the lspVisitReference element of at least 1 new visit object within the request. |
BCBV0018 | The visit with provided value [insert value of visitKey] does not exist in Bulkchain for the related terminal delivery order. |
BCBV0020 | The sku with provided referenceKey value [insert value of skuKey] cannot be updated, deleted or unassigned because a terminal delivery confirmation has already been received for it. |
BCBV0021 | The visit with provided value [insert value of visitKey] cannot be updated or deleted because a terminal delivery confirmation has already been received for it. |
BCBV0022 | The tdo cannot be deleted because a terminal delivery confirmation has already been received for one of its sku’s. |
BCBV0023 | The sku with provided value [insert value of skuKey] cannot be updated as the visit reference is trying to be added without defining the status. Both the status and the visit reference need to be defined. |
BCBV0025 | The sku with [skuKey value from the request] provided in the request does not exist within Bulkchain for your entity. |
BCBV0026 | This endpoint can only be called upon once the terminal delivery confirmation is received for the sku with value [skuKey]. At the moment there is no terminal delivery confirmation received for it. |
BCBV0028 | The sku with [skuKey value from the request] cannot be assigned to the specified visit as it is already assigned to another visit. |
BCBV0029 | The sku with [skuKey value from the request] cannot be unassigned from the specified visit as it is not assigned to that visit. |