POST/v1/Inventory/Sync

Sync Inventory

Used by retailers or 3PL providers to synchronize inventory quantities for one or more SKUs at a specific fulfillment center.

Request Body — InventorySyncRequest

  • Name
    tenantCode
    Type
    string
    Description

    Retailer tenant code.

  • Name
    fulfillmentCentreId
    Type
    string
    Description

    Fulfillment center identifier.

  • Name
    provider
    Type
    string
    Description

    Inventory provider/system name.

  • Name
    items
    Type
    array<InventorySyncItem>
    Description

    Lines of inventory to upsert at this FC.

InventorySyncItem

  • Name
    sku
    Type
    string
    Description

    SKU to update.

  • Name
    variantProductCode
    Type
    string
    Description

    Optional variant code.

  • Name
    upc
    Type
    string
    Description

    Optional UPC code.

  • Name
    ean
    Type
    string
    Description

    Optional EAN code.

  • Name
    size
    Type
    string
    Description

    Size descriptor.

  • Name
    color
    Type
    string
    Description

    Color descriptor.

  • Name
    articleStatus
    Type
    string
    Description

    One of Expected | Active | Quarantine | Suspended.

  • Name
    quantity
    Type
    integer
    Description

    Available quantity at this FC.

Request

POST
/v1/Inventory/Sync
curl -X POST "https://logistics-fulfillment-api.test.eshopworld.net/v1/Inventory/Sync" \
  -H "Content-Type: application/json" \
  -d '{
    "tenantCode": "GOCAS",
    "fulfillmentCentreId": "AGVAGV-ES-001",
    "provider": "mirolog",
    "items": [
      {
        "sku": "ABC-BLUE-XL-12345",
        "variantProductCode": "60433",
        "upc": "036000291452",
        "ean": "4006381333931",
        "size": "L",
        "color": "Black",
        "articleStatus": "Active",
        "quantity": 10
      }
    ]
  }'

Response (400 Bad Request) — ValidationProblemDetails

{
  "errors": {
    "FulfillmentCentreId": [
      "The FulfillmentCentreId field is required."
    ],
    "Provider": [
      "The Provider field is required."
    ]
  },
  "type": "https://httpstatuses.com/400",
  "title": "One or more validation errors occurred.",
  "status": 400,
  "detail": "Validation failed for one or more fields.",
  "traceId": "00-0403053dcf6dc794b02b09b0ca3ef956-e6eda743157a8d75-0"
}

POST/v1/PickPack/AdvancedShippingNotice

Submit Advanced Shipping Notice (ASN)

Notify the system when an order is shipped. Includes package, carrier, and item-level details.

Request Body — AdvancedShippingNoticeRequest

  • Name
    shipmentId
    Type
    string
    Description

    Optional shipment identifier.

  • Name
    eswOrderReference
    Type
    string
    Description

    ESW order reference.

  • Name
    shipmentDateTime
    Type
    string
    Description

    ISO-8601 timestamp.

  • Name
    shipmentStatus
    Type
    string
    Description

    One of Unshipped | PartiallyShipped | Shipped.

  • Name
    shipFrom
    Type
    ShipmentLocation
    Description

    Ship-from location.

  • Name
    carrierId
    Type
    string
    Description

    Carrier identifier.

  • Name
    packageReference
    Type
    string
    Description

    Optional package reference.

  • Name
    carrierSCAC
    Type
    string
    Description

    SCAC code.

  • Name
    carrierReference
    Type
    string
    Description

    Carrier tracking/reference.

  • Name
    packageWeight
    Type
    PackageWeight
    Description

    Package weight.

  • Name
    packageDimensions
    Type
    PackageDimensions
    Description

    Package dimensions.

  • Name
    items
    Type
    array<ShipmentItem>
    Description

    Item-level shipment details.

ShipmentLocation

  • Name
    name
    Type
    string
    Description

    Location name.

  • Name
    locationCode
    Type
    string
    Description

    Location code (e.g., FC identifier).

PackageWeight

  • Name
    weight
    Type
    number
    Description

    Numeric weight.

  • Name
    weightUnit
    Type
    string
    Description

    One of KG | LB.

PackageDimensions

  • Name
    length
    Type
    number
    Description

    Length.

  • Name
    width
    Type
    number
    Description

    Width.

  • Name
    height
    Type
    number
    Description

    Height.

  • Name
    dimensionUnit
    Type
    string
    Description

    One of IN | CM.

ShipmentItem

  • Name
    sku
    Type
    string
    Description

    SKU code.

  • Name
    quantityOrdered
    Type
    integer
    Description

    Ordered quantity.

  • Name
    quantityShipped
    Type
    integer
    Description

    Shipped quantity.

  • Name
    unitOfMeasure
    Type
    string
    Description

    Unit of measure.

  • Name
    itemStatus
    Type
    string
    Description

    One of Shipped.

Request

POST
/v1/PickPack/AdvancedShippingNotice
curl -X POST "https://logistics-fulfillment-api.test.eshopworld.net/v1/PickPack/AdvancedShippingNotice" \
  -H "Content-Type: application/json" \
  -d '{
    "shipmentId": "SHIP123456789",
    "eswOrderReference": "ORD987654321",
    "shipmentDateTime": "2025-11-10T16:12:07.4399847+00:00",
    "shipmentStatus": "Shipped",
    "shipFrom": { "name": "Main Fulfillment Center", "locationCode": "AGVAGV-GB-001" },
    "carrierId": "1015",
    "packageReference": null,
    "carrierSCAC": "FDXE",
    "carrierReference": "DHL1234567890",
    "packageWeight": { "weight": 12.5, "weightUnit": "KG" },
    "packageDimensions": { "length": 30.0, "width": 25.5, "height": 15.0, "dimensionUnit": "CM" },
    "items": [
      { "sku": "SKU123456", "quantityOrdered": 3, "quantityShipped": 3, "unitOfMeasure": "EA", "itemStatus": "Shipped" },
      { "sku": "SKU789012", "quantityOrdered": 2, "quantityShipped": 1, "unitOfMeasure": "BOX", "itemStatus": "Shipped" }
    ]
  }'

Response (400 Bad Request) — ValidationProblemDetails

{
  "errors": {
    "ShipmentDateTime": [
      "ShipmentDateTime is required.",
      "ShipmentDateTime must be a valid ISO 8601 timestamp."
    ]
  },
  "type": "https://httpstatuses.com/400",
  "title": "One or more validation errors occurred.",
  "status": 400,
  "detail": "Validation failed for one or more fields.",
  "traceId": "00-0403053dcf6dc794b02b09b0ca3ef956-e6eda743157a8d75-0"
}

POST/v1/PickPack/Confirm

Confirm Pick & Pack

Used by a 3PL to confirm that an order has been picked, packed, and is ready for shipment. Includes timestamps and item-level results.

Request Body — PickPackConfirm

  • Name
    confirmationId
    Type
    string
    Description

    Confirmation identifier.

  • Name
    confirmationDateTime
    Type
    string
    Description

    ISO-8601 timestamp of confirmation.

  • Name
    eswOrderReference
    Type
    string
    Description

    ESW order reference.

  • Name
    tenantCode
    Type
    string
    Description

    Retailer tenant code.

  • Name
    pickPackResponse
    Type
    PickPackResponse
    Description

    Provider response payload.

PickPackResponse

  • Name
    status
    Type
    string
    Description

    One of AcceptedForProcessing | PartiallyConfirmedByProvider | Confirmed | Failed | BadRequest | BadAddress | TimeOut.

  • Name
    failureReason
    Type
    string
    Description

    One of None | TransientError | NotFound | BadAddress | TimeOut | _3PLNotConfigured | CancelledItem | OperationalCancel | Damaged | ReallocatedExclude | EndOfDay.

  • Name
    problemMessage
    Type
    string
    Description

    Optional message.

  • Name
    itemsResult
    Type
    array<ItemProviderResponse>
    Description

    Item-level confirmations.

ItemProviderResponse

  • Name
    productCode
    Type
    string
    Description

    Product code.

  • Name
    quantityConfirmed
    Type
    integer
    Description

    Confirmed quantity.

  • Name
    status
    Type
    string
    Description

    One of Created | Success | Failed | PartialSuccess.

  • Name
    problemMessage
    Type
    string
    Description

    Optional message.

Request

POST
/v1/PickPack/Confirm
curl -X POST "https://logistics-fulfillment-api.test.eshopworld.net/v1/PickPack/Confirm" \
  -H "Content-Type: application/json" \
  -d '{
    "confirmationId": "556223225",
    "confirmationDateTime": "2025-11-10T16:12:07.3514889+00:00",
    "eswOrderReference": "6658874585",
    "tenantCode": "GOCAS",
    "pickPackResponse": {
      "status": "PartiallyConfirmedByProvider",
      "failureReason": "None",
      "problemMessage": null,
      "itemsResult": [
        { "productCode": "W-FD7090-NBL-M", "quantityConfirmed": 20, "status": "Success", "problemMessage": null },
        { "productCode": "W-M9779-BLK-S", "quantityConfirmed": 0, "status": "Failed", "problemMessage": "OutOfStock" }
      ]
    }
  }'

Response (400 Bad Request) — ValidationProblemDetails

{
  "errors": {
    "TenantCode": [
      "The TenantCode field is required."
    ]
  },
  "type": "https://httpstatuses.com/400",
  "title": "One or more validation errors occurred.",
  "status": 400,
  "detail": "Validation failed for one or more fields.",
  "traceId": "00-0403053dcf6dc794b02b09b0ca3ef956-e6eda743157a8d75-0"
}