Before the header
- Schema version used.
- File creation datetime.
- There should be a reference to descriptors that define the tags that can be used in the EPCIS XML.
Header
- Sender GLN.
- Receiver GLN.
- Document identifiers (like an instance identifier) that is a UUIDv4 code.
Body
Three types of events with date and timestamps:
- Commissioning (as ObjectEvents)
- SSCC
- SGTIN (here batch is also defined)
- Packing (as AggregationEvents)
- SGTINs into SGTIN
- SGTINs into SSCC
- SSCCs into SSCC
- Shipping (as an ObjectEvent).
- Top-level SSCCs and SGTINs that are not further aggregated (packed) into anything so these are scanned for shipping.
- TransactionList
- Purchase order (po) - optional
- Despatch advice (desadv) - optional
- Invoice number (inv) - optional
- Extension
- Source SGLNs (owning party and location)
- Owning party → sold-from (seller)
- Location → ship-from
- Destination SGLNs (owning party and location)
- Owning party → sold-to (buyer)
- Location → ship-to
- Source SGLNs (owning party and location)
However, the EPCIS file content and format can slightly vary, depending on the region / organization / systems that exchange the EPCIS. A few examples:
- The EPCIS file content can be embedded into a SOAP envelope.
- Typically when sending to SAP ICH.
- This means the EPCIS XML is wrapped into special "soap" XML tags.
- It can be detected by checking the first characters inside the XML in channel logs.
- EPCIS header can contain product master data and stakeholder master data (DSCSA USA only).
- EPCIS header can contain a transaction statement (DSCSA USA only).
- Sender and receiver SGLNs are included in the EPCIS header (SAP ICH only).
- Different tags define the batch inside the commissioning events.