Short Pick Reasons

This page is outdated. Please go to our new documentation under https://docs.fulfillmenttools.com/documentation.

If a picking task cannot be completed because some of the required items are unavailable, it is referred to as a shortpick. To provide clarity on why specific picking tasks cannot be fulfilled entirely, we've incorporated shortpick reasons into the line items of each picking task.

To integrate these reasons into a pickline item, they must be predefined in a configuration file. These reasons are constructed using a multi-language JSON format and are translated accordingly.

The multi language JSON looks like this, with all possible 2-code country codes as valid keys:

{
  "reasonLocalized": {
    "de_DE": "Artikel nicht gefunden",
    "en_US": "Item not found"
  }
}

Add or change configuration

Picking configuration with shortpick reasons

{
  "pickingShortPickConfiguration": {
    "shortPickReasons": [
      {
        "de_DE": "Artikel nicht gefunden",
        "en_US": "Item not found"
      }
    ]
  }
}

Change the tenant wide picking central configuration

PATCH/api/configurations/picking
Body

create/update picking central configuration

createdstring (date-time)

The date this entity was created at the platform. This value is generated by the service.

Example: "2020-02-03T08:45:51.525Z"
lastModifiedstring (date-time)

The date this entity was modified last. This value is generated by the service.

Example: "2020-02-03T09:45:51.525Z"
version*integer (int64)

The version of the document to be used in optimistic locking mechanisms.

Example: 42
Response

The picking central configuration was successfully updated.

Body
createdstring (date-time)

The date this entity was created at the platform. This value is generated by the service.

Example: "2020-02-03T08:45:51.525Z"
lastModifiedstring (date-time)

The date this entity was modified last. This value is generated by the service.

Example: "2020-02-03T09:45:51.525Z"
version*integer (int64)

The version of the document to be used in optimistic locking mechanisms.

Example: 42
Request
const response = await fetch('/api/configurations/picking', {
    method: 'PATCH',
    headers: {
      "Content-Type": "application/json"
    },
    body: JSON.stringify({}),
});
const data = await response.json();
Response
{
  "pickingShortPickConfiguration": {
    "confirmationOnShortPick": false,
    "shortPickReasons": [
      {
        "reason": "text",
        "active": true,
        "reasonLocalized": {
          "de_DE": "Wert",
          "en_US": "Value",
          "ru_RU": "значение"
        }
      }
    ]
  },
  "scanningConfiguration": {
    "scanningType": "MUST_SCAN_FIRST",
    "scanningRule": {
      "values": [
        {
          "priority": 0,
          "scanningRuleType": "ARTICLE"
        }
      ]
    },
    "rolesWithOverwritingScanningPermission": [
      "FULFILLER"
    ]
  },
  "scanCodeValidationConfiguration": {
    "pickingScanCodeValidationType": "NO_VALIDATION"
  },
  "takeOverPickJobConfiguration": {
    "active": false
  },
  "scheduledPickJobReleaseConfiguration": {
    "openPickJobLeadTimeInMinutes": 0
  },
  "loadUnitAssignmentConfiguration": {
    "pickJob": "AT_END",
    "pickRun": "AT_END"
  },
  "pickingMethodsConfiguration": {
    "defaultPickingMethod": "SINGLE_ORDER"
  },
  "restartPickJobConfiguration": {
    "active": true
  },
  "stockUpdateConfiguration": {
    "active": false
  },
  "backofficePickingConfiguration": {
    "active": false
  },
  "multiOrderPickingConfiguration": {
    "maxAmountOfPickJobsForMultiOrderPick": 0
  },
  "storageLocationAssignmentConfiguration": {
    "storageLocationRequired": "ALL"
  }
}

Add reasons to a picking task.

Adding shortpick reasons is currently under development. It may not be possible to add shortpick reasons to pickline items at this moment.

Shortpick reasons can be added through the API methods of our PickJobs. See:

Headless Order Fulfillment

A lineitem with shortpick reasons can look like this.

{
  "id": "87b6d771-ad00-45cb-a00c-527d182a9f57",
  "status": "CLOSED",
  "article": {
    "title": "Item-Name",
    "tenantArticleId": "daf9e470-23f1-4d99-87e8-f20aafc85e0a"
  },
  "quantity": 5,
  "picked": 4,
  "shortPickReasons": [
    {
      "reasonLocalized": {
        "de_DE": "Artikel nicht gefunden",
        "en_US": "Item not found"
      }
    }
  ]
}

When accessed through the API, shortpick reasons will be translated into the required language. The language is determined either by the requested locale or the user's default locale. If neither is specified, the translation will default to the first available localizedReason, or if unavailable, it will default to the localization for "en_US".

If a picking task is restarted or reseted, the shortpick reasons on the pickline items will be deleted.

Last updated