The OrderLineItem JSON object defines an item within an Order in the Dsco system.

- Make sure you're familiar with JSON before continuing.
- The JSON objects are defined using Orderly.  Optional attrs end with a "?" all others are required.

- isodate fields use one of these ISO 8601 format: 2014-01-01T10:30:00.000+01:00, 2014-01-01T10:30:00.000+0100, 2014-01-01T10:30:00.000Z
- Dsco reserves the right to add new attributes at any time so Partners should ensure their validators won't break should this happen

Definition

Each line item must uniquely identify the item in question by providing an Item Identifier - either dscoItemId, sku, partnerSku, upc or ean.  If a line item does not include either dscoSupplierId or dscoTradingPartnerId and its parent order does not include either a dscoSupplierId or dscoTradingPartnerId and the item identifier provided is found on more than one trading partner, Dsco will be unable to determine the desired item.  If more than one Item Identifier is provided, Dsco will use the first of the following found in this order: dscoItemId, sku, partnerSku, upc, ean.

Object
{
    int dscoSupplierId?;     # The supplier of this item
    string dscoTradingPartnerId?; # The trading partner (supplier) of this item
    int dscoItemId?;         # The Dsco unique ID of the item, an item
                             # identifier must be provided (see above)
    string sku?;             # The SKU of the item, an item identifier
                             # must be provided (see above)
    string upc?;             # The UPC of the item, an item identifier
                             # must be provided (see above)
    string ean?;             # The EAN of the item, an item identifier
                             # must be provided (see above)
    string partnerSku?;      # Added in V2 - The partner SKU of the item, an item identifier
                             # must be provided (see above)
    string title?;           # The title of the item
    int quantity;            # The number of this item in the order
    number expectedCost?;    # The expected cost of the item
    number consumerPrice?;   # The consumer's price for this item
    string personalization?; # Personalization info for this item
    string warehouseCode?;   # Added in V2 - the warehouse of the item

    string status?;          # Added in V2 - the status of the line item 
                             # (accepted, rejected, cancelled);
                             # iff some of the quantity of the order but
                             # not all has been cancelled or rejected then
                             # the order may continue to be shipped; however,
                             # if all of the quantity of the order has been
                             # cancelled or rejected then the status will be
                             # cancelled; if this status has a value but
                             # cancelledQuantity, acceptedQuantity and 
                             # rejectedQuantity are not set then this 
                             # status applies to the entire quantity of the
                             # line item or to the portion of the quantity
                             # not expressly cancelled, rejected or accepted
                             # via cancelledQuantity, rejectedQuantity and
                             # acceptedQuantity respectively
                             # compared to overall quantity to determine
                             # line item status

    string statusReason?;    # Added in V2 - the last known reason
                             # for the status to change
    
    int cancelledQuantity?;  # Added in V2 - if present and non-zero then
                             # this is the quantity of the item that has
                             # been cancelled by the supplier; if this 
                             # quantity is less than the total quantity of
                             # the item then look to acceptedQuantity and
                             # rejectedQuantity to know the status of the
                             # remainder of the quantity
    
    string cancelledReason?; # Added in V2 - the optional reason that some
                             # quantity was cancelled by the supplier
    
    int acceptedQuantity?;   # Added in V2 - if present and non-zero then
                             # this is the quantity of the item that has 
                             # been accepted; if this quantity is less than
                             # the total quantity of the item then look to
                             # cancelledQuantity and rejectedQuantity to 
                             # know the status of the remainder of the 
                             # quantity
    
    string acceptedReason?;  # Added in V2 - the optional reason that some
                             # quantity was accepted
    
    int rejectedQuantity?;   # Added in V2 - if present and non-zero then
                             # this is the quantity of the item that has
                             # been rejected by the retailer; if this 
                             # quantity is less than the total quantity of 
                             # the item then look to cancelledQuantity and 
                             # rejectedQuantity to know the status of the 
                             # remainder of the quantity
    
    string rejectedReason?;  # Added in V2 - the optional reason that some
                             # quantity was rejected by the retailer

    int lineNumber?;         # Uniquely identifies a line item for the order
    string message?;         # General purpose message for the line item
    string packingInstructions?; # Packing instructions for the line item
    string shipInstructions?;    # Ship instructions for the line item
    string receiptId?;       # Added in V2 - The receipt ID of the order item
    boolean giftFlag?;       # Added in V2 - Whether order item is a gift
    string giftReceiptId?;   # Added in V2 - The gift receipt ID of the order item
    string giftToName?;      # Added in V2 - the "to" name for the gift
    string giftFromName?;    # Added in V2 - the "from" name for the gift
    string giftMessage?;     # Added in V2 - the gift message
    string color?;           # Added in V2 - the color to use
    string size?;            # Added in V2 - the size
    double retailerPrice?;   # Added in V2 - the retailer price
    double shippingSurcharge?; # Added in V2 - the shipping surcharge
    array {ref OrderTax} taxes?; # Added in V2 - taxes for line item
    array {ref OrderLineItemActivity} activity?; # Added in V2 - activity on the item
};

Example

{
    "dscoItemId": 8276,
    "sku": "aa832934",
    "title": "My Item",
    "quantity": 3,
    "expectedCost": 23.99,
    "consumerPrice": 26.99,
    "personalization": "Personalization data here...",
    "warehouseCode": "EASTV1",
    "status": "cancelled"
}
Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.