fulfillmenttools
  • Welcome to the fulfillmenttools Platform Documentation
  • Getting Started
    • Setup your access to fulfillmenttools
    • Make your first API Calls
      • Add your first facility
      • Add your first listing
      • Place your first order
    • Core concepts & terminology
      • Order Flow
    • Postman Collection
    • Client SDKs
    • FAQ
  • Clients
    • Backoffice
      • First steps - Registration
      • Network view
        • Home
        • Orders
          • Unroutable orders
          • Pre-orders & Backorders
          • Order History
        • Inventory Management
          • Stock Overview
          • Channel Inventory
        • Facilities
        • Users
        • Returns
        • DOMS configuration
        • Settings
        • Analytics
          • DOMS Pages
          • Fulfillment Operations Pages
          • Inventory Pages
          • Downloads Page
      • Facility view
        • Home
        • Inbound
        • Tasks
        • Listings
        • Storage Locations
        • Facility
        • Users
    • Inventory app
      • Registration Inventory App
      • App sections
        • Inbound
        • Storage and relocation
    • Operations app
      • Android
        • Manual Registration
        • Android Enterprise Registration
        • Sections
          • Picking
            • Load Units (legacy)
            • Substitute items
            • Weighed or measured products
            • Scanning configuration
            • Picking Methods
              • Batch Picking
              • Multi Order Picking
          • Packing
          • Handover
          • Returns (legacy)
        • Printing
        • Notifications
      • Webapp
        • Packing
      • Overview features Android & Webapp
    • Technical requirements
      • Zebra Hardware Scanner Configuration
      • Honeywell Hardware Scanner Configuration
      • Supported barcodes for camera scanning
      • Requirements for fft applications
      • Zebra printer
    • Returns app
      • Handle unannounced returns
      • Handle announced returns
  • Products
    • Core Functionality
      • Process
        • External actions
      • Add and manage facilities
      • Notification Center
      • Checking on features
      • Tags and Stickers Concept
      • GDPR
      • Remote Configuration
      • Expiry
      • Target time
      • Time calculation for queries of future availabilities (LPS-calculation)
      • Interfacility Transfer
    • Carrier Management
      • Overview
        • Available Carriers
      • Concepts
        • Carrier Country Service Mapping (CCSM)
        • Non-delivery-days
        • Custom Carrier & Headless operation of Carriers
      • Providing needed data
    • Fulfillment Options
      • Fulfillability Check
      • Checkout Options
        • Available fulfillment options based on basket
        • Earliest possible delivery date
        • Available delivery dates within time-period
        • Availability for delivery date
      • Delivery Promise
    • Inventory Management
      • Configurations
      • Entities
        • Listing
        • Stock
          • Stock Properties
        • Storage Location
        • Zone
      • Global Inventory
        • Stock availability
        • Channel Inventory
        • Expected stock
        • Inbound Process
        • Reservations
        • Safety Stock
      • Inventory Control
        • Inventory Traits
        • Measurement Units
        • Outbound Inventory Tracking
        • Storage Location Recommendations
    • Order Fulfillment
      • Headless Order Fulfillment
      • Pick Jobs
      • Zone picking
      • Load Units
      • Custom Service
      • Handover Jobs
      • Add External Documents
      • Configurations
        • Picking Configuration
          • Picking methods
          • Short Pick Reasons
        • Packing Configuration
          • Packing Container Types
        • Print / Document Configuration
        • Tag Configurations
          • Parcel Tag Configuration
        • Handover Configuration
        • Operative Container Types
    • Order Routing
      • Entities
        • Ship-from-Store Orders
        • Click-and-Collect Orders
        • Locked Orders
        • Custom Services Orders
          • Simple Custom Service Order
          • Complex Custom Service Order
      • Fences
      • Ratings
      • Order Split
        • Order split - initial routing
        • Order split after shortpick
        • Item bundles
      • Reroute
      • Shape the routing with the DOMS Toolkit
      • Decision logs
    • Returns Management
      • Returns legacy
        • Available status
      • Returns 2.0
        • Return Reasons
        • Item Conditions
        • Integrating Returns with Events
    • Use Cases
      • Demand-Driven Replenishment
      • Expected stock in availability
      • Multi Order Picking
      • Interfacility transfer
      • Assigned Users
  • Connecting to fulfillmenttools
    • General Topics
      • Use external identity providers to authenticate to fulfillmenttools
        • Microsoft Entra ID / Azure Active Directory (AD)
      • Public Event Export
      • Available Regions
      • Backup Policies
    • GraphQL API
    • RESTful API
      • General Topics
        • API Release Life Cycle
        • Versioning
        • Authorization
        • Customization via Attributes
        • Update Guarantees
        • Rate Limits
        • Resource Timestamps
        • Pagination Interface
        • Localization
        • Custom Attributes
      • OpenAPI Specification
        • Swagger UI
        • OpenAPI 3.0 Spec
    • Eventing
      • Structure of an Event
      • Available Events
      • Tutorial
    • commercetools Connect
    • Integration Tutorial
      • Adding facilities
      • Adding listings to facilities
      • Configuring stocks
      • Carrier configuration
      • Placing orders
      • Checkout Options
      • Distributed Order Management System (Routing)
      • Local fulfillment configuration
  • Incident Reporting
    • How to report incidents in fulfillmenttools
    • How to define incident priorities
  • Release Notes
    • Release Summary – May 2024
    • Release Summary – June 2024
    • Release Summary – July 2024
    • Release Summary – August 2024
    • Release Summary – September 2024
    • Release Summary – October 2024
Powered by GitBook
On this page
  • Setting the Picking Configuration
  • Scan Code Validation (scanCodeValidationConfiguration)
  • Scanning Configuration (scanningConfiguration)
  • Take Over Pick Job Configuration (takeOverPickJobConfiguration)
  • Load Unit Assignment (loadUnitAssignmentConfiguration)
  • Picking Methods Configuration (pickingMethodsConfiguration)
  • Short Pick Configuration (pickingShortPickConfiguration)
  • Restart Pick Job Configuration (restartPickJobConfiguration)
  • Backoffice PickingConfiguration (backofficePickingConfiguration)

Was this helpful?

  1. Products
  2. Order Fulfillment
  3. Configurations

Picking Configuration

Picking can be configured to your needs

PreviousConfigurationsNextPicking methods

Last updated 5 months ago

Was this helpful?

This page is outdated. Please go to our new documentation under .

Setting the Picking Configuration

Configuration of the picking methods can be accomplished by the following call:

curl -sSL -X PATCH 'https://your.api.fulfillmenttools.com/api/configurations/picking' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "version": 42,
    "scanCodeValidationConfiguration": {
        "pickingScanCodeValidationType": "CODE_MUST_BE_KNOWN"
    },
    "takeOverPickJobConfiguration": {
        "active": false
    },
    "loadUnitAssignmentConfiguration": {
        "pickJob": "AT_END",
        "pickRun": "AT_START"
    },
    "pickingMethodsConfiguration": {
        "defaultPickingMethod": "BATCH_PICKING"
    },
    "pickingShortPickConfiguration": {
        "confirmationOnShortPick": true
    },
    "scanningConfiguration": {
        "scanningType": "SCAN_NOT_REQUIRED",
        "scanningRule": {
            "values": [
                {
                    "scanningRuleType": "ARTICLE",
                    "priority": 0
                }
            ]
        },
        "rolesWithOverwritingScanningPermission": [
            "ADMINISTRATOR",
            "SUPERVISOR"
        ]
    },
    "restartPickJobConfiguration": {
        "active": true
    },
    "backofficePickingConfiguration": {
        "active": false
    }
}'

This configuration effects the whole system regardless of the user role or the facility.

Some of the values above are worth explanation. Please see the following paragraphs for more information.

Scan Code Validation (scanCodeValidationConfiguration)

The picking scan code validation configuration determines whether the pick of an item is possible only by scanning a barcode (valid barcodes must be supplied in the field scannableCodes in the pickLineItem of a pickjob) or whether it should be allowed to also scan other barcodes that are not known. The latter might speed up the process, but also theoretically allows for process errors.

  • CODE_MUST_BE_KNOWN: Only the scan of a code that exists inside the scannableCodes array of the pick line item increases the pick count

  • NO_VALIDATION: The scan of any barcode will increase the count of the currently in the app selected pick line item

Setting this config to CODE_MUST_BE_KNOWN and having a pick line item without any code inside its scannableCodes array will result in not being able to increase the count of the item via barcode.

Scanning Configuration (scanningConfiguration)

The scanning configuration defines scanningRule, scanningType and rolesWithOverWritingScanningPermission.

Scanning Rule (scanningRule)

The values array inside this field determines whether the pick line item, its storage location or both must be scanned. Also it states the order of the scans: Storage location first or item first in order to increase the pick count of the item. Each object inside the values array has two fields: scanningRuleType and priority. The scanningRuleType can be set to ARTICLE (pick line item) or LOCATION (storage location of the pick line item). priority (32-bit signed integer) determines which item (pick line item or storage location) has to be scanned first where 0 is the highest priority. \

Example: Setting the Scanning Rule to the following values will result in having to scan the storage location of the corresponding item and then the item in order to increase its pick count.

"scanningRule": {
  "values": [
    {
      "priority": 400,
      "scanningRuleType": "ARTICLE"
    },
    {
      "priority": 200,
      "scanningRuleType": "LOCATION"
    }
  ]
}

Please note that if both item and storage location have to be scanned, the location has to be scanned only once per item independently from the priority.

Scanning Type (scanningType)

This field can be set to one of the following values: MUST_SCAN_EACH, MUST_SCAN_FIRST, SCAN_NOT_REQUIRED.

  • MUST_SCAN_EACH: To increase the pick count of an item, the scan order determined in scanningRule must be followed (except for the case, when ARTICLE as well as LOCATION are inside the values array of scanningRule, in this the storage location of the item has to be scanned only once) in order to increase the pick count.

  • MUST_SCAN_FIRST: To increase the pick count of an item, the scan order determined in scanningRule must be followed only once. This "unlocks" the pick line and further items can be added without undergoing a scanning procedure - the count can be increased manually.

  • SCAN_NOT_REQUIRED: Increasing the pick count of an item can either be done by following the scan order determined in scanningRule or manually.

  • rolesWithOverwritingScanningPermission: This array contains the roles of users to whom the scanningRule and scanningType does not apply or in other words, they will be able to increase pick counts without adhering to the set rules. It can be filled with the following values: ADMINISTRATOR, SUPERVISOR or FULFILLER.

Overwriting the default behavior by, let's say, granting a SUPERVISOR the right to not adhere to scanning rules will increase process insecurity. Hence this feature should be used only for good reason.

Take Over Pick Job Configuration (takeOverPickJobConfiguration)

This boolean enables or disables the possibility of taking over tasks of other users.

When active can is set to true it is possible for a user to take over tasks of another user. When set to false this is not possible.

Each task has a user field which is set by the last user that has "touched" the task. By "touched" is meant the increase of the object version (this happens, for example, when entering, leaving or finishing a task). The user is determined by the login credentials.

Load Unit Assignment (loadUnitAssignmentConfiguration)

  • AT_START: The load unit assignment screen will be shown before the actual picking.

  • AT_END: The load unit assignment screen will be shown after the actual picking.

  • INACTIVE: The load unit assignment screen will not be shown at all.

  • DURING_PICKING: Currently not supported in our clients. This status will be handled the same as INACTIVE

Picking Methods Configuration (pickingMethodsConfiguration)

This sets the default picking method tenant-wide. The field defaultPickingMethod of this object can be: SINGLE_ORDER, MULTI_ORDER or BATCH.

The default picking method determines the preferredPickingMethod of a single task, when there are no other settings (tags or facility-wide preferredPickingMethod).

Short Pick Configuration (pickingShortPickConfiguration)

The boolean confirmationOnShortPick inside this object determines whether the stock level of an item should be set to 0 at the shown storage location in case of a short pick.

Example:

Example Consider a pickjob with a pickLineItem for 10 apples. Apples can be found at 3 potential storage locations (Location A has 7 Apples, location B has 5 apples and location C has 6 apples). The picker arrives at Location A and finds - unexpectedly - no apples at all. In the app the next storage location will be requested (Location B) and the picker completes the task by picking the 5 apples from B and 5 apples from C.

Once the pickjob is being finished the flag confirmationOnShortPickdecides whether the assumed stock of A (which was 10, but in fact there were no apples there at all) is being corrected to 0 due to the result of said pickjob.

Restart Pick Job Configuration (restartPickJobConfiguration)

The boolean active determines whether restarting a task in the backoffice should be possible or forbidden.

Backoffice PickingConfiguration (backofficePickingConfiguration)

Setting the field active inside this object to true allows picking in the backoffice in addition to our clients.

Available options includeCODE_MUST_BE_KNOWN or NO_VALIDATION. All the possible options are documented .

The selection of in the picking process can be set to before or after the actual picking or set to be disabled separately for each picking method like single pick (pickJob) or multi/batch pick (pickRun).

https://docs.fulfillmenttools.com/documentation
here
load units