I don't really understand your question, but you can always check for status of shipments when you want to process it. Shipment.Status is a string that take one of OrderShipmentStatus values:
public enum OrderShipmentStatus
AwaitingInventory = 1,
Cancelled = 2,
InventoryAssigned = 4,
OnHold = 8,
Packing = 16,
Released = 32,
Shipped = 64
We work with an external fullfillment party. It could happen that a purchase order can only be delivered partially, meaning some line items where not available of less then ordered. We have an automated process that retreives the status of an purchase order and want to process an partial delivered order. What is the best way to do this? I see a partially shipped folder in the purchase orders by status in commerce manager?
Partially shipped order is order with multiple shipments and some are shipped. You can check status of an OrderGroup (PurchaseOrder/Cart) by OrderGroup.Status, which is one of values of OrderStatus enum:
public enum OrderStatus
OnHold = 1,
PartiallyShipped = 2,
InProgress = 4,
Completed = 8,
Cancelled = 16,
AwaitingExchange = 32
And what is the best way to process the none shipped line items / quantity of line items? Adjust the order lineitems or create a order note or something else?
I think you can call Shipment.SetLineItemQuantity(int lineItemIndex, decimal quantity) for the unshipped shipment - I would not recommend to adjust the lineitem.Quantity directly.
What is the best way to update an existint purchase order when it is partial delivered by the fullfillment provider? Where do I process what was original orders vs what was actual delivered?