Update serial number status APIs
Why do I use these messages?
Use the following messages to report serial number updates to TraceLink.
Which report do these messages generate?
These messages generate the 391 - Return to Circulation report in the Russia Compliance application if their contents meet the report conditions.
Update Serial Number Status (XML)

Message Type: SOM_UPDATE_SN_STATUS
Info Exchange Display Name: Update Serial Number Status Event

Data Element | Occurs Length |
Type | Description | ||||
---|---|---|---|---|---|---|---|
som:SOMUpdateSNStatusMessage | - |
1…1- |
Required. The root element of the Serialized Operations Manager Update Serial Number Status message. |
||||
som:ControlFileHeader | - |
1…1- |
Required. The message document's header information. |
||||
cmn:FileSenderNumber | 1/20 |
1…1String |
Required. The company identifier of the file’s sender.1 |
||||
cmn:FileReceiverNumber | 1/20 |
1…1String |
Required. The company identifier of the file’s recipient.2 |
||||
cmn:FileControlNumber | 1/20 |
1…1String |
Required. The message’s unique file control ID number. A file control ID number is mandatory for all messages.3 |
||||
cmn:FileDate | 10/10 |
1…1Date |
Required. The date that the message is sent in YYYY-MM-DD format. Date and times must be in GMT.4 |
||||
cmn:FileTime | 8/8 |
1…1Time |
Required. Time file generated in XML in HH:MM:SSZ format. The system expects the |
||||
som:MessageBody | - |
1…1- |
Required. Main body of the Update Serial Number Status message. |
||||
cmn:EventDateTime | 0/* |
1…1DateTime |
Required. Timestamp of date/time when the serial number was commissioned (i.e. assigned to the object), with the UTC time zone indicator, in YYYY-MM-DDThh:mm:ss.sZ format.6 |
||||
cmn:EventTimeZoneOffset | 0/* |
1…1String |
Required. Time zone offset in effect for the time and place where the updated occurred.7 |
||||
cmn:NumberList | 1/* |
1…1String |
Required. This field contains the list of the status-updated serial numbers. |
||||
cmn:Serial | 1/* |
1…*String |
Required. Serial number expressed in the GS1 Application Identifier format.8 ![]() |
||||
@companyPrefix | 0/* |
0…1String |
The GS1 Company Prefix for use in GTIN-14 and SSCC serial numbers. |
||||
@filterValue | 0/* |
0…1String |
The filter value for use in GTIN-14 and SSCC serial numbers. |
||||
@format | 1/* |
1…1String |
Identifies the format of the serial numbers. Valid values:
|
||||
cmn:EventLocation | 0/* |
0…1String |
The site-level SGLN of the location where the event occurred.9 |
||||
cmn:Location | 0/* |
0…1String |
Identifies the Serialized Operations Manager external partner location. cmn:Location | @type defines the type of the identifier. |
||||
@type | 1/* |
1…1String |
Required. Identifies the location type. Valid values:
See Location enumeration list for valid values. |
||||
cmn:SerialNumberStatus | 1/* |
1…1String |
Required. The serial number status.10 See the SerialNumberStatus enumeration list for valid values. |
||||
cmn:ItemStatus | 0/* |
0…1String |
Conditionally required if cmn:SerialNumberStatus = See the ItemStatus enumeration list for valid values. |
||||
cmn:UpdateSNStatusReasonCode | 0/* |
0…1String |
Identifies the reason for the serial number status update.12 See the StatusReasonCode enumeration list for valid values. |
||||
cmn:UpdateType | 1/* |
1…1String |
Required. Type of update to the serial number status.13 Valid values:
|
||||
cmn:ReasonDescription | 0/* |
0…1String |
Text description of the reason for the status update.14 |

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <som:SOMUpdateSNStatusMessage xmlns:som="urn:tracelink:mapper:sl:serialized_operations_manager" xmlns:cmn="urn:tracelink:mapper:sl:commontypes"> <som:ControlFileHeader> <cmn:FileSenderNumber>8888882028655</cmn:FileSenderNumber> <cmn:FileReceiverNumber>8888882028677</cmn:FileReceiverNumber> <cmn:FileControlNumber>20180613063132</cmn:FileControlNumber> <cmn:FileDate>2018-06-13</cmn:FileDate> <cmn:FileTime>08:31:32Z</cmn:FileTime> </som:ControlFileHeader> <som:MessageBody> <cmn:EventDateTime>2018-06-13T08:31:32Z</cmn:EventDateTime> <cmn:EventTimeZoneOffset>-04:00</cmn:EventTimeZoneOffset> <cmn:NumberList> <cmn:Serial format="AI(01)+AI(21)">010088202501033821100000880001</cmn:Serial> <cmn:Serial format="AI(01)+AI(21)">010088202501033821100000880002</cmn:Serial> <cmn:Serial format="AI(01)+AI(21)">010088202501033821100000880003</cmn:Serial> <cmn:Serial format="AI(01)+AI(21)">010088202501033821100000880051</cmn:Serial> </cmn:NumberList> <cmn:EventLocation>9297187.01994.0</cmn:EventLocation> <cmn:SerialNumberStatus>COMMISSIONED</cmn:SerialNumberStatus> <cmn:ItemStatus>AVAILABLE</cmn:ItemStatus> <cmn:UpdateSNStatusReasonCode>QUALITY_RELEASED</cmn:UpdateSNStatusReasonCode> <cmn:UpdateType>ProductStatusUpdate</cmn:UpdateType> <cmn:ReasonDescription>Released by Quality</cmn:ReasonDescription> </som:MessageBody> </som:SOMUpdateSNStatusMessage>

Data Element | Error Message | Description |
---|---|---|
Class 1 | ||
cmn:ItemStatus | Item status is required if serial number status = COMMISSIONED or REGISTERED !!! | The error occurs if source is empty or null and cmn:SerialNumberStatus equals COMMMISSIONED or REGISTERED . |
Valid item status code is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. | |
cmn:SerialNumberStatus | Valid serial number status is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. |
cmn:UpdateSNStatusReasonCode | Valid serial number status reason code is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. |
cmn:UpdateType | Valid serial number status update type is required !!! | The error occurs if the source does not equal ProductStatusUpdate or ModifyingIncorrectProductStatus . |
Class 2 | ||
cmn:Serial | Serial number <Serial Number> does not exist. | The error occurs if the specified serial number does not exist in the system. |
Operation could not be performed because serial number [child serial number] and serial number [container serial number] are currently in different states or the operation would result in them having different states. Parent and child serial numbers are not permitted to be in different states. | The error occurs if the specified serial number has a parent serial number in a different state. | |
Cannot perform operation on serial number <serial number> with item state/serial number state <item state/serial number state>. This operation can only be performed when: <List of item states separated by or's>. | The error occurs if the specified serial number cannot be updated from its current state. | |
tl:updateSNStatusReasonCode | Update could not be processed. Reason Code should not contain a value unless Serial Number Status is set to Commissioned, Registered, Decommissioned, or Destroyed. | The error occurs if the Reason Code field is populated and the Serial Number Status is not set to Commissioned , Registered , Decommissioned , or Destroyed . |
Update could not be processed. Reason Code cannot be set to <reason code> with a Serial Number Status of <serial number status>. | The error occurs if the Reason Code field is populated with a value that is not available based on the Serial Number Status. | |
tl:updateType | Update could not be processed. Update Type must be one of Product Status Update, Modifying Incorrect Product Status. | The error occurs if the source does not equal ProductStatusUpdate or ModifyingIncorrectProductStatus . |
Class 3 | ||
The following is thrown for all Class 3 errors: “INTERNALERROR=Internal error from server [server details].” Please contact Support if this error is encountered. |
Update Serial Number Status (EPCIS v1.2)

Message Type: SOM_UPDATE_SN_STATUS
Info Exchange Display Name: Update Serial Number Status

NTINs must follow the GS1 Guidance standards as found on the GS1 website.
- Ex: urn:epc:id:sgtin:415001647778.0.100000000022
- Format: urn:epc:id:sgtin:[company prefix].[indicator digit][item ref].[serial number]
Information regarding NTINs cannot be exchanged with trade partners unless the specific format outlined above is followed. If using an NTIN without following this format, an outbound error occurs when passing data from TraceLink to a trade partner.
Data Element | Occurs Length |
Type | Description | |||||
---|---|---|---|---|---|---|---|---|
epcis:EPCISDocument | - |
1…1- |
Required. EPCIS message root element. |
|||||
@schemaVersion | 0/* |
1…1Decimal |
Required. The version of the EPCIS schema used to populate the EPCIS document elements. Must equal |
|||||
@creationDate | 1/* |
1…1DateTime |
Required. Date the message was created in YYYY-MM-DDTHH:MM:SS:mmZ format.16 |
|||||
EPCISHeader | - |
0…1- |
Required. The XML file control header. |
|||||
sbdh:StandardBusinessDocumentHeader | - |
1…1- |
Required. Business header information including EPCIS Header Version, Sender, and Receiver information, along with the document identification. |
|||||
sbdh:HeaderVersion | 0/* |
1…1String |
Required. Version of the Standard Business Document Header (SBDH). The HeaderVersion must be set to |
|||||
sbdh:Sender | - |
1…*- |
Required. A unique identification key for the Sender party of the message, representing the organization that created the standard business document. The Sender element must be used only once with GS1 XML messages. |
|||||
sbdh:Identifier | 1/* |
1…1String |
Required. The value of the Identifier element may be a GLN, SGLN, or any other supported business party type.18 SGLN and all other party types should be sent with GS1-conformant uri prefix, for example:
See the MDPartyTypeAttributes enumeration list for valid values. |
|||||
@Authority | 1/* |
1…1String |
Required. The sender identifier type. The Authority was previously expected to be set to See the MDPartyTypeEnums enumeration list for valid values. |
|||||
sbdh:Receiver | - |
1…*- |
Required. Indicates a unique identification key for the direct Receiver party of the message, representing the organization that receives the standard business document. The Receiver element is used only once with GS1 XML messages. |
|||||
sbdh:Identifier | 1/* |
1…1String |
Required. The value of the Identifier element may be a GLN, SGLN, or any other supported business party type.20 SGLN and all other party types should be sent with GS1-conformant uri prefix, for example:
See the MDPartyTypeAttributes enumeration list for valid values. |
|||||
@Authority | 1/* |
1…1String |
Required. The Authority was previously
expected to be set to See the MDPartyTypeEnums enumeration list for valid values. |
|||||
sbdh:DocumentIdentification | - |
1…1- |
Required. Contains the identification group for the message. |
|||||
sbdh:Standard | 0/* |
1…1String |
Required. Name of the document standard contained in the file or message. The standard value for this field is |
|||||
sbdh:TypeVersion | 0/* |
1…1String |
Required. Reflects the version of the document included. This is the complete version of the document itself and is different from the HeaderVersion as these are hard-coded values. The TypeVersion is set to |
|||||
sbdh:InstanceIdentifier | 1/* |
1…1String |
Required. Reference information that uniquely identifies this instance of the Standard Business Document between the Sender and the Receiver. This identifier confirms this document as being distinct from others.24 |
|||||
sbdh:Type | 0/* |
1…1String |
Required. Identifies the
document type. The Type value is set to |
|||||
sbdh:CreationDateAndTime | 0/* |
1…1DateTime |
Required. The date and time of the SBDH document's creation. GMT create date and time for the EPCIS message. The system expects the |
|||||
EPCISBody | - |
1…1- |
Required. Contains all of the EPCIS events for this message. |
|||||
EventList | - |
1…1- |
Required. Only the ObjectEvent is present in the EventList for the Update Serial Number Status message. |
|||||
choice | - |
1…1Choice |
Required. Only the ObjectEvent is present in the EventList for the Update Serial Number Status message. |
|||||
ObjectEvent | - |
1…*- |
Required.ObjectEvent for the Update Serial Number Status message.
|
|||||
eventTime | 1/* |
1…1DateTime |
Required. Timestamp of date/time when the event occurred. Includes a time zone indicator as specified in Section 9.5 of [EPCIS1.0.1] in YYY-MM-DDTHH:MM:SS.ssZ format.27 |
|||||
recordTime | 0/* |
0…1DateTime |
Not used. |
|||||
eventTimeZoneOffset | 1/* |
1…1String |
Required. Time zone offset in effect for the time and place where the event occurred, consistent with what choice is made for eventTime. Per Section 7.2.8 of [EPCIS1.0.1].28 |
|||||
epcList | 1/* |
1…*String |
Required. The list of all EPCs reported in the Update Serial Number Status message. |
|||||
epc | 0/* |
1…1String |
Required. The EPC identifier in EPC Pure Identity URI format. |
|||||
action | 0/* |
0…1AnyURI |
Required. The action value is dependent on the value in SerialNumberStatus.30
See the ActionType enumeration list for valid values. |
|||||
bizStep | 0/* |
0…1AnyURI |
Required. The bizStep field depends on the business step performed resulting in the serial number status change.31
See the BizStep enumeration list for valid values. |
|||||
disposition | 0/* |
0…1AnyURI |
Required. This field depends on the disposition for the business step performed resulting in the serial number status change.32 Valid values:
See the Disposition enumeration list for valid values. |
|||||
readPoint | - |
0…1- |
Identifies the location where the event occurred, i.e. the warehouse GLN location ID and storage location (e.g. shelf, bin), in URN format. This field is not used. |
|||||
id | 0/* |
1…1AnyURI |
Required. The SGLN EPC of the location where the event occurs. This may be a site-level SGLN, or a finer-grain location identifier.33 |
|||||
extension | - |
0…1- |
Not used - GS1-Reserved. |
|||||
bizLocation | 1/* |
1…1AnyURI |
Required. The SGLN EPC of the location where the event occurs. This may be a site-level SGLN, or a finer-grain location identifier.34 |
|||||
id | - |
1…1- |
Required. Business documents required for the Update Serial Number Status message. |
|||||
bizTransactionList | - |
0…1- |
Not used. |
|||||
tl:locationId | 0/* |
0…1String |
Serialized Operations Manager external partner location identifier.35 tl:location | @type defines the type of the location identifier.
|
|||||
@type | 1/* |
1…1String |
Required. Attribute identifies the location types.36 Valid values:
See the Location enumeration list for valid values. |
|||||
tl:updateStatusEventExtensions | - |
1…1- |
Required. Extension for the Update Serial Number Status event. |
|||||
tl:updateSNStatusReasonCode | 0/* |
0…1String |
Identifies the reason for a serial number status update.37 See the StatusReasonCode enumeration list for valid values. |
|||||
tl:updateType | 1/* |
1…1String |
Required. Type of update to the serial number status.38 Valid values:
|
|||||
tl:reasonDescription | 0/* |
0…1String |
Text description of the reason for the status update.39 |

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <epcis:EPCISDocument xmlns:epcis="urn:epcglobal:epcis:xsd:1" xmlns:tl="http://epcis.tracelink.com/ns" xmlns:sbdh="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader" xmlns:epcglobal="urn:epcglobal:xsd:1" schemaVersion="1" creationDate="2018-06-13T08:31:32Z"> <EPCISHeader> <sbdh:StandardBusinessDocumentHeader> <sbdh:HeaderVersion>1.0</sbdh:HeaderVersion> <sbdh:Sender> <sbdh:Identifier Authority="GLN">8779891013658</sbdh:Identifier> </sbdh:Sender> <sbdh:Receiver> <sbdh:Identifier Authority="GLN">8887771013655</sbdh:Identifier> </sbdh:Receiver> <sbdh:DocumentIdentification> <sbdh:Standard>EPCglobal</sbdh:Standard> <sbdh:TypeVersion>1.0</sbdh:TypeVersion> <sbdh:InstanceIdentifier>2018083006310032</sbdh:InstanceIdentifier> <sbdh:Type>Events</sbdh:Type> <sbdh:CreationDateAndTime>2018-06-13T08:31:32Z</sbdh:CreationDateAndTime> </sbdh:DocumentIdentification> </sbdh:StandardBusinessDocumentHeader> </EPCISHeader> <EPCISBody> <EventList> <ObjectEvent> <eventTime>2018-06-13T08:31:32Z</eventTime> <eventTimeZoneOffset>-04:00</eventTimeZoneOffset> <epcList> <epc>urn:epc:id:sgtin:068202.0401034.11220207026272</epc> <epc>urn:epc:id:sgtin:068202.0401034.11220207026273</epc> </epcList> <action>OBSERVE</action> <bizStep>urn:epcglobal:cbv:bizstep:stock_taking</bizStep> <disposition>urn:epcglobal:cbv:disp:stolen</disposition> <bizLocation> <id>urn:epc:id:sgln:8887777.01384.0</id> </bizLocation> <updateStatusEventExtensions> <tl:updateSNStatusReasonCode>STOLEN</tl:updateSNStatusReasonCode> <tl:updateType>ProductStatusUpdate</tl:updateType> <tl:reasonDescription>Stolen product</tl:reasonDescription> </updateStatusEventExtensions> </ObjectEvent> </EventList> </EPCISBody> </epcis:EPCISDocument>

Data Element | Error Message | Description |
---|---|---|
Class 1 | ||
bizLocation | id | Source bizLocation is required !!! | The error occurs if the source is empty or null. |
disposition | Valid combination of action, bizStep and disposition is required !!! | The error occurs if not a valid combination. |
epcList | epc | Invalid EPC format !!! | The error occurs if the source is empty or null, or if the source is an invalid EPC format. |
ObjectEvent | One ObjectEvent is required !!! | The error occurs if the source is empty or null. |
Only one ObjectEvent is required !!! | The error occurs if more than one source is found. | |
tl:updateSNStatusReasonCode | Valid serial number status reason code is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. |
tl:updateStatusEventExtensions | Only one update status event extension group is required !!! | The error occurs if more than one source is found. |
Serial number status is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. | |
tl:updateType | Valid serial number status update type is required !!! | The error occurs if the source does not equal ProductStatusUpdate or ModifyingIncorrectProductStatus . |
Class 2 | ||
bizStep | Update could not be processed. Serial Number Status must be one of Commissioned, Decommissioned, Destroyed, Encoded, Registered, Reserved, Unreserved. | The error occurs if the source is empty or null, or is not a valid value from the enumeration list.
|
disposition | Update could not be processed. Item Status should not contain a value unless Serial Number Status is set to Commissioned or Registered. | The error occurs if the Item Status field is populated and the Serial Number Status is not set to Commissioned or Registered.
|
epcList | epc | Serial number <Serial Number> does not exist. | The error occurs if the serial number does not exist in the system. |
Operation could not be performed because serial number [child serial number] and serial number [container serial number] are currently in different states or the operation would result in them having different states. Parent and child serial numbers are not permitted to be in different states. | The error occurs if the serial number has a parent serial number in a different state. | |
Cannot perform operation on serial number <serial number> with item state/serial number state <item state/serial number state>. This operation can only be performed when: <List of item states separated by or's>. | The error occurs if the serial number cannot be updated from its current state.
|
|
tl:updateSNStatusReasonCode | Update could not be processed. Reason Code should not contain a value unless Serial Number Status is set to Commissioned, Registered, Decommissioned, or Destroyed. | The error occurs if the Reason Code field is populated and the Serial Number Status is not set to Commissioned , Registered , Decommissioned , or Destroyed . |
Update could not be processed. Reason Code cannot be set to <reason code> with a Serial Number Status of <serial number status>. | The error occurs if the Reason Code field is populated with a value that is not available based on the Serial Number Status. | |
tl:updateType | Update could not be processed. Update Type must be one of Product Status Update, Modifying Incorrect Product Status. | The error occurs if the source is empty or null, or is not a valid value from the enumeration list. |
Class 3 | ||
The following is thrown for all Class 3 errors: “INTERNALERROR=Internal error from server [server details].” Please contact Support if this error is encountered. |
Update Serial Number Status Event (EPCIS v1.2)

Message Type: SOM_UPDATE_SN_STATUS_EVENT_IB
Info Exchange Display Name: Received Update Serial Number Status Event

NTINs must follow the GS1 Guidance standards as found on the GS1 website.
- Ex: urn:epc:id:sgtin:415001647778.0.100000000022
- Format: urn:epc:id:sgtin:[company prefix].[indicator digit][item ref].[serial number]
Information regarding NTINs cannot be exchanged with trade partners unless the specific format outlined above is followed. If using an NTIN without following this format, an outbound error occurs when passing data from TraceLink to a trade partner.
Data Element | Occurs Length |
Type | Description | |||||
---|---|---|---|---|---|---|---|---|
epcis:EPCISDocument | – |
1…1- |
Required. EPCIS message root element. |
|||||
@schemaVersion | 0/* |
1…1Decimal |
Required. The version of the EPCIS schema used to populate the EPCIS document elements. Must equal |
|||||
@creationDate | 1/* |
1…1DateTime |
Required. The date and time of the SBDH document's creation. GMT create date and time for the EPCIS message. The system expects the |
|||||
EPCISHeader | – |
0…1- |
Required. The XML file control header. |
|||||
sbdh:StandardBusinessDocumentHeader | – |
1…1- |
Required. Business header information including EPCIS Header Version, Sender, and Receiver information, along with the document identification. |
|||||
sbdh:HeaderVersion | 0/* |
1…1String |
Required. Version of the Standard Business Document Header (SBDH). The HeaderVersion must be set to |
|||||
sbdh:Sender | – |
1…*- |
Required. A unique identification key for the Sender party of the message, representing the organization that created the standard business document. The Sender element must be used only once with GS1 XML messages. |
|||||
sbdh:Identifier | 1/* |
1…1String |
Required.The value of the Identifier element may be a GLN, SGLN, or any other supported business party type.43 SGLN and all other party types should be sent with a GS1-conformant uri prefix. For example:
See the MDPartyTypeAttributes enumeration list for valid values. |
|||||
@Authority | 1/* |
1…1String |
Required. The sender identifier type. The Authority was previously expected to be set to See the MDPartyTypeEnums enumeration list for valid values. |
|||||
sbdh:Receiver | – |
1…*- |
Required. A unique identification key for the Receiver party of the message, representing the organization that created the standard business document. The Receiver element must be used only once with GS1 XML messages. |
|||||
sbdh:Identifier | 1/* |
1…1String |
Required. The value of the Identifier element may be a GLN, SGLN, or any other supported business party type.45 SGLN and all other party types should be sent with a GS1-conformant uri prefix. For example:
See the MDPartyTypeAttributes enumeration list for valid values. |
|||||
@Authority | 1/* |
1…1String |
Required. The sender identifier type. The Authority was previously expected to be set to See the MDPartyTypeEnums enumeration list for valid values. |
|||||
sbdh:DocumentIdentification | – |
1…1- |
Required. Contains the identification group for the message. |
|||||
sbdh:Standard | 0/* |
1…1String |
Required. Name of the document standard contained in the file or message. The standard value for this field is |
|||||
sbdh:TypeVersion | 0/* |
1…1String |
Required. Reflects the version of the document included. This is the complete version of the document itself and is different from the HeaderVersion as these are hard-coded values. The TypeVersion is set to |
|||||
sbdh:InstanceIdentifier | 1/* |
1…1String |
Required. Reference information that uniquely identifies this instance of the Standard Business Document between the Sender and the Receiver. This identifier confirms this document as being distinct from others.49 |
|||||
sbdh:Type | 0/* |
1…1String |
Required. This element identifies the type of the document. The Type value must be set to "Events".50 |
|||||
sbdh:CreationDateAndTime | 0/* |
1…1DateTime |
Required. The date and time of the SBDH document's creation. GMT create date and time for the EPCIS message. The system expects the |
|||||
EPCISBody | – |
1…1- |
Required. Contains all of the EPCIS events for this message. |
|||||
EventList | – |
1…1- |
Required. Only the ObjectEvent is present in the EventList for the Update Serial Number Status message. |
|||||
choice | – |
1…1Choice |
Required. Only the ObjectEvent is present in the EventList for the Update Serial Number Status message. |
|||||
ObjectEvent | – |
1…*- |
Required.ObjectEvent for the Update Serial Number Status message.
|
|||||
eventTime | 1/* |
1…1DateTime |
Required. Timestamp of date/time when the event occurred. Includes a time zone indicator as specified in Section 9.5 of [EPCIS1.0.1].52 |
|||||
recordTime | 0/* |
0…1DateTime |
Not used. |
|||||
eventTimeZoneOffset | 1/* |
1…1String |
Required. Time zone offset in effect for the time and place where the event occurred, consistent with what choice is made for eventTime. Per Section 7.2.8 of [EPCIS1.0.1].53 |
|||||
epcList | 1/* |
1…*String |
Required. The list of all EPCs reported in the Update Serial Number Status message. |
|||||
epc | 0/* |
1…1String |
Required. The EPC identifier in EPC Pure Identity URI format. See EPC Pure Identifier Format Examples.54 |
|||||
action | 0/* |
0…1AnyURI |
Required. The action value is dependent on the value in SerialNumberStatus.55 See the ActionType enumeration list for valid values.
|
|||||
bizStep | 0/* |
0…1AnyURI |
Required. The bizStep field depends on the business step performed resulting in the serial number status change.56 See the BizStep enumeration list for valid values.
|
|||||
disposition | 0/* |
0…1AnyURI |
Required. This field depends on the disposition for the business step performed resulting in the serial number status change.57 Valid values:
|
|||||
readPoint | – |
0…1- |
Not used. |
|||||
id | 0/* |
1…1AnyURI |
Not used. |
|||||
extension | – |
0…1- |
Not used - GS1-Reserved. |
|||||
bizLocation | 1/* |
1…1AnyURI |
Required. The SGLN EPC of the location where the event occurs. This may be a site-level SGLN, or a finer-grain location identifier.58 |
|||||
id | – |
1…1- |
Required. Business documents required for the Update Serial Number Status message. |
|||||
bizTransactionList | – |
0…1- |
Not used. |
|||||
tl:locationId | 0/* |
0…1String |
Serialized Operations Manager external partner location identifier.59 tl:locationId | @type defines the type of the location identifier.
|
|||||
@type | 1/* |
1…1String |
Required. Attribute identifies the location types.60 See the LocationIdType enumeration list for valid values. |
|||||
tl:updateStatusEventExtensions | – |
1…1- |
Required. Extension for the Update Serial Number Status event. |
|||||
tl:updateSNStatusReasonCode | 0/* |
0…1String |
Identifies the reason for a serial number status update.61 See the StatusReasonCode enumeration list for valid values. |
|||||
tl:updateType | 1/* |
1…1String |
Required. Type of update to the serial number status.62 Valid values:
|
|||||
tl:reasonDescription | 0/* |
0…1String |
Text description of the reason for the status update.63 |

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <epcis:EPCISDocument xmlns:epcis="urn:epcglobal:epcis:xsd:1" xmlns:tl="http://epcis.tracelink.com/ns" xmlns:sbdh="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader" xmlns:epcglobal="urn:epcglobal:xsd:1" schemaVersion="1.2" creationDate="2018-09-18T19:12:53Z"> <EPCISHeader> <sbdh:StandardBusinessDocumentHeader> <sbdh:HeaderVersion>1.0</sbdh:HeaderVersion> <sbdh:Sender> <sbdh:Identifier Authority="GLN">8779891013658</sbdh:Identifier> </sbdh:Sender> <sbdh:Receiver> <sbdh:Identifier Authority="GLN">8779891024769</sbdh:Identifier> </sbdh:Receiver> <sbdh:DocumentIdentification> <sbdh:Standard>EPCglobal</sbdh:Standard> <sbdh:TypeVersion>1.0</sbdh:TypeVersion> <sbdh:InstanceIdentifier>2019120210050032</sbdh:InstanceIdentifier> <sbdh:Type>Events</sbdh:Type> <sbdh:CreationDateAndTime>2019-12-02T10:05:32Z</sbdh:CreationDateAndTime> </sbdh:DocumentIdentification> </sbdh:StandardBusinessDocumentHeader> </EPCISHeader> <EPCISBody> <EventList> <ObjectEvent> <eventTime>2019-12-02T10:05:32Z</eventTime> <eventTimeZoneOffset>-05:00</eventTimeZoneOffset> <epcList> <epc>urn:epc:id:sgtin:0882025.501033.100000060001</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060002</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060003</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060004</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060005</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060006</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060007</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060008</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060009</epc> <epc>urn:epc:id:sgtin:0882025.501033.100000060010</epc> <epc>urn:epc:id:sgtin:0882026.503022.100000003101</epc> </epcList> <action>OBSERVE</action> <bizStep>urn:epcglobal:cbv:bizstep:stock_taking</bizStep> <disposition>urn:epcglobal:cbv:disp:stolen</disposition> <readPoint> <id>urn:epc:id:sgln:9997777.02449.0</id> </readPoint> <bizLocation> <id>urn:epc:id:sgln:9997777.02449.0</id> </bizLocation> <updateStatusEventExtensions> <tl:updateSNStatusReasonCode>STOLEN</tl:updateSNStatusReasonCode> <tl:updateType>ProductStatusUpdate</tl:updateType> <tl:reasonDescription>Stolen product</tl:reasonDescription> </updateStatusEventExtensions> </ObjectEvent> </EventList> </EPCISBody> </epcis:EPCISDocument>

Data Element | Error Message | Description | Inbound / Outbound |
---|---|---|---|
Class 1 | |||
sbdh:Sender | sbdh:Identifier | Source message sender is required !!! | The error occurs if the source is empty or null. | OB |
sbdh:Sender | sbdh:Identifier | @Authority | Valid Sender/Identifier Authority is required !!! | The error occurs if the source is invalid. | IB |
Partner type in source type attribute is required !!! | The error occurs if the source is empty or null, or if the source is present, but there is no matching entry in the lookup file. | OB | |
sbdh:Receiver | sbdh:Identifier | Source message receiver is required !!! | The error occurs if the source is empty or null. | OB |
sbdh:Receiver | sbdh:Identifier | @Authority | Valid Receiver/Identifier Authority is required !!! | The error occurs if the source is invalid. | IB |
Partner type in source type attribute is required !!! | The error occurs if the source is empty or null, or if the source is present, but there is no matching entry in the lookup file. | OB | |
ObjectEvent | One ObjectEvent is required !!! | The error occurs if the source is empty or null. | IB |
Only one ObjectEvent is required !!! | The error occurs if more than one source is found. | IB | |
Only one update serial number status event is required !!! | The error occurs if more than one source is found. | OB | |
epcList | epc | Invalid EPC format !!! | The error occurs if the source is empty or null, or if the source is an invalid EPC format. | IB |
Valid serial number format is required !!! | The error occurs if the source is empty or null, or if the source is an invalid serial number format. | OB | |
action | Valid Action is required !!! | The error occurs if the source does not equal ADD , DELETE , or OBSERVE . |
OB |
bizStep | Valid BizStep is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. | OB |
disposition | Valid combination of action, bizStep and disposition is required !!! | The error occurs if not a valid combination. | IB |
Valid Disposition is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. | OB | |
bizLocation | id | Event location is required !!! | The error occurs if the source is empty or null, or is not a valid value from the enumeration list. | OB |
Source bizLocation is required !!! | The error occurs if the source is empty or null. | IB | |
Valid event location type is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. | OB | |
tl:updateStatusEventExtensions | Only one update status event extension group is required !!! | The error occurs if more than one source is found. | IB |
Serial number status is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. | IB | |
tl:updateSNStatusReasonCode | Valid serial number status reason code is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. | IB / OB |
tl:updateType | Valid serial number status update type is required !!! | The error occurs if the source does not equal ProductStatusUpdate or ModifyingIncorrectProductStatus , or if the source is empty or null. |
IB / OB |
Class 2 | |||
Class 2 errors are thrown in response to the Serialized Operations Manager Update Serial Number Status (EPCIS v1.2) inbound message. | |||
bizStep | Update could not be processed. Serial Number Status must be one of Commissioned, Decommissioned, Destroyed, Encoded, Registered, Reserved, Unreserved. |
The error occurs if action, bizStep, and disposition are not a valid combination. See the StatusProcessing table for valid combinations. ![]() |
|
disposition | Update could not be processed. Item Status should not contain a value unless Serial Number Status is set to Commissioned or Registered. |
The error occurs if the Item Status field is populated and the Serial Number Status is not set to Commissioned or Registered. ![]() |
|
epcList | epc | Serial number <Serial Number> does not exist. | The error occurs if the serial number does not exist in the system. | |
Operation could not be performed because serial number [child serial number] and serial number [container serial number] are currently in different states or the operation would result in them having different states. Parent and child serial numbers are not permitted to be in different states. | The error occurs if the serial number has a parent serial number in a different state. | ||
Cannot perform operation on serial number <serial number> with item state/serial number state <item state/serial number state>. This operation can only be performed when: <List of item states separated by or's>. | The error occurs if the serial number cannot be updated from its current state.![]() |
||
tl:updateSNStatusReasonCode | Update could not be processed. Reason Code should not contain a value unless Serial Number Status is set to Commissioned, Registered, Decommissioned, or Destroyed. | The error occurs if the Reason Code field is populated and the Serial Number Status is not set to Commissioned , Registered , Decommissioned , or Destroyed . |
|
Update could not be processed. Reason Code cannot be set to <reason code> with a Serial Number Status of <serial number status>. | The error occurs if the Reason Code field is populated with a value that is not available based on the Serial Number Status. | ||
tl:updateType | Update could not be processed. Update Type must be one of Product Status Update, Modifying Incorrect Product Status. | The error occurs if the source is empty or null, or is not a valid value from the enumeration list. | |
Class 3 | |||
The following is thrown for all Class 3 errors: “INTERNALERROR=Internal error from server [server details].” Please contact Support if this error is encountered. |
ESM Update Serial Number Status (EPCIS v1.2)

Message Type: SOM_ESM_UPDATE_SN_STATUS
Info Exchange Display Name: ESM Update Serial Number Status

NTINs must follow the GS1 Guidance standards as found on the GS1 website.
- Ex: urn:epc:id:sgtin:415001647778.0.100000000022
- Format: urn:epc:id:sgtin:[company prefix].[indicator digit][item ref].[serial number]
Information regarding NTINs cannot be exchanged with trade partners unless the specific format outlined above is followed. If using an NTIN without following this format, an outbound error occurs when passing data from TraceLink to a trade partner.
Data Element | Occurs Length |
Type | Description | |||||
---|---|---|---|---|---|---|---|---|
epcis:EPCISDocument | – |
1…1- |
Required. EPCIS message root element. |
|||||
@schemaVersion | 0/* |
1…1Decimal |
Required. The version of the EPCIS schema used to populate the EPCIS document elements. Must equal |
|||||
@creationDate | 1/* |
1…1DateTime |
Required. Date the message was created in YYYY-MM-DDTHH:MM:SS:mmZ format.65 |
|||||
EPCISHeader | – |
0…1- |
Required. The XML file control header. |
|||||
sbdh:StandardBusinessDocumentHeader | – |
1…1- |
Required. Business header information including EPCIS Header Version, Sender, and Receiver information, along with the document identification. |
|||||
sbdh:HeaderVersion | 0/* |
1…1String |
Required. Version of the Standard Business Document Header (SBDH). The HeaderVersion must be set to |
|||||
sbdh:Sender | – |
1…*- |
Required. A unique identification key for the Sender party of the message, representing the organization that created the standard business document. The Sender element must be used only once with GS1 XML messages. |
|||||
sbdh:Identifier | 1/* |
1…1String |
Required. The value of the Identifier element may be a GLN, SGLN, or any other supported business party type.67 Send SGLN and all other party types with the GS1-conformant uri prefix, for example:
|
|||||
@Authority | 1/* |
1…1String |
Required. The sender identifier type. The Authority was previously expected to be set to |
|||||
sbdh:Receiver | – |
1…*- |
Not used. |
|||||
sbdh:Identifier | 1/* |
1…1String |
Required. Indicates a unique identification key for the direct Receiver party of the message, representing the organization that receives the standard business document. The Receiver element is used only once with GS1 XML messages. |
|||||
@Authority | 1/* |
1…1String |
Required. The value of the Identifier element may be a GLN, SGLN, or any other supported business party type.69 Send SGLN and all other party types with the GS1-conformant uri prefix, for example:
|
|||||
sbdh:DocumentIdentification | – |
1…1- |
Required. The receiver identifier type. The Authority was previously expected to be set to |
|||||
sbdh:Standard | 0/* |
1…1String |
Not used. |
|||||
sbdh:TypeVersion | 0/* |
1…1String |
Required. Contains the identification group for the message. |
|||||
sbdh:InstanceIdentifier | 1/* |
1…1String |
Required. Name of the document standard contained in the file or message. The standard value for this field is |
|||||
sbdh:Type | 0/* |
1…1String |
Required. Reflects the version of the document included. This is the complete version of the document itself and is different from the HeaderVersion as these are hard-coded values. The TypeVersion is set to |
|||||
sbdh:CreationDateAndTime | 0/* |
1…1DateTime |
Required. Reference information that uniquely identifies this instance of the Standard Business Document between the Sender and the Receiver. This identifier confirms this document as being distinct from others.73 |
|||||
EPCISBody | – |
1…1- |
Required. Contains all of the EPCIS events for this message. |
|||||
EventList | – |
1…1- |
Required. Only the ObjectEvent is present in the EventList for the Update Serial Number Status message. |
|||||
choice | – |
1…1Choice |
Required. Only the ObjectEvent is present in the EventList for the Update Serial Number Status message. |
|||||
ObjectEvent | – |
1…*- |
Required. ObjectEventfor the Update Serial Number Status message. ![]()
|
|||||
eventTime | 1/* |
1…1DateTime |
Required. The time stamp of the date/time when the event occurred in YYYY-MM-DDTHH:MM:SS.mm or YYYY-MM-DDTHH:MM:SS.mmm format. Must include a time zone indicator as specified in Section 9.5 of [EPCIS1.0.1]. The system expects the Z to be appendedif it is not included; however, the system assumes that the time is GMT and therefore appends the Z.74 |
|||||
recordTime | 0/* |
0…1DateTime |
Not used. |
|||||
eventTimeZoneOffset | 1/* |
1…1String |
Required. The time zone offset in the place where the event occurred, consistent with what choice was made for eventTime. A time offset is an amount of time subtracted from or added to UTC (Coordinated Universal Time) to get the current civil time, whether it is standard time or Daylight saving time. Per Section 7.2.8 of [EPCIS1.0.1].75 |
|||||
epcList | 1/* |
1…*String |
Required. The list of all EPCs reported in the Update Serial Number Status message. |
|||||
epc | 0/* |
1…1String |
Required. The EPC identifier in EPC Pure Identity URI format. See EPC Pure Identifier Format Examples.76 |
|||||
action | 0/* |
0…1AnyURI |
Required. The action value is dependent on the value in SerialNumberStatus.77
See the ActionType enumeration list for valid values. |
|||||
bizStep | 0/* |
0…1AnyURI |
Required. The bizStep field depends on the business step performed resulting in the serial number status change.78
See the BizStep enumeration list for valid values. |
|||||
disposition | 0/* |
0…1AnyURI |
Required. This field depends on the disposition for the business step performed resulting in the serial number status change.79 Valid values:
|
|||||
readPoint | – |
0…1- |
Not used. |
|||||
id | 0/* |
1…1AnyURI |
Not used. |
|||||
extension | – |
0…1- |
Not used - GS1-Reserved. |
|||||
bizLocation | 1/* |
1…1AnyURI |
Required. The SGLN EPC of the location where the event occurs. This may be a site-level SGLN, or a finer-grain location identifier.80 |
|||||
id | – |
1…1- |
Required. Business documents required for the Update Serial Number Status message. |
|||||
bizTransactionList | – |
0…1- |
Not used. |
|||||
tl:locationId | 0/* |
0…1String |
Serialized Operations Manager external partner location identifier.81 @type defines the type of the location identifier.
|
|||||
@type | 1/* |
1…1String |
Required. Attribute identifies the location types.82 See the LocationIdType enumeration list for valid values: |
|||||
tl:updateStatusEventExtensions | – |
1…1- |
Required. Extension for the Update Serial Number Status event. |
|||||
tl:updateSNStatusReasonCode | 0/* |
0…1String |
Identifies the reason for a serial number status update.83 See the StatusReasonCode enumeration list for valid values. |
|||||
tl:updateType | 1/* |
1…1String |
Required. Type of update to the serial number status.84 Valid values:
|
|||||
tl:reasonDescription | 0/* |
0…1String |
Text description of the reason for the status update.85 |

<?xml version="1.0" encoding="UTF-8"?> <epcis:EPCISDocument xmlns:tl="http://epcis.tracelink.com/ns" xmlns:sbdh="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader" xmlns:cbvmda="urn:epcglobal:cbv:mda" xmlns:epcis="urn:epcglobal:epcis:xsd:1" schemaVersion="1.2" creationDate="2017-02-20T17:45:20Z"> <EPCISHeader> <sbdh:StandardBusinessDocumentHeader> <sbdh:HeaderVersion>1.0</sbdh:HeaderVersion> <sbdh:Sender> <sbdh:Identifier Authority="GLN">8779891013658</sbdh:Identifier> </sbdh:Sender> <sbdh:Receiver> <sbdh:Identifier Authority="GLN">8811891013778</sbdh:Identifier> </sbdh:Receiver> <sbdh:DocumentIdentification> <sbdh:Standard>EPCglobal</sbdh:Standard> <sbdh:TypeVersion>1.0</sbdh:TypeVersion> <sbdh:InstanceIdentifier>201907251745200001</sbdh:InstanceIdentifier> <sbdh:Type>Events</sbdh:Type> <sbdh:CreationDateAndTime>2019-07-25T21:57:20Z</sbdh:CreationDateAndTime> </sbdh:DocumentIdentification> </sbdh:StandardBusinessDocumentHeader> </EPCISHeader> <EPCISBody> <EventList> <ObjectEvent> <eventTime>2019-07-25T21:57:20Z</eventTime> <eventTimeZoneOffset>-05:00</eventTimeZoneOffset> <epcList> <epc>urn:epc:id:sgtin:068202.0401034.11220207024596</epc> </epcList> <action>OBSERVE</action> <bizStep>http://epcis.tracelink.com/bizstep/sampling</bizStep> <disposition>http://epcis.tracelink.com/disp/sampled</disposition> <readPoint> <id>urn:epc:id:sgln:9297187.01994.0</id> </readPoint> <bizLocation> <id/> </bizLocation> <tl:locationId type="GLN">8811891013778</tl:locationId> <tl:takeProductSampleEventExtensions> <tl:takeSampleReasonCode>SELECTIVE_CONTROL</tl:takeSampleReasonCode> <tl:reasonDescription>Released by Quality</tl:reasonDescription> <tl:inspectionCountryCode>US</tl:inspectionCountryCode> <tl:samplingPartyId type="GLN">8811891013778</tl:samplingPartyId> </tl:takeProductSampleEventExtensions> </ObjectEvent> </EventList> </EPCISBody> </epcis:EPCISDocument>

Data Element | Error Message | Description |
---|---|---|
Class 1 | ||
bizLocation | id | Source bizLocation is required !!! | The error occurs if the source is empty or null. |
disposition | Valid combination of action, bizStep and disposition is required !!! | The error occurs if not a valid combination. |
epcList | epc | Invalid EPC format !!! | The error occurs if the source is empty or null, or if the source is an invalid EPC format. |
ObjectEvent | One ObjectEvent is required !!! | The error occurs if the source is empty or null. |
Only one ObjectEvent is required !!! | The error occurs if more than one source is found. | |
sbdh:Receiver | sbdh:Identifier | @Authority | Valid Receiver/Identifier Authority is required !!! | The error occurs if the source is invalid. |
sbdh:Sender | sbdh:Identifier | @Authority | Valid Sender/Identifier Authority is required !!! | The error occurs if the source is invalid. |
tl:updateSNStatusReasonCode | Valid serial number status reason code is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. |
tl:updateStatusEventExtensions | Only one update status event extension group is required !!! | The error occurs if more than one source is found. |
Serial number status is required !!! | The error occurs if the source is present, but there is no matching entry in the lookup file. | |
tl:updateType | Valid serial number status update type is required !!! | The error occurs if the source does not equal ProductStatusUpdate or ModifyingIncorrectProductStatus . |
Class 2 | ||
bizStep | Update could not be processed. Serial Number Status must be one of Commissioned, Decommissioned, Destroyed, Encoded, Registered, Reserved, Unreserved. | The error occurs if the source is empty or null, or is not a valid value from the enumeration list.
|
disposition | Update could not be processed. Item Status should not contain a value unless Serial Number Status is set to Commissioned or Registered. | The error occurs if the Item Status field is populated and the Serial Number Status is not set to Commissioned or Registered.
|
epcList | epc | Serial number <Serial Number> does not exist. | The error occurs if the serial number does not exist in the system. |
Operation could not be performed because serial number [child serial number] and serial number [container serial number] are currently in different states or the operation would result in them having different states. Parent and child serial numbers are not permitted to be in different states. | The error occurs if the serial number has a parent serial number in a different state. | |
Cannot perform operation on serial number <serial number> with item state/serial number state <item state/serial number state>. This operation can only be performed when: <List of item states separated by or's>. | The error occurs if the serial number cannot be updated from its current state.
|
|
tl:updateSNStatusReasonCode | Update could not be processed. Reason Code should not contain a value unless Serial Number Status is set to Commissioned, Registered, Decommissioned, or Destroyed. | The error occurs if the Reason Code field is populated and the Serial Number Status is not set to Commissioned , Registered , Decommissioned , or Destroyed . |
Update could not be processed. Reason Code cannot be set to <reason code> with a Serial Number Status of <serial number status>. | The error occurs if the Reason Code field is populated with a value that is not available based on the Serial Number Status. | |
tl:updateType | Update could not be processed. Update Type must be one of Product Status Update, Modifying Incorrect Product Status. | The error occurs if the source is empty or null, or is not a valid value from the enumeration list. |
Class 3 | ||
The following is thrown for all Class 3 errors: “INTERNALERROR=Internal error from server [server details].” Please contact Support if this error is encountered. |
Set Serial Number Status (SOAP)

Guidelines

See SerialNumberStatus Transition Availability for rules/dependencies regarding serial number state transition.
The following data is sent in the request to TraceLink:
Data Element | Occurs Length |
Type | Description | |||||
---|---|---|---|---|---|---|---|---|
soapenv:Envelope | – |
1...1- |
Required. SOAP Envelope root element. |
|||||
soapenv:Header | – |
1...1- |
Not used. |
|||||
soapenv:Body | – |
1...1- |
Required. SOAP Message Body. |
|||||
urn:SetSerialNumberStatus | – |
1...1- |
Required. SetSerialNumberStatus Message. |
|||||
SerialNumberStatusRequest | – |
0...1- |
Required. Request message that either corrects an incorrect serial number status or updates an existing serial number status. |
|||||
SerialNumberList | – |
1...1- |
Required. List of all serial numbers (element may be repeated) that are having their serial number status set. |
|||||
@sn | 1/* |
1...1String |
Required. Serial number that is having its serial number status set. See Serial Number Data Examples.86 |
|||||
@namespace | 1/* |
0...1String |
Not supported by TraceLink. |
|||||
SerialNumberState | – |
1...1String |
Required. Serialization state of the serial number. See the SNState enumeration list for valid values. |
|||||
ItemState | – |
0...1String |
Conditionally required if SerialNumberState is See the ItemState enumeration list for valid values. |
|||||
QualityReleased | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was quality released. This attribute only applies when SerialNumberState is |
|||||
Sampled | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was sampled.87 This attribute only applies when SerialNumberState is |
|||||
Damaged | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was damaged.88 This attribute only applies when SerialNumberState is |
|||||
Recalled | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was recalled. This attribute only applies when SerialNumberState is |
|||||
Expired | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was expired. This attribute only applies when SerialNumberState is |
|||||
Misplaced | 1/* |
0...1Boolean | Item attribute set with SerialNumberState and ItemState indicating the item was misplaced. This attribute only applies when SerialNumberState is |
|||||
Dispensed | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was dispensed. This attribute only applies when SerialNumberState is |
|||||
Disposed | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was disposed. This attribute only applies when SerialNumberState is |
|||||
Repackaged | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was repackaged. |
|||||
SampledByAuthorities | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was sampled by authorities. |
|||||
Stolen | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was stolen. |
|||||
Withdrawn | 1/* |
0...1Boolean |
Item attribute set with SerialNumberState and ItemState indicating the item was withdrawn. |
|||||
ReasonCode | 1/* |
1...1String |
Required. The reason code for the serial number status update. See the ReasonCode enumeration list for valid values. |
|||||
EventDateTime | – |
0...1Date |
Date and time of the set serial number status event in XSD GMT date format. If omitted, the system will record the current date and `time.89 |
|||||
Location | 1/* |
0...1String |
Site-level SGLN of the location
where the event occurred.
SGLN format will be numeric component only, with urn prefix stripped (e.g.
If it is not specified and the API credentials used in the call are specific to a company location, TraceLink will attempt to default the location based upon the corresponding Company Location master data entry.90 |
|||||
ReasonDescription | 1/100 |
0...1String |
An explanation for the serial number status updated. If the ReasonDescription is longe than 100 characters, only the first 100 characters will be stored. |
|||||
ReportingParty | 1/* |
0...1String |
The value is IDType and IDValue concatenated with a See the IdentifierType enumeration list for valid values. |
|||||
LongRunningRestSupport | - |
-Boolean | Not used. |
Example
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:tracelink:soap"> <soapenv:Header/> <soapenv:Body> <urn:SetSerialNumberStatus> <SerialNumberStatusRequest> <SerialNumberList sn="00008820200000047506" namespace="?"/> <SerialNumberState>COMMISSIONED</SerialNumberState> <ItemState>AVAILABLE</ItemState> <QualityReleased>false</QualityReleased> <Sampled>false</Sampled> <Damaged>false</Damaged> <Recalled>false</Recalled> <Expired>false</Expired> <Misplaced>false</Misplaced> <Dispensed>false</Dispensed> <Disposed>false</Disposed> <Repackaged>false</Repackaged> <SampledByAuthorities>false</SampledByAuthorities> <Stolen>false</Stolen> <Withdrawn>false</Withdrawn> <ReasonCode>INCORRECTSTATUS</ReasonCode> <EventDateTime>2015-06-01T17:10:16</EventDateTime> <Location>8888882.02867.0</Location> <ReasonDescription>Item was previously unavailable</ReasonDescription> <ReportingParty>DEA|123456</ReportingParty> </SerialNumberStatusRequest> </urn:SetSerialNumberStatus> </soapenv:Body> </soapenv:Envelope>
Errors
Exception Code | Exception Message |
---|---|
BADSERIALNUMBERSTATE | Cannot perform operation on serial number [serial number] with serial number state [serial number state]. This operation can only be performed when the serial number is [serial number state]. |
BADSTATETRANSITION | Cannot perform operation on serial number [serial number] to change item state/serial number state from [item state] to [item state]. The allowed new states are [item state]. |
EVENTTIMEAFTERNOW | Event time stamp must not be in the future. |
EVENTTIMEBEFORELASTEVENT | Event time stamp is earlier than the last event for serial number [serial number]. |
INTERNALERROR | SerialNumberState for [serial number] is null. |
SerialNumberStateTransitions.properties did not load correctly. Internal error from server: [server information]. | |
ItemStateTransitions.properties did not load correctly. | |
NOTVALIDLOCATION | Location [location identifier] was not valid for serial number [serial number]. |
SNNOTFOUND | Serial number [serial number] does not exist. |
VALIDATION | The attribute [Attribute] is not permitted to be set with SerialNumberState [SerialNumberState]. |
VALIDATION | The parameter ReasonCode is missing or had an invalid value. |
VALIDATION | The parameter SerialNumberState is missing or had an invalid value. |
VALIDATION | The parameter ItemState is missing or had an invalid value. |

Guidelines
The following data is included in the message response:
Data Element | Occurs Length |
Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
S:Envelope | – |
1...1- |
Required. SOAP Envelope root element. |
|||||||||
S:Body | – |
1...1- |
Required. SOAP Message Body. |
|||||||||
ns2:SetSerialNumberStatusResponse | – |
1...1- |
Required. SetSerialNumber response. |
|||||||||
TLResponse | – |
0...1- |
Required. TraceLink response. |
|||||||||
Success | – |
0...1- |
Required. Indicates whether the SetSerialNumberStatus request successfully processed.92 |
|||||||||
ExceptionReturn | – |
0...1- |
Conditionally required if Success = |
|||||||||
CallException | – |
1...*- |
Required. Contains error details. |
|||||||||
ExceptionCode | 0/* |
0...1String |
Required. Error code for exception. See |
|||||||||
ExceptionMessage | 0/* |
0...1String |
Conditionally required if exception message exists. Message that further describes
the error condition. See |
Example
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:SetSerialNumberStatusResponse xmlns:ns2="urn:tracelink:soap" xmlns:ns3="http://tracelink.com/som"> <TLResponse> <Success>true</Success> </TLResponse> </ns2:SetSerialNumberStatusResponse> </S:Body> </S:Envelope>