Retrieve a sales order shipment

Operation ID: getSalesOrderShipment

Group: Accounting › Sales Order Shipments

Open in the interactive reference

GET /accounting/sales-order-shipments/{id}

Read-only: Reads and returns; changes nothing.

Retrieves a sales order shipment. Use the sales order shipment's id, not its shipmentNumber.

The response includes the shipment's lines. A shipment created with POST accounting/sales-order-shipments starts with shippedQty 0 on every line. Inventory fills in the quantities when the shipment is committed there.

Parameters

Name In Type Required Description
Api-Version header string · v1 yes The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version v1.
id path string yes The unique identifier of the sales order shipment you want to retrieve. Example: "3b7d5e9c-1a24-4f80-9c6d-2e8f70b13a45".

Response

200 Success

Under data (getSalesOrderShipmentOutput):

Field Type Required Description
id string yes The unique identifier for the sales order shipment. Example: "3b7d5e9c-1a24-4f80-9c6d-2e8f70b13a45".
salesOrderId string yes The sales order this shipment fulfills. See id on GET accounting/sales-orders/:id. Example: "9c2a6a10-7d34-4c8e-9b21-5a0f3e6d81b7".
inventoryShipmentId number no The numeric identifier of the shipment document in inventory, which owns the shipment. Absent only on legacy rows written before the mirroring existed. Example: 4242.
shipmentNumber string no The shipment document number, assigned by inventory. Absent until inventory has issued one. Example: "SHP-1042".
status string no The lifecycle status of the shipment. Possible values: 'pendingShipment', 'shipped', 'cancelled'. 'pendingShipment' is drafted in inventory but not yet dispatched, 'shipped' is dispatched, and 'cancelled' means the inventory shipment was deleted and this mirror was soft-canceled. Example: "shipped".
trackingId string no The carrier tracking number or tracking URL, when one has been recorded. Example: "1Z999AA10123456784".
carrier string no The name of the carrier handling the shipment. Example: "DHL".
incoterm string no The incoterm governing shipping responsibility for this shipment. For example 'DAP' or 'EXW'. Example: "DAP".
warehouseId string no The warehouse location the shipment is dispatched from. See id on GET inventory/warehouses/:id. Example: "1a24d5e9-3b7d-4f80-9c6d-2e8f70b13a45".
shipToContactEmail string no The email of the contact who receives this shipment.
customerRequestDate date no The date the customer asked for delivery. Format YYYY-MM-DD.
shipDate date no The date the shipment was dispatched. Format YYYY-MM-DD. Absent while the shipment is still pending. Example: "2026-08-19".
deliveryDate date no The date the shipment was, or is expected to be, delivered. Format YYYY-MM-DD. Example: "2026-08-22".
lastModifiedDate date-time yes The date and time the shipment last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. Example: "2026-08-20T10:15:00.000Z".
items array<object> yes The shipped lines, oldest first. An empty array when the shipment has no lines. Example: [{"id":"5a0f3e6d-81b7-4c8e-9b21-9c2a6a107d34","salesOrderProductItemId":"7d345a0f-3e6d-4c8e-9b21-9c2a6a10b7f1","shippedQty":"3","orderedQty":"5","unshippedQty":"2"}].
items[].id string yes The unique identifier for the shipment line. PATCH matches updateItems and deleteItems on it.
items[].salesOrderProductItemId string yes The sales order product item this shipment line is for. See items[].id on GET accounting/sales-orders/:id.
items[].shippedQty decimal yes The quantity shipped on this line, as a count of units.
items[].orderedQty decimal yes The total quantity ordered for the sales order product item, as a count of units.
items[].unshippedQty decimal yes The quantity still outstanding on this line, as a count of units: orderedQty minus shippedQty.
{
  "data": {
    "id": "3b7d5e9c-1a24-4f80-9c6d-2e8f70b13a45",
    "salesOrderId": "9c2a6a10-7d34-4c8e-9b21-5a0f3e6d81b7",
    "inventoryShipmentId": 4242,
    "shipmentNumber": "SHP-1042",
    "status": "shipped",
    "trackingId": "1Z999AA10123456784",
    "carrier": "DHL",
    "incoterm": "DAP",
    "warehouseId": "1a24d5e9-3b7d-4f80-9c6d-2e8f70b13a45",
    "shipToContactEmail": "<shipToContactEmail>",
    "customerRequestDate": "2026-01-15",
    "shipDate": "2026-08-19",
    "deliveryDate": "2026-08-22",
    "lastModifiedDate": "2026-08-20T10:15:00.000Z",
    "items": [
      {
        "id": "5a0f3e6d-81b7-4c8e-9b21-9c2a6a107d34",
        "salesOrderProductItemId": "7d345a0f-3e6d-4c8e-9b21-9c2a6a10b7f1",
        "shippedQty": "3",
        "orderedQty": "5",
        "unshippedQty": "2"
      }
    ]
  },
  "diagnostics": [
    {
      "code": "<code>",
      "message": "<message>",
      "severity": "error",
      "path": [
        "<path>"
      ],
      "details": "<details>"
    }
  ]
}

Errors

Code Status
NOT_FOUND 400

Statuses