Introduction

This EDItX Inventory Report format is intended for use by a retailer, wholesaler, distributor or other intermediary (known in the report simply as the ‘seller’) managing inventory (on consignment or otherwise) on behalf of the publisher or content owner (known in the report as the ‘publisher’), in order to report physical inventory levels. It can also be used by an agent or other parties reporting on behalf of the seller.

The report format was originally derived from a pre-existing EDItX Sales Report format, and was primarily intended for use in the physical supply chain (including digital products on physical carriers such as CDs).

Introduction to Version 1.1

This version 1.1 of the EDItX Inventory Report format is intended to extend use of the report format to the digital supply chain (eg for reporting the inventory status of e-books), and to POD. It retains full backwards compatibility with version 1.0 (ie old messages are still valid under the new v1.1 specification and XML schema), while introducing optional new data elements and functionality.

Some XML tags have been changed (eg the <Author> tag becomes <Contributor>) to better align the terminology with ONIX for Books. To maintain compatibility, the original tags can still be used – in effect, <Author> and <Contributor> are synonyms – but wherever possible, the newer version should be used. The newer tags are used in this document, with the older tags listed as ‘aliases’. These aliases will be removed from future updates of the standard. Textual codes used within data elements (for example ‘EAN’ or ‘TaxRegistrationCode’) have been retained, but alphanumeric codes from ONIX codelists can also be used in many cases. In general, where there is a choice, the alphanumeric codes are preferred and the older textual codes will be removed from future updates of the standard.

Use cases

The format allows these reporting options:

  1. For physical inventories applying to a specific date (and optionally, time):
    • Current inventory levels (quantities in hand), categorized as being unreserved (ie available to fulfil any orders received in future) or reserved (ie allocated to fulfil existing outstanding orders, or unavailable for any other reason), may be reported;
    • Quantities on order, categorized as being reserved or unreserved;
    • Quantities required to meet outstanding orders, but for which current or on-order quantities have not yet been allocated;
  2. For physical inventories applying to a period from one date (and time) to another:
    • Minimum and maximum inventory levels during the reporting period, as well as actual levels at the end of the period;
    • Quantities despatched during the reporting period;
    • Quantities that have been lost or stolen during the reporting period;
    • Quantities that have been damaged or destroyed during the reporting period;
    • Quantities that have been moved to another storage / outlet location during the reporting period;
    • Quantities that have been removed from inventory for other reasons may be reported (in which case the reasons must be given in notes);
  3. For digital and POD product inventories applying to a specific date (and optionally, time):
    • The status of master files and metadata, and the on-sale status of the product.

Document history

17 July 2009
Initial release of version 1.0 specification (as PDF).
31 October 2018
Release of version 1.1 specification (as HTML).
Addition of <InventoryStatus>, <InventoryNote> for e-products and POD status reporting.
Addition of parties to align with the EDItX Sales Report formats.
Other minor changes including tag aliases to improve familiarity for ONIX users, integration with some ONIX codelists, and greatly improved documentation.

Message structure summary

The message consists of three parts – a header, a body and a trailer. The header contains information about the message itself, plus details of the parties involved in the inventory that is the subject of the report. The trailer contains simple totals that can be used to ensure the whole message has been received and processed.

The tables below show all composites and data elements in the complete message. Indenting shows the nesting structure of the data elements within the composites. Aliases (old tag names that have been replaced by new tag names, but which are retained for compatibility purposes), and elements new in this version are highlighted in the Notes column.

Click on the element names to jump to a detailed description of the element and its content.

The rightmost column indicates the cardinality of each data element – whether the element is optional (0…1), optional and repeatable (0…n), mandatory (1) or mandatory and repeatable (1…n) – within its parent composite. For any deprecated elements, the cardinality is shown in red. In general, data elements are not allowed to be empty. If there is no relevant data for an element, the whole element must be omitted – and if the element is mandatory, its enclosing composite must be omitted.

# Element Notes Card
M.0<?xml version="1.0" encoding="UTF-8" ?>
M.1<InventoryReport version="1.1">1
Message header
# Element Notes Card
H.1    <Header>1
H.2        <InventoryReportNumber>1
H.3        <IssueDateTime>1
H.4        <ReferenceCoded>0…n
H.5           <ReferenceTypeCode>1
H.6           <ReferenceTypeName>New in v1.10…1
H.7           <ReferenceNumber>0…1
H.8           <ReferenceDate>0…1
H.9        <PurposeCode>1
H.10        <DateCoded>0…n
H.11            <Date>1
H.12            <DateQualifierCode>1
H.13        <SellerParty>0…1
H.14            <PartyIdentifier><PartyID>0…1
H.15                <PartyIDType>1
H.16                <IDTypeName>0…1
H.17                <IDValue><Identifier>1
H.18            <AdditionalPartyIdentifier><AdditionalPartyID>0…n
H.19                <PartyIDType>1
H.20                <IDTypeName>0…1
H.21                <IDValue><Identifier>1
H.22            <PartyName>0…1
H.23                <NameLine>1…n
H.24            <PostalAddress>0…1
H.25                <AddressLine>1…n
H.26            <CommunicationDetails>0…n
H.27                <CommunicationTypeCode>1
H.28                <CommunicationLocator>1
H.29            <ContactPerson>0…n
H.30                <ContactRoleCode>0…1
H.31                <PersonName>0…1
H.32                <CommunicationDetails>0…n
H.33                    <CommunicationTypeCode>1
H.34                    <CommunicationLocator>1
H.35            <Location>0…1
H.36                <LocationIdentifier>0…n
H.37                    <LocationIDType>1
H.38                    <IDTypeName>0…1
H.39                    <IDValue><Identifier>1
H.40                <LocationName>0…1
H.41            <CountryCode>0…1
H.42            <RegionCode>0…1
H.43        <NewLocationParty>0…1
H.44            <PartyIdentifier><PartyID>0…1
H.45                <PartyIDType>1
H.46                <IDTypeName>0…1
H.47                <IDValue><Identifier>1
H.48            <AdditionalPartyIdentifier>0…n
H.49                <PartyIDType>1
H.50                <IDTypeName>0…1
H.51                <IDValue><Identifier>1
H.52            <PartyName>0…1
H.53                <NameLine>1…n
H.54            <PostalAddress>0…1
H.55                <AddressLine>1…n
H.56            <CommunicationDetails>0…n
H.57                <CommunicationTypeCode>1
H.58                <CommunicationLocator>1
H.59            <ContactPerson>0…n
H.60                <ContactRoleCode>0…1
H.61                <PersonName>0…1
H.62                <CommunicationDetails>0…n
H.63                    <CommunicationTypeCode>1
H.64                    <CommunicationLocator>1
H.65            <Location>0…1
H.66                <LocationIdentifier>0…n
H.67                    <LocationIDType>1
H.68                    <IDTypeName>0…1
H.69                    <IDValue><Identifier>1
H.70                <LocationName>0…1
H.71            <CountryCode>0…1
H.72            <RegionCode>0…1
H.73        <PublisherParty>0…1
H.74            <PartyIdentifier><PartyID>0…1
H.75                <PartyIDType>1
H.76                <IDTypeName>0…1
H.77                <IDValue><Identifier>1
H.78            <AdditionalPartyIdentifier>0…n
H.79                <PartyIDType>1
H.80                <IDTypeName>0…1
H.81                <IDValue><Identifier>1
H.82            <PartyName>0…1
H.83                <NameLine>1…n
H.84            <PostalAddress>0…1
H.85                <AddressLine>1…n
H.86            <CommunicationDetails>0…n
H.87                <CommunicationTypeCode>1
H.88                <CommunicationLocator>1
H.89            <ContactPerson>0…n
H.90                <ContactRoleCode>0…1
H.91                <PersonName>1
H.92                <CommunicationDetails>0…n
H.93                    <CommunicationTypeCode>1
H.94                    <CommunicationLocator>1
H.95            <CountryCode>0…1
H.96            <RegionCode>0…1
H.97        <SupplierParty>New in v1.10…1
H.98            <PartyIdentifier><PartyID>0…1
H.99                <PartyIDType>1
H.100                <IDTypeName>0…1
H.101                <IDValue><Identifier>1
H.102            <AdditionalPartyIdentifier>0…n
H.103                <PartyIDType>1
H.104                <IDTypeName>0…1
H.105                <IDValue><Identifier>1
H.106            <PartyName>0…1
H.107                <NameLine>1…n
H.108            <PostalAddress>0…1
H.109                <AddressLine>1…n
H.110            <CommunicationDetails>0…n
H.111                <CommunicationTypeCode>1
H.112                <CommunicationLocator>1
H.113            <ContactPerson>0…n
H.114                <ContactRoleCode>0…1
H.115                <PersonName>1
H.116                <CommunicationDetails>0…n
H.117                    <CommunicationTypeCode>1
H.118                    <CommunicationLocator>1
H.119            <CountryCode>0…1
H.120            <RegionCode>0…1
H.121        <ReportingParty>0…1
H.122            <PartyIdentifier><PartyID>0…1
H.123                <PartyIDType>1
H.124                <IDTypeName>0…1
H.125                <IDValue><Identifier>1
H.126            <AdditionalPartyIdentifier>0…n
H.127                <PartyIDType>1
H.128                <IDTypeName>0…1
H.129                <IDValue><Identifier>1
H.130            <PartyName>0…1
H.131                <NameLine>1…n
H.132            <PostalAddress>0…1
H.133                <AddressLine>1…n
H.134            <CommunicationDetails>0…n
H.135                <CommunicationTypeCode>1
H.136                <CommunicationLocator>1
H.137            <ContactPerson>0…n
H.138                <ContactRoleCode>0…1
H.139                <PersonName>1
H.140                <CommunicationDetails>0…n
H.141                    <CommunicationTypeCode>1
H.142                    <CommunicationLocator>1
H.143            <CountryCode>0…1
H.144            <RegionCode>0…1
H.145        <ReceivingParty>New in v1.10…1
H.146            <PartyIdentifier><PartyID>0…1
H.147                <PartyIDType>1
H.148                <IDTypeName>0…1
H.149                <IDValue><Identifier>1
H.150            <AdditionalPartyIdentifier>0…n
H.151                <PartyIDType>1
H.152                <IDTypeName>0…1
H.153                <IDValue><Identifier>1
H.154            <PartyName>0…1
H.155                <NameLine>1…n
H.156            <PostalAddress>0…1
H.157                <AddressLine>1…n
H.158            <CommunicationDetails>0…n
H.159                <CommunicationTypeCode>1
H.160                <CommunicationLocator>1
H.161            <ContactPerson>0…n
H.162                <ContactRoleCode>0…1
H.163                <PersonName>1
H.164                <CommunicationDetails>0…n
H.165                    <CommunicationTypeCode>1
H.166                    <CommunicationLocator>1
H.167            <CountryCode>0…1
H.168            <RegionCode>0…1
H.169        <SellingAgentParty>New in v1.10…1
H.170            <PartyIdentifier><PartyID>0…1
H.171                <PartyIDType>1
H.172                <IDTypeName>0…1
H.173                <IDValue><Identifier>1
H.174            <AdditionalPartyIdentifier>0…n
H.175                <PartyIDType>1
H.176                <IDTypeName>0…1
H.177                <IDValue><Identifier>1
H.178            <PartyName>0…1
H.179                <NameLine>1…n
H.180            <PostalAddress>0…1
H.181                <AddressLine>1…n
H.182            <CommunicationDetails>0…n
H.183                <CommunicationTypeCode>1
H.184                <CommunicationLocator>1
H.185            <ContactPerson>0…n
H.186                <ContactRoleCode>0…1
H.187                <PersonName>1
H.188                <CommunicationDetails>0…n
H.189                    <CommunicationTypeCode>1
H.190                    <CommunicationLocator>1
H.191            <CountryCode>0…1
H.192            <RegionCode>0…1
Message body
# Element Notes Card
B.1    <ItemDetail>1…n
B.2        <LineNumber>1
B.3        <ProductIdentifier><ProductID>1…n
B.4            <ProductIDType>1
B.5            <IDTypeName>0…1
B.6            <IDValue><Identifier>1
B.7        <ItemDescription>0…1
B.8            <TitleDetail>0…1
B.9            <Title>0…1
B.10            <Contributor><Author>0…n
B.11            <OtherDetail>0…1
B.12        <FormatCode>0…n
B.13        <InventoryStatus>New in v1.10…1
B.14        <InventoryNote>New in v1.10…1
B.15        <InventoryQuantity>0…n
B.16            <QuantityType>1
B.17            <QuantityValue>1
B.18            <NewLocationParty>0…1
B.19                <PartyID>0…1
B.20                    <PartyIDType>1
B.21                    <IDTypeName>0…1
B.22                    <IDValue><Identifier>1
B.23                <AdditionalPartyIdentifier>0…n
B.24                    <PartyIDType>1
B.25                    <IDTypeName>0…1
B.26                    <IDValue><Identifier>1
B.27                <PartyName>0…1
B.28                    <NameLine>1…n
B.29                <PostalAddress>0…1
B.30                    <AddressLine>1…n
B.31                <CommunicationDetails>0…n
B.32                    <CommunicationTypeCode>1
B.33                    <CommunicationLocator>1
B.34                <ContactPerson>0…n
B.35                    <ContactRoleCode>0…1
B.36                    <PersonName>1
B.37                    <CommunicationDetails>0…n
B.38                        <CommunicationTypeCode>1
B.39                        <CommunicationLocator>1
B.40                <Location>0…1
B.41                    <LocationIdentifier>1…n
B.42                        <LocationIDType>1
B.43                        <IDTypeName>0…1
B.44                        <IDValue><Identifier>1
B.45                    <LocationName>0…1
B.46                <CountryCode>0…1
B.47                <RegionCode>0…1
B.48            <QuantityNote>0…1
B.49        <ReferenceCoded>0…n
B.50            <ReferenceTypeCode>1
B.51            <ReferenceTypeName>New in v1.10…1
B.52            <ReferenceNumber>0…1
B.53            <ReferenceDate>0…1
B.54        <DateCoded>0…n
B.55            <Date>1
B.56            <DateQualifierCode>1
Message trailer
# Element Notes Card
T.1    <Summary>1
T.2        <NumberOfLines>1
T.3        <NumberOfUnitsByQuantityType><NumberOfUnits>0…n
T.4            <QuantityType>0…1
T.5            <QuantityValue>1
T.6        <NumberOfProductsInventoryStatusNew in v1.10…1
T.7            <InventoryStatus>0…1
T.8            <QuantityValue>1

Message detail

M.1 Inventory report

Mandatory top-level (‘root’) element of message, <Inventory Report>. In this version, the top-level element must carry the attribute version="1.1".

InventoryReport version="1.1"
1
Header Header ItemDetail ItemDetail Summary Summary

Message header detail

H.1 Header

Mandatory message header, containing information about the message itself and the organizations party to the reported transactions.

The Header must include an Inventory report number, Issue date and time and a Message purpose code. While every report must be associated with a date or period, the date or period may be specified either on the Header or on every line of the report.

The list of parties in the <Header> must include one or two parties to whom the report is sent. The options are:

  • Publisher
  • Supplier
  • Receiving party
  • Receiving party plus either Publisher or Supplier

The list of parties must also include at least one party that holds the inventory reported or is reporting on behalf of the inventory holder. The options are:

  • Options for reseller model:
    • Seller
    • Seller plus Reporting party
  • Options for agency model:
    • Reporting party
    • Reporting party plus one or more Selling agent parties
  • Either model might also include a New location Party, though in practice it’s much more likely to be relevant with the reseller model, and it should only be listed in the Header if the new location is the same for all relevant lines in the report. If lines relate to diverse new locations, the locations should be listed at line level (see B.18).

Note that this requires inventory purchased by the seller under the reseller model and inventory intended to be sold under the agency model to be reported in separate reports.

Header
1
InventoryReportNumber InventoryReportNumber IssueDateTime IssueDateTime ReferenceCoded ReferenceCoded PurposeCode PurposeCode DateCoded DateCoded SellerParty SellerParty NewLocationpParty NewLocationParty PublisherParty PublisherParty SupplierParty SupplierParty ReportingParty ReportingParty ReceivingParty ReceivingParty SellingAgentParty SellingAgentParty Two or more parties must be included, in the specified combinations
H.2 Inventory report number

Mandatory ordinal number within a sequence of reports between the sender and recipient of the message. Should enable a recipient to identify when a message has been missed.

InventoryReportNumber
Normally an ordinal integer. Alphanumeric codes incorporating an ordinal integer, suggested maximum length 16 characters, are permitted
1
<InventoryReportNumber>D71</InventoryReportNumber>
H.3 Issue date and time

Mandatory date, or date and time, at which the report was generated.

IssueDateTime
Must be one of the following, where Y, M, D, h, m and s are digits specifying the date (Gregorian calendar) and time (24-hour clock), T and Z represent themselves, and ± represents either a + or a - as appropriate for the timezone:
YYYYMMDDDate only
YYYYMMDDThhmmDate and time (local time of report sender, not recommended)
YYYYMMDDThhmmZDate and time (UTC/GMT) †
YYYYMMDDThhmm±hhmmDate and time (with timezone offset) †
YYYYMMDDThhmmssDate and time with seconds (not recommended)
YYYYMMDDThhmmssZDate and time with seconds (UTC/GMT)
YYYYMMDDThhmmss±hhmmDate and time with seconds (with timezone offset)
† indicates the preferred formats
1
<IssueDateTime>20180215T1330-0500</IssueDateTime>    (1:30pm on 15 Feb 2018, EST)
H.4 Document References

Optional Document reference applying to all inventory items in the report, and repeatable if more than one document reference applies to all inventory items. May be included in the <Header> only if each Document reference applies to all items listed reported in the inventory. Alternatively, individual Document references may be supplied for each line item in the body of the message.

Each repeat of the <ReferenceCoded> composite must include a Reference type, plus a Reference number and/or a Reference date.

ReferenceCoded
0…n
ReferenceTypeCode ReferenceTypeCode ReferenceTypeName ReferenceTypeName ReferenceNumber ReferenceNumber ReferenceDate ReferenceDate must be included if and only if <ReferenceTypeCode> is proprietary must not omit both
<ReferenceCoded>
    <ReferenceTypeCode>ContractReference</ReferenceTypeCode>
    <ReferenceNumber>FSA1003521</ReferenceNumber>
    <ReferenceDate>20170205</ReferenceDate>
</ReferenceCoded>
H.5 Reference type

Mandatory within every <ReferenceCoded> composite.

ReferenceTypeCode
must contain one of the following:
ProprietaryA name must be supplied in <ReferenceTypeName>
ContractReference
StandingOrderReference
1
<ReferenceTypeCode>ContractReference</ReferenceTypeCode>
H.6 Reference name

A consistent and distinctive name for the type of document reference. Optional, but must be included in a <ReferenceCoded> composite if and only if <ReferenceTypeCode> is proprietary.

ReferenceTypeName
Variable-length text, suggested maximum length 50 characters
0…1
<ReferenceTypeName>Consignment agreement</ReferenceTypeName>
H.7 Reference number

The alphanumeric reference number of the document. Optional, but must be included in every <ReferenceCoded> composite if <ReferenceDate> is omitted.

ReferenceNumber
Alphanumeric characters, suggested maximum length 36 characters
0…1
<ReferenceNumber>CA23456</ReferenceNumber>
H.8 Reference date

The date, or date and time, of the reference document. Optional, but must be included in every <ReferenceCoded> composite if <ReferenceNumber> is omitted.

ReferenceDate
As for <IssueDateTime>
0…1
<ReferenceDate>20170423</ReferenceDate>
End of Document references composite
H.9 Message purpose code

Mandatory code describing the function of the message.

If a duplicate message is sent – perhaps in response to a retransmission request after the recipient has identified that a message has been missed – the <InventoryReportNumber> should remain the same as the original message.

PurposeCode
Must contain one of:
OriginalNew message sent for the first time
DuplicateCopy of a previously sent message. Should have the same report number as original.
ReplacementMessage sent as a replacement for a previously sent message. It must carry the same Sales report number as the one it replaces
TestMessage sent for test purposes only
1
<PurposeCode>Original</PurposeCode>
H.10 Inventory report date

Every Inventory report must specify either a reporting period or – more typically – a single inventory point in time. If all <ItemDetail> composites (individual inventory lines) are based on the same reporting date or period, then the reporting date or period may be specified using <DateCoded> in one of either the Header or individually within every line item in the report. This is the common case, and specifying the date or period in the Header is preferred. If for any reason the reporting date or period for individual report lines varies, then the reporting dates or periods must be specified individually within every <ItemDetail> composite (see B.54), and <DateCoded> must be omitted from the Header.

If the reporting date or period is defined in the Header, it must contain either a single report date – ie one <DateCoded> composite with <DateQualifierCode> InventoryDate or a report period defined by two <DateCoded> composites using <DateQualifierCode> InventoryPeriodStart and InventoryPeriodEnd. <DateCoded> is thus repeatable up to two times.

Note that these are not ‘default’ dates that may be selectively overridden at line item level – they must apply to all lines of the report, or they must be omitted from the Header.

Note also that dates can be simple dates, or can specify an exact time. Simple dates should be interpreted as ‘start of business day’ (for period start dates) or ‘end of business day’ (for period end dates or points in time).

DateCoded
0…2
Date Date DateQualifierCode DateQualifierCode
<DateCoded>
    <Date>20180621T1100Z</Date>
    <DateQualifierCode>InventoryDate</DateCoded>
</DateCoded>
H.11 Date

A date, including an optional time, associated with the reporting period for the entire report, mandatory within each <DateCoded> composite.

Date
As for <IssueDateTime>
1
<Date>20170423</Date>    (23 April 2017)
H.12 Date qualifier

The nature of the date in <Date> element, mandatory within each <DateCoded> composite.

DateQualifierCode
Must contain one of the following:
InventoryPeriodStartStart date, or date and time, of reporting period
InventoryPeriodEndEnd date, or date and time, of reporting period (all dates are inclusive)
InventoryDateDate, or date and time for which inventory is reported (where the inventory is for a single point in time)
1
<DateQualifierCode>InventoryDate</DateQualifierCode>
End of Inventory report date composite
H.13 Seller party

Optional composite containing details of the seller organization whose inventory is being reported.

Within <SellerParty>, either <PartyID> or <PartyName> is mandatory. Either one is normally sufficient, though it is good practice to supply both. All other elements are optional.

SellerParty
0…1
PartyIdentifier PartyIdentifier or PartyID AdditionalPartyIdentifier AdditionalPartyIdentifier or AdditionalPartyID PartyName PartyName PostalAddress PostalAddress CommunicationDetails CommunicationDetails ContactPerson ContactPerson Location Location CountryCode CountryCode RegionCode RegionCode tag name aliases <PartyID> and <AdditionalPartyID> can be used for compatibility with previous versions of the report must not omit both used only in <SellerParty> and <NewLocationParty> must not include both
Other Party composites – <PublisherParty, <ReportingParty> and so on – share the same structure as <SellerParty> except that <Location> is not used. <Location> is used only in <SellerParty> and <NewLocationParty>.
H.14 Party identifier

Composite containing the primary standard identifier for the organization. It must contain both a <PartyIDType> and an <IDValue>.

Note that <PartyIdentifier> is not repeatable – if there is more than one identifier for the organization, then the second and subsequent identifiers must use <AdditionalPartyIdentifier>.

PartyIdentifier
PartyID
0…1
PartyIDType PartyIDType IDTypeName IDTypeName IDValue IDValue or Identifier must be included if and only if <PartyIDType> is proprietary
H.15 Party identifier type

The type of the primary identifier used to identify the organization.

PartyIDType
Must contain one of:
A two-digit code fromONIX Codelist 44
ProprietaryProprietary identifier scheme, which must be given a scheme name in <IDTypeName>
GLNGlobal Location Number (13-digits)
SANBook trade Standard Address Number (7-digits)
VKNRBörsenverein Verkehrsnummer
NBSNNorwegian Bookstore Number
NNSRNorwegian National School Registry
NONNorwegian Organization Number
BAGNRBuchhändler-Abrechnungs-Gesellschaft
PublishersAccountNumberPublisher’s account number for the seller
SellersAccountNumberThe account number with the organization receiving the report
TaxRegistrationNumberSales tax registration number
VATRegistrationNumberTwo-letter ISO 3166-1 alpha-2 country code from Codelist 91 followed by the 8–12 alphanumeric characters of the national VAT ID. Omit any spaces and hyphens
1
<PartyIDType>GLN</PartyIDType>
H.16 Identifier type name

A consistent and distinctive name for a proprietary identifier scheme. Must be used if, and only if, <PartyIDType> is proprietary.

IDTypeName
Variable-length text, suggested maximum length 50 characters
0…1
<IDTypeName>BigPublisher Customer ID</IDTypeName>
H.17 Identifier value

The primary identifier used to identify the party.

IDValue
Identifier
Alphanumeric characters according to the identifier type specified in <PartyIDType>
1
<IDValue>3012262710000</IDValue>
End of Party identifier composite
H.18 Additional party identifier

Composite element containing an alternative standard identifier for the organization. Optional, and repeatable where the organization is identifiable with more than two types of identifier. If used, it must contain both a <PartyIDType> and an <Identifier>.

AdditionalPartyIdentifier
AdditionalPartyID
0…n
Identical to PartyIdentifier
H.19 Party identifier type

The type of the identifier used to identify the party.

PartyIDType
Must contain one of:
A two-digit code fromONIX Codelist 44
ProprietaryProprietary identifier scheme, which must be given a scheme name in <IDTypeName>
GLNGlobal Location Number (13-digits)
SANBook trade Standard Address Number (7-digits)
VKNRBörsenverein Verkehrsnummer
NBSNNorwegian Bookstore Number
NNSRNorwegian National School Registry
NONNorwegian Organization Number
BAGNRBuchhändler-Abrechnungs-Gesellschaft
PublishersAccountNumberPublisher’s account number for the seller
SellersAccountNumberThe account number with the organization receiving the report
TaxRegistrationNumberSales tax registration number
VATRegistrationNumberTwo-letter ISO 3166-1 alpha-2 country code from Codelist 91 followed by the 8–12 alphanumeric characters of the national VAT ID. Omit any spaces and hyphens
1
<PartyIDType>VATRegistrationNumber</PartyIDType>
H.20 Identifier type name

A consistent and distinctive name for a proprietary identifier scheme. Must be used when, and only when, <PartyIDType> is proprietary.

IDTypeName
Variable-length text, suggested maximum length 50 characters
0…1
<IDTypeName>XYZ Publishers Client Account Code</IDTypeName>
H.21 Identifier value

The identifier used to identify the party.

IDValue
Identifier
Alphanumeric characters according to the identifier type specified in <PartyIDType>
1
<IDValue>FR76999999999</IDValue>
End of Additional party identifier composite
H.22 Party name

The organization name. Although optional, it is good practice to include a consistent name, which comprises one or more lines of text.

PartyName
0…1
NameLine NameLine
<PartyName>
    <NameLine>Main Street Bookstores Inc</NameLine>
    <NameLine>Narragansett Branch</NameLine
</PartyName>
H.23 Line of name

Single line of the organization name. Every party name must include at least one <NameLine>. Repeatable if organization name is more than one line.

NameLine
Variable-length text, suggested maximum length 100 characters
1…n
<NameLine>Online Bookstore Inc</NameLine>
End of Party name composite
H.24 Postal address

The full postal address of the organization. Optional. When used, it must contain at least one <AddressLine>

PostalAddress
0…1
NameLine AddressLine
<PostalAddress>
    <AddressLine>Main Street Bookstore</AddressLine>
    <AddressLine>60 Pier Market Place</AddressLine>
    <AddressLine>Narragansett, RI 02882</AddressLine>
</PostalAddress>
H.25 Address line

A single line of the street address of the organization. Repeatable where there are multiple lines in the address.

AddressLine
Variable-length text, suggested maximum length 100 characters
1…n
<AddressLine>Head office building</AddressLine>
End of Postal address composite
H.26 Communication details

Optional contact details for the organization as a whole. Repeatable where different types of communication are specified.

CommunicationDetails
0…n
CommunicationTypeCode CommunicationTypeCode CommunicationLocator CommunicationLocator
H.27 Communication type code

The type of communication method, mandatory within every instance of <CommunicationDetails>.

CommunicationTypeCode
Must contain one of:
FixedPhoneLandline
MobilePhoneCellphone
PhonePhone number – landline or cellphone
Fax
Email
URLeg of a web page with a contact form
1
<CommunicationTypeCode>Email</CommunicationTypeCode>
H.28 Communication locator

Alphanumeric text giving details for the specified communication method, mandatory within every instance of <CommunicationDetails>.

CommunicationLocator
Alphanumeric characters according to the specified <CommuniationTypeCode>, for example:
+44 20 7503 6418Phone number (including the country prefix)
info@editeur.orgE-mail address
https://www.editeur.org/42/Contact/URL for web-based contact form
1
<CommunicationLocator>info@mainstreetbookstores.com</CommunicationLocator>
End of Communication details composite
H.29 Contact person

Optional contact details for an individual within the organization. When used, it must contain at least a <PersonName> element. Repeatable where different people are specified.

ContactPerson
0…n
ContactRoleCode ContactRoleCode PersonName PersonName CommunicationDetails CommunicationDetails
<ContactPerson>
    <ContactRoleCode>00</ContactRoleCode>
    <PersonName>Jackie Brown</PersonName>
    <CommunicationDetail>
        <CommunicationTypeCode>Email</CommunicationTypeCode>
        <CommunicationLocator>+44 20 7946 0921</CommunicationLocator>
    </CommunicationDetail>
</ContactPerson>
H.30 Contact role code

Optional job role of the person within the organization.

ContactRoleCode
two-digit code from ONIX Codelist 198
0…1
<ContactRoleCode>00</ContactRoleCode>    Metadata contact
H.31 Personal name

Mandatory name of a person within the organization.

PersonName
Variable-length text, suggested maximum 100 characters
1
<PersonName>William Smith</PersonName>
H.32–34 Personal communication details

Optional contact details for the individual within the organization, as distinct from the contact details of the organization as a whole. The structure of the <CommunicationDetails> composite for a person is identical to that for an organization (see CommunicationDetails). Repeatable where different types of communication are specified.

CommunicationDetails
0…n
Identical to  CommunicationDetails
End of Personal communication details composite
End of Contact person composite
H.35 Seller party location

Optional composite that specifies a stockholding location (eg a warehouse). Used if the seller has multiple stock locations and wishes to indicate the location to which the entire report relates.

Must contain one or more location identifiers or a location name or both.

Note that while most Party composites share the same structure as <SellerParty>, the <Location> composite is only valid in <SellerParty> and <NewLocationParty>.

Location
0…1
LocationIdentifier LocationIdentifier LocationName LocationName must not omit both
H.36 Location identifier

Composite containing an identifier for the location to which the inventory relates. Optional, but required if <LocationName> is not included, and repeatable if the location is identified with more than one type of identifier.

LocationIdentifier
0…n
LocationIDType LocationIDType IDTypeName IDTypeName IDValue IDValue must be included if and only if <LocationIDType> is proprietary
H.37 Location identifier type

Mandatory code for the identifier scheme used.

LocationIDType
Must be one of the following:
A two-digit code fromONIX Codelist 92
Proprietary Proprietary identifier scheme, which must be given a scheme name in <IDTypeName>
GLNGlobal location number (13 digits)
SANStandard address number (7 digits)
URIUniform Resource Identifier
PostalCodeLocation defined by postal code. Format is two-letter country code ONIX Codelist 91 (based on ISO 3166-1), space, postal code. Note some postal codes themselves contain spaces, eg ‘GB N7 9DP’ or ‘US 10125’
1
<LocationIDType>GLN</LocationIDType>
H.38 Identifier type name

A distinctive and consistent name for a proprietary location identifier type, which must be included if and only if <LocationIDType> is proprietary.

IDTypeName
Variable-length text, suggested maximum length 50 characters
0…1
<IDTypeName>Online Bookstore warehouse code</IDTypeName>
H.39 Location identifier value

Mandatory identifier of the type specified in <LocationIDType>.

IDValue
Identifier
Alphanumeric characters according to the identifier type specified <LocationIdentifierType>
1
<IDValue>3012262710000</IDValue>
End of Location identifier composite
H.40 Location Name

The name of the location. Optional, but required if no <LocationIdentifier> is supplied.

LocationName
Variable-length text, suggested maximum length 100 characters
0…1
<LocationName>Online Bookstore Southern Region Warehouse</LocationName>
End of Seller party location composite
H.41 Country code

Country where the organization is located – optional, but one of either Country code or Region code must be specified when needed for tax purposes.

CountryCode
Two upper-case letters from ONIX Codelist 91 (based on ISO 3166-1)
0…1
<CountryCode>US</CountryCode>    USA
H.42 Region code

Region where the organization is located – optional, but one of either Country code or Region code must be specified when needed for tax purposes.

RegionCode
Variable-length alphanumeric code from ONIX Codelist 49 (based on ISO 3166-2)
0…1
<RegionCode>BE-VLG</RegionCode>    Flemish region of Belgium
End of Seller party composite
H.43–72 New location party

Composite containing details if any of the inventory has been transferred to a single new location, the new location must be specified in one of either in the Header or on each transferred item line. If inventory has been transferred to more than one location, each new location must be specified at the line item level.

The structure of the <NewLocationParty> composite is identical to that of <SellerParty> (see H.13).

NewLocationParty
0…1
Identical to H.13–42 SellerParty
End of New location party composite
H.73–96 Publisher party

Optional composite containing details of the publisher organization to whom the report is being made. The structure of the <PublisherParty> composite is identical to that of <SellerParty> (see H.13) except it does NOT include the <Location> composite.

PublisherParty
1
Identical to H.13–42 SellerParty, except <Location> is not allowed
End of Publisher party composite
H.97–120 Supplier party

Optional composite containing details of the supplier organization to whom the report is being made. The structure of the <SupplierParty> composite is identical to that of <SellerParty> (see H.13) except it does NOT include the <Location> composite..

SupplierParty
0…1
Identical to H.13–42 SellerParty, except <Location> is not allowed
End of Supplier party composite
H.121–144 Reporting party

Optional composite containing details of the reporting organization. Use if the organization doing the reporting is different from the <SellerParty> or <SellingAgentParty>. The structure of the <ReportingParty> composite is identical to that of <SellerParty> (see H.13) except it does NOT include the <Location> composite.

ReportingParty
0…1
Identical to H.13–42 SellerParty, except <Location> is not allowed
End of Reporting party composite
H.145–168 Receiving party

Optional composite containing details of the receiving organization. Use if the organization receiving the report is different from the <PublisherParty> or <SupplierParty>. The structure of the <ReceivingParty> composite is identical to that of <SellerParty> (see H.13) except it does NOT include the <Location> composite.

ReceivingParty
0…1
Identical to H.13–42 SellerParty, except <Location> is not allowed
End of Receiving party composite
H.169–192 Selling agent party

Optional composite containing details of the Selling agent organization. Use for reporting inventory distributed under an agency model. The structure of the <SellingAgentParty> composite is identical to that of <SellerParty> (see H.13) except it does NOT include the <Location> composite.

SellingAgentParty
0…1
Identical to H.13–42 SellerParty, except <Location> is not allowed
End of Receiving party composite
End of Header

Message body detail

B.1 Item detail

Messages contain one <ItemDetail> composite for each product reported on.

The <ItemDetail> composite consists of an ordinal Line number within the report followed by elements that identify the product itself, then either an Inventory status (for digital products) or one or more Inventory quantities for physical products. The composite may additionally include Document references and a date, if these vary across the lines of the report (and thus cannot be included in the Header).

ItemDetail
1…n
LineNumber LineNumber ProductIdentifier ProductIdentifier or ProductID ItemDescription ItemDescription FormatCode FormatCode InventoryQuantity InventoryQuantity InventoryStatus InventoryStatus InventoryNote InventoryNote InventoryQuantity ReferenceCoded DateCoded DateCoded
B.2 Line item number

A mandatory sequence number starting at 1 in each message.

LineNumber
Positive integer
1
<LineNumber>1</LineNumber>
B.3 Product identifier

One or more identifiers for the product. Mandatory in Inventory reports, and repeatable if the product may be identified by two or more identifiers.

Each <ProductID> composite must contain one Product identifier type and one Identifier. In addition, it must contain an <IDTypeName> when (and only when) the Product identifier type is Proprietary.

ProductIdentifier
ProductID
1…n
ProductIDType ProductIDType IDTypeName IDTypeName IDValue IDValue or Identifier must be included if and only if <ProductIDType> is proprietary
<ProductIdentifier>
    <ProductIDType>15</ProductIDType>
    <IDValue>9780001234567</IDValue>
</ProductIdentifier>
B.4 Product identifier type

Specifies the type of identifier used for the product.

ProductIDType
Must contain one of:
A value from List 5Two-digit code from ONIX Codelist 5
Proprietaryuse for a third-party proprietary ID scheme, which must be named in <IDTypeName>
ISBNuse only for a 10-character ISBN
EAN13use for a 13-digit ISBN, ISMN or any other GTIN-13
UPCuse for an item-specific UPC-12
ISMNuse only for a 10-character ISMN
GTIN14use only for a 14-digit GTIN
SKUStock Keeping Unit - a number assigned to a product by the company for stock-keeping purposes and internal operations
Selleruse for a supplier-defined product ID
Buyeruse for a customer-defined product ID
1
<ProductIDType>EAN13</ProductIDType>
B.5 Identifier type name

A distinctive and consistent name for a proprietary product identifier. Mandatory if <ProductIDType> is proprietary, and omitted for any other value of <ProductIDType>.

IDTypeName
Variable-length text, suggested maximum length 50 characters
0…1
<IDTypeName>Online Bookstore Item no</IDTypeName>
B.6 Identifier value

An identifier of the type specified in <ProductIDType>.

IDValue
Identifier
Alphanumeric characters according to the identifier type specified in <ProductIDType>.
1
<Identifier>9780300117264</Identifier>
Spaces and hyphens are omitted from ISBNs, ISMNs, EANs, UPCs, GTINs
End of Product identifier composite
B.7 Item description

Optional basic bibliographic description of the product. If provided, this is intended primarily for confirmation of the identity of a product.

<ItemDescription> must include a title for the product, either in the <TitleDetail> or the <Title> element.

ItemDescription
0…1
TitleDetail TitleDetail Title Title Contributor Contributor or Author OtherDetail OtherDetail
<ItemDescription>
    <Title>Anne of Green Gables</Title>
    <Contributor>Lucy Maud Montgomery</Contributor>
    <OtherDetail>Illustrated edition</OtherDetail>
</ItemDescription>
B.8 Title detail

Text combining title and other elements such as a series title, subtitle or edition into a single element. This is the equivalent of a Distributor’s title in ONIX for Books, and for historical reasons is often limited to a very small number of characters (for example 32, to ensure the title fits on a single line of printed invoices). Optional within <ItemDescription>, but must be included when <Title> is omitted.

TitleDetail
Variable-length text, suggested maximum length 50 characters
0…1
<TitleDetail>Gd Metadata Bgnnrs JE Smith PBK</TitleDetail>
B.9 Title

The main distinctive Title of the book. Optional within <ItemDescription>, but must be included when <TitleDetail> is omitted.

Title
Variable-length text, suggested maximum length 100 characters
0…1
<Title>Good Metadata for Beginners</Title>
B.10 Contributor

Name for an author or other contributor to the product. Optional within <ItemDetail>, and may only be used if <Title> is present. Repeatable in order to name multiple contributors.

Contributor
Author
Variable-length text, suggested maximum length 100 characters
0…n
<Contributor>Joseph E. Smith</Contributor>
B.11 Other detail

Optional further details such as edition information, that might be useful to confirm the identity of the product.

OtherDetail
Variable-length text, suggested maximum length 100 characters
0…1
<OtherDetail>Red cover version</OtherDetail>
End of Item description composite
B.12 Product form

A code specifying the physical or digital nature of the product, used primarily to confirm the identity of the product. Optional, but should be treated as mandatory if a single product identifier applies to multiple digital formats (which is not viewed as good practice). In this case, the line item must relate to inventory of the product in a single format only.

Repeatable in order to deliver both a Product form code and one or more Product form detail or e-publication type codes. Note that E-publication type codes are retained for compatibility only, and use of List 150 / List 175 is strongly recommended.

FormatCode
Must be one of the following:
A value from List 150Two-letter Product form code from ONIX List 150
A value from List 175Four-character Product form detail code from ONIX List 175
A value from List 10Three-digit E-publication type code from ONIX List 10
0…n
<FormatCode>ED</FormatCode>
<FormatCode>E101</FormatCode>
    (EPUB)
B.13 Inventory Status

Intended for reporting the status of digital files and POD, where the inventory holder does not hold physical copies (or for POD, may hold a very small number), but can create copies as needed. Optional, but one of either Inventory status or Inventory quantity must be used.

The Inventory status uses a two-digit code to report on both the status of the master files and of the metadata for the product, either of which can prevent customer orders for the product being fulfilled.

InventoryStatus
Must be one of the following two-digit codes:
00Unknown or Unspecified
01No metadata, No master file(s)
02No metadata, Master file(s) on hand
03No metadata, Master file(s) in QA
04No metadata, Master file(s) rejected
05No metadata, Master file(s) ready
11Metadata on hand, No master file(s)
12Metadata on hand, Master file(s) on hand
13Metadata on hand, Master file(s) in QA
14Metadata on hand, Master file(s) rejected
15Metadata on hand, Master file(s) ready
21Metadata in QA, No master file(s)
22Metadata in QA, Master file(s) on hand
23Metadata in QA, Master file(s) in QA
24Metadata in QA, Master file(s) rejected
25Metadata in QA, Master file(s) ready
31Metadata rejected, No master file(s)
32Metadata rejected, Master file(s) on hand
33Metadata rejected, Master file(s) in QA
34Metadata rejected, Master file(s) rejected
35Metadata rejected, Master file(s) ready
41Metadata ready, No master file(s), Not accepting preorders
42Metadata ready, Master file(s) on hand, Not accepting preorders
43Metadata ready, Master file(s) in QA, Not accepting preorders
44Metadata ready, Master file(s) rejected, Not accepting preorders
45Metadata ready, Master file(s) ready, Not accepting preorders
51Metadata ready, No master file(s), Accepting preorders
52Metadata ready, Master file(s) on hand, Accepting preorders
53Metadata ready, Master file(s) in QA, Accepting preorders
54Metadata ready, Master file(s) rejected, Accepting preorders
55Metadata ready, Master file(s) ready, Accepting preorders
61Product fulfilling, With no known issues
62Product fulfilling, With known master file issue
63Product fulfilling, With known metadata issue
64Product fulfilling, With known master file and metadata issues
71Product no longer fulfilling, With no known issues, Accepting orders
72Product no longer fulfilling, With known master file issue, Accepting orders
73Product no longer fulfilling, With known metadata issue, Accepting orders
74Product no longer fulfilling, With known master file and metadata issues, Accepting orders
75Product no longer fulfilling, With no known issues, Not accepting orders
76Product no longer fulfilling, With known master file issue, Not accepting orders
77Product no longer fulfilling, With known metadata issue, Not accepting orders
78Product no longer fulfilling, With known master file and metadata issues, Not accepting orders
99Product removed from inventory
0…1
<InventoryStatus>61</InventoryStatus>
B.14 Inventory Note

Optional additional explanatory note. May be included if the inventory status requires further details.

InventoryNote
Variable-length text, suggested maximum length 200 characters
0…1
<InventoryNote>Master rejected because EPUB lacks required accessibility tags</InventoryNote>
B.15 Inventory quantity

Optional and repeatable composite giving inventory quantities for the product: when present, at least one quantity must be reported, and several quantities may be reported by trading partner agreement.

Mandatory for reporting physical products, but not intended to be used for digital products.

InventoryQuantity
0…n
QuantityType QuantityType QuantityValue QuantityValue NewLocationParty NewLocationParty QuantityNote QuantityNote
<QuantityType>
    <QuantityType>InHandUnreserved</QuantityType>
    <QuantityValue>1012</QuantityValue>
</QuantityType>
<QuantityType>
    <QuantityType>InHandReserved</QuantityType>
    <QuantityValue>24</QuantityValue>
</QuantityType>
In the example, the total number of copies in hand is 1036.
B.16 Quantity Type

Code used to indicate the nature of the inventory quantity in Quantity value.

Note that some codes may only be used with inventories that cover a period – specifically, Min and Max codes and those representing stock movements (Despatched, Returned and so on). Others apply to an inventory with a single date (and time), or at the end of an inventory period.

QuantityType
Must be one of the following:
InHandQuantity at date and time of inventory (or at the end of the inventory period), whether reserved or unreserved
InHandMinMinimum quantity over the period covered by the inventory report
InHandMaxMaximum quantity over the period covered by the inventory report
InHandUnreservedIn hand and available to fulfil new orders (‘free stock’)
InHandReservedIn hand but set aside to fulfil existing customer orders, or ‘frozen’ to prevent dispatch
InHandUnreservedMin
InHandReservedMin
InHandUnreservedMax
InHandReservedMax
OnOrderOn order (from supplier) but not yet received
OnOrderMin
OnOrderMax
OnOrderUnreservedOn order and will be available to fulfil new customer orders
OnOrderReservedOn order but will be set aside to fulfil existing customer orders
OnOrderUnreservedMin
OnOrderReservedMin
OnOrderUnreservedMax
OnOrderReservedMax
OutstandingRequirementAdditional quantity not yet on order, but required to fulfil outstanding orders at date and time of inventory (this is sometimes viewed as ‘negative free stock’, but in this case is a positive number)
DespatchedGross quantity despatched over the period covered by the inventory report, not net of returns
LostOrStolen…over the period covered
DamagedOrDestroyed…(inadvertently) over the period covered
TransferredSent to another location or stockholder during the period covered. The new location or stockholder must be specified in <NewLocationParty>
ReturnedReceived back into inventory as a return during the period covered
DestroyedRendered unsalable (eg pulped, defaced, stripped) during the period covered, by agreement with the supplier or publisher
ReturnedForDestructionReturned from inventory to the supplier or publisher (generally not in resalable condition) during the period covered. Further details may be given in <QuantityNote>
ReturnedForResaleReturned from inventory to the supplier or publisher (in resalable condition) during the period covered
RemovedFromInventoryFurther details must be given in <QuantityNote>
1
<QuantityType>InHandUnreserved</QuantityType
B.17 Quantity value

Optional gross number of copies in the inventory quantity.

QuantityValue
Positive integer or zero
1
<QuantityValue>476</QuantityValue>
B.18-47 New location party

Must be included if the quantity type is Transferred and if no new inventory location party is specified in the Header.

The structure of the <NewLocationParty> composite is identical to that of <SellerParty> (see H.13).

NewLocationParty
0…1
Identical to H.43–72 New location party
End of New location party composite
B.48 Quantity Note

Explanatory note. Must be included if the Quantity type is RemovedFromInventory.

QuantityNote
Variable-length text, suggested maximum length 200 characters
0…1
<QuantityNote>Removed at request of publisher</QuantityNote>
End of Inventory quantity composite
B.49 Line item Document references

Optional Document reference applying either all lines in the report, or to this line item only, and repeatable if more than one document reference applies. Document references that apply to all line items in the report may alternatively be supplied in the Header of the message, and a Document reference may be included within <ItemDetail> only if it is not included in the <Header>.

Each repeat of the <ReferenceCoded> composite must include a Reference type code, plus a Reference number and/or a Reference date.

ReferenceCoded
0…n
Identical to H.4 Document references
B.50 Reference type

The type of reference for the line item, mandatory within every <ReferenceCoded> composite.

ReferenceTypeCode
Must be one of the following:
ProprietaryA name must be supplied in <ReferenceTypeName>
ReportItemReferenceNumberUnique reference number assigned by the sender
ContractReference
StandingOrderReference
1
<ReferenceTypeCode>ReportItemReferenceNumber</ReferenceTypeCode>
B.51 Reference type name

A consistent and distinctive name for the type of document reference. Optional, but must be included in a <ReferenceCoded> composite if and only if <ReferenceTypeCode> is proprietary.

ReferenceTypeName
Variable-length text, suggested maximum length 50 characters
0…1
<ReferenceTypeName>Consignment agreement</ReferenceTypeName>
B.52 Reference number

The alphanumeric reference number of the document. Optional, but must be included in every <ReferenceCoded> composite if <ReferenceDate> is omitted.

ReferenceNumber
Alphanumeric characters, suggested maximum length 36 characters
0…1
<ReferenceNumber>CON6788686</ReferenceNumber>
B.53 Reference date

Optional reference date associated with the <ReferenceTypeCode>

ReferenceDate
As for <IssueDateTime>
0…1
<ReferenceDate>20160524</ReferenceDate>
End of Line item Document reference composite
B.54 Inventory period dates

Optional and repeatable element, required if no report date or period is specified in the message Header (see H.10), in which case each line item must contain either both report period start and end dates or a single report date.

If used, the <DateCoded> composite must include both a date and a date qualifier.

DateCoded
0…2
Identical to H.10
B.55 Date

A date, including an optional time, associated with the reporting period for this line item, mandatory within each <DateCoded> composite.

Date
As for <IssueDateTime>
0…1
<Date>20170423</Date>
B.56 Date qualifier

The nature of the date in <Date> element, mandatory within each <DateCoded> composite.

DateQualifierCode
Must be one of the following:
InventoryPeriodStartStart date, or date and time, of reporting period
InventoryPeriodEndEnd date, or date and time, of reporting period (all dates are inclusive)
InventoryDateDate, or date and time for which inventory is reported (where the inventory is for a single point in time)
0…1
<DateQualifierCode>InventoryDate</DateQualifierCode>
End of Inventory period dates composite

End of Item detail

Message trailer detail

T.1 Summary

A summary of the information in the inventory report, intended primarily as a simple check on the integrity of the message itself.

Summary
1
NumberOfLines NumberOfLines NumberOfUnitsByQuantityType NumberOfUnitsByQuantityType or NumberOfUnits NumberOfProductsByInventoryStatus NumberOfProductsByInventoryStatus
T.2 Number of line items

The total number of lines sent in the inventory report.

NumberOfLines
Positive integer
1
<NumberOfLines>2357</NumberOfLines>
T.3 Number of units (subtotalled by quantity type)

The Number of units is the subtotal of all Quantity values of a single Quantity type across all repeats of <ItemDetail> in the report. Optional, but considered mandatory if <InventoryQuantity> is included in any of the lines of the report. The composite must be repeated to give the individual subtotals for each <QuantityType> used in the report.

Some subtotals may have no useful meaning in the real world – for example, the total of all InHandMin quantities in the report – and the intention is only to provide a simple check on the integrity of the report.

NumberOfUnitsByQuantityType
NumberOfUnits
0…n
QuantityType QuantityType QuantityValue QuantityValue
<NumberOfUnitsByQuantityType>
    <QuantityType>InHandReserved</QuantityType>
    <QuantityValue>71404</QuantityValue>
</NumberOfUnitsByQuantityType>
T.4 Quantity type

The Quantity type to which the reported subtotal in Quantity value applies.

QuantityType
See B.16
1
<QuantityType>OnOrderReserved</QuantityType>
T.5 Quantity

The subtotal of all Quantity values of a specified Quantity type.

QuantityValue
Positive integer
1
<QuantityValue>3357</QuantityValue>
End of Number of units composite
T.6 Number of products (subtotalled by inventory status)

The Number of products is the count of the number of line items of a single Inventory status across all repeats of <ItemDetail> in the report. Optional, but considered mandatory if <InventoryStatus> is included in any of the lines of the report. The composite must be repeated to give the individual subtotals for each <InventoryStatus> used in the report.

The intention is only to provide a simple check on the integrity of the report.

NumberOfProductsByInventoryStatus
0…n
InventoryStatus InventoryStatus QuantityValue QuantityValue
<NumberOfUnitsByInventoryStatus>
    <InventoryStatus>05</InventoryStatus>
    (No metadata, Master file(s) ready)
    <QuantityValue>12</QuantityValue>
</NumberOfUnitsByInventoryStatus>
T.7 Inventory Status

The Inventory status to which the reported product count in Quantity value applies.

InventoryStatus
See B.13
1
<InventoryStatus>43</InventoryStatus>
T.8 Quantity

The count of all products of the specified Inventory status.

QuantityValue
Positive integer
1
<QuantityValue>3357</QuantityValue>
End of Number of products composite

End of Summary

End of Inventory report

Appendices

Appendix 1: Glossary

Agency model
Business model based on the idea that a publisher sells to the end customer, and is wholly responsible for setting the price. The retailer (or Selling agent) acts as an intermediary or agent to facilitate the sale, and takes a fixed commission from the publisher.
Alias
Informal term used in EDItX documentation to refer to an alternative tag name for a particular XML data element. For example, the alias <Identifier> can be used in place of the <IDValue> tag. Aliases are used to maintain some level of compatibility with older versions of the Inventory report format, but those using aliases in reports are encouraged to update to the newer tag name as soon as practicable.
ASP
Actual selling price, the price collected by a retailer in a sale to the end customer (occasionally termed the Street price). This may be lower (or, very occasionally, higher) than the RRP.
Codelist
Informal term used in ONIX and EDItX documentation for a controlled vocabulary or authority file, for example a list of different types of price RRP, FRP, Net, Agency and so on. Some EDItX codelists consist of English words, and some define a language-independent notation – the code – for each term in the vocabulary.
Composite
Informal term used in ONIX and EDItX documentation to refer to an XML element or tag that contains only other XML tags (and contains no data of its own). A composite acts as a wrapper around a set of closely-related data elements, largely to enable them to be repeated in a neatly structured way. eg the repeatable <ProductIdentifier> composite contains three data elements, <ProductIDType>, <IDTypeName>, and <IDValue>.
Consignment
Consignment terms mean the product is still owned by the upstream party (publisher, distributor or wholesaler), even though it is physically stocked by the downstream party (wholesaler or retailer). Conceptually, the downstream party ‘buys’ the goods only after selling them on to another party – typically the end purchaser. cf Sale or return.
FRP
Fixed retail price, a price chosen by the publisher for retail sales to the consumer. In contrast to the RRP, legal restrictions in certain countries prevent retailers selling books significantly below the price set by the publisher (or occasionally, by the importer).
Location
A physical or logical location where stock is stored, for example a warehouse or distribution centre, or retail premises.
Net price
Generally, a price after tax, trade discounts and other adjustments are made – in effect, a business-to-business price.
New Location Party
A stockholding organization and its storage location (eg a warehouse) to which the Seller has transferred stock.
Publisher Party
The organization responsible for making the product available, and generally the one taking the financial risk. The publisher will often be a recipient of the Inventory report.
Receiving Party
The organization responsible for receiving the inventory report, when different from the Publisher and Supplier.
Reporting Party
The organization responsible for creating the inventory report, when different from the Seller or Selling agent.
Reseller model
Business model based on the idea that the publisher sells to a chain of distributors, wholesalers and retailers. The business-to-business transactions are based on RRP minus a trade discount, or on wholesale terms, and the retailer is responsible for setting the price for the sale to the end customer.
RRP
Recommended retail price, a price chosen and recommended by the publisher for retail sales to the consumer (occasionally termed SRP – the Suggested retail price). The retailer may choose to sell the book to the end customer at this price, or may choose a different price point.
Seller Party
A stockholding organization, usually the one creating the inventory report, or at least the organization responsible for the inventory being reported on. For purely digital products, the Seller party is the organization that fulfills the product to the end purchaser (and therefore is not necessarily the retailer). For products sold on agency terms, a Selling agent may report on (e-book) inventory instead.
Selling Agent Party
Organization responsible for facilitating the sale (by the Publisher) to the end purchaser under an agency agreement. Similar to the Seller, but works on a commission for each sale rather than purchasing products and then reselling them at a higher price.
Supplier Party
The organization that supplied the products that are being reported on but that is neither the publisher nor the content owner.
Wholesale price
Business-to-business prices in the book trade in many countries are often based on the RRP (or FRP) minus a trade discount. An alternative is a net or wholesale price – set lower than the RRP, but not ordinarily subject to a further trade discount.
XML schema
An XML schema formally defines the set of XML tags that can be used in a particular document format, and the order in which they must occur. It defines how tags are nested within other tags (composites), and whether they are optional, mandatory, repeatable (their cardinality). To some degree, a schema also defines the type of data allowed within each tag – whether it is free text, a real number or integer, a date etc, or a term from a controlled vocabulary (a codelist). Note only XSD schemas are available for EDItX messages.