DataShift Logo
ASNCanonical document

Advance Shipping Notice

Root model
AdvanceShippingNotice
Schema version
2.0.0
Sections
5 contract parts

Overview

Public canonical Advance Shipping Notice contract used to describe goods shipped against one or more purchase orders.

Endpoints

Use the schema endpoint for machine validation and the document page for implementation guidance.

GET

Download Advance Shipping Notice schema

application/schema+jsonapplication/json
/schemas/v1/advance-shipping-notice.schema.json

Advance Shipping Notice JSON Schema

GET

Advance Shipping Notice

text/html
/schemas/advance-shipping-notice

Advance Shipping Notice documentation page

Payload Structure

The contract is shown in reading order. The envelope identifies the document, metadata captures source context, and data contains the business payload and nested line structures.

Envelope

AdvanceShippingNotice
5 fields5 required

Public canonical Advance Shipping Notice contract used to describe goods shipped against one or more purchase orders.

docType
Required
object

Canonical document type. For advance shipping notices this value is ASN.

correlationId
Required
string (uuid)

Stable UUID used to trace this shipment notice through fulfilment and invoice workflows.

timestamp
Required
string (date-time)

UTC timestamp indicating when DataShift created the canonical shipment notice.

metadata
Required
AdvanceShippingNoticeMetadata
data
Required
AdvanceShippingNoticeData

Metadata

AdvanceShippingNoticeMetadata
2 fields2 required

Public source metadata retained for integration troubleshooting.

sourceLanguage
Required
enum
jsoncxml
sourceVersion
Required
string

Data

AdvanceShippingNoticeData
23 fields7 required

Business payload for the shipment notice.

dispatchAdviceNumber
Required
string

Supplier-assigned shipment or dispatch advice identifier.

operation
enum

Whether this is a new shipment notice, an update, or a cancellation

newupdatedelete
noticeDate
Required
string (date-time)

Date and time the supplier created the shipment notice.

shipmentDate
Required
string (date-time)

Date and time the goods left the supplier.

deliveryDate
string (date-time)

Expected delivery date and time.

requestedDeliveryDate
string (date-time)

Buyer's originally requested delivery date

shipmentType
enum

Whether this is an actual shipment or a planned/estimated one

actualplanned
fulfillmentType
enum

Whether this shipment fulfils all or part of the referenced order.

partialcomplete
serviceLevel
string

Level of shipping service (e.g., overnight, ground, express)

documentReference
object

Reference to previous ship notice (required for operation=update/delete)

poReferences
object[]

References to purchase orders being fulfilled by this shipment

carrier
Required
object

Carrier and service details for the shipment.

shipmentIdentifiers
object[]

Tracking numbers and shipment identifiers (consignment note, bill of lading, etc.)

termsOfDelivery
object

Delivery terms and conditions

shipFrom
Required
object

Shipment origin.

shipTo
Required
object

Shipment destination.

contacts
object[]

Contact information for various roles

comments
string

Human-readable notes about this shipment

reason
enum

Reason for shipment if not a standard delivery (e.g., return)

return
lineItems
Required
AdvanceShippingNoticeLineItem[]

Authoritative shipped line data. Packages reference these lines; they do not replace them.

packages
AdvanceShippingNoticePackage[]

Physical package or carton detail used for carton allocation and SSCC labelling.

hazardInfo
object[]

Hazardous materials information

extrinsics
object

Partner-specific extension fields that are not part of the canonical core contract.

Line Items

AdvanceShippingNoticeLineItem
13 fields1 required
lineNumber
integer

Line number from the purchase order being fulfilled.

shipNoticeLineNumber
integer

Sequence number of this line within the ship notice

uniqueLineKey
string

Stable DataShift line key from the original purchase order. This must reference the original line's uniqueLineKey found in the PurchaseOrder document for proper correlation. If the original document did not provide a uniqueLineKey, an exception will be raised during processing, forcing the user to manually correlate the line or update the shipment notice with the correct uniqueLineKey.

supplierItemId
string

Supplier's part or item number

buyerItemId
string

Buyer's part or item number

gtin
string

GS1 Global Trade Item Number

description
string

Item description

quantity
Required
number

Quantity shipped on this line.

unitOfMeasure
object

UN/ECE REC20 unit of measure code

poNumber
string

Purchase order number this shipped line fulfils.

countryOfOrigin
string

Country where the item was manufactured

batchInfo
object

Lot or batch tracking information

serialNumbers
string[]

Serial numbers for individually serialised items

Packages

AdvanceShippingNoticePackage
7 fields1 required
packageId
Required
string

Supplier or warehouse package identifier unique within this shipment.

sscc
string

Serial Shipping Container Code for the carton or logistic unit.

packagingCode
string

Type of packaging (e.g., BOX, PAL, CTN)

grossWeight
object

Total weight of package including contents

netWeight
object

Weight of contents only

dimensions
object

Physical dimensions of the package

lineReferences
object[]

References to authoritative lineItems packed inside this package.