Pick Execution Service Integration

Overview

Attribute Value
Context Pick Execution Service
Pattern Partnership
Direction Bidirectional
Protocol Apache Kafka
Topics process-path.routing.*, pick-execution.picks.*

Integration Summary

Process Path and Pick Execution have a partnership relationship. Process Path routes shipments to paths, and Pick Execution manages the picking workflow. Pick Execution provides throughput feedback that influences routing decisions.

1
2
3
4
5
6
7
8
┌─────────────────────────┐         ┌─────────────────────────┐
│      PROCESS PATH       │ ◄─────► │    PICK EXECUTION       │
│                         │         │                         │
│  • Path assignment      │         │  • Pick strategy        │
│  • Capacity signals     │ Events  │  • Path optimization    │
│  • Throughput targets   │         │  • Pick verification    │
│                         │         │  • Progress tracking    │
└─────────────────────────┘         └─────────────────────────┘

Events Published by Process Path

ShipmentRoutedToPathEvent

Purpose: Initiate picking for routed shipment

Topic: process-path.routing.events

Pick Execution Action: Create pick tasks based on path type

1
2
3
4
5
6
7
8
9
10
11
12
{
  "type": "com.paklog.processpath.shipment.routed.v1",
  "data": {
    "shipmentId": "SHP-123456",
    "assignedPath": "AFE",
    "pathId": "PATH-AFE-01",
    "shipmentType": "MULTI",
    "itemCount": 3,
    "slaPriority": "GREEN",
    "estimatedCycleTime": "PT15M"
  }
}

PathCapacityChangedEvent

Purpose: Adjust pick release rate

Topic: process-path.capacity.events

Pick Execution Action: Throttle or accelerate pick assignments

1
2
3
4
5
6
7
8
{
  "type": "com.paklog.processpath.capacity.changed.v1",
  "data": {
    "pathId": "PATH-AFE-01",
    "capacityState": "CONSTRAINED",
    "utilizationPercent": 85
  }
}

Events Consumed from Pick Execution

PickCompletedEvent

Purpose: Track shipment progress, update cycle time estimates

Topic: pick-execution.picks.completed

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
  "type": "com.paklog.pick.completed.v1",
  "data": {
    "pickId": "PICK-123456",
    "shipmentId": "SHP-123456",
    "sku": "SKU-WIDGET-001",
    "quantity": 2,
    "pickLocation": {
      "zone": "ZONE-A",
      "aisle": "A-12",
      "bin": "BIN-045"
    },
    "toteId": "TOTE-789",
    "pickDuration": "PT2M30S",
    "pickedAt": "2025-01-20T10:05:00Z",
    "nextStep": "INDUCT"
  }
}

PickShortEvent

Purpose: Handle short picks, trigger rerouting if needed

Topic: pick-execution.picks.short

1
2
3
4
5
6
7
8
9
10
11
12
{
  "type": "com.paklog.pick.short.v1",
  "data": {
    "pickId": "PICK-123456",
    "shipmentId": "SHP-123456",
    "sku": "SKU-WIDGET-001",
    "requestedQuantity": 2,
    "pickedQuantity": 1,
    "shortReason": "INVENTORY_NOT_FOUND",
    "shortAt": "2025-01-20T10:05:00Z"
  }
}

PickThroughputEvent

Purpose: Provide real-time throughput metrics for capacity scoring

Topic: pick-execution.metrics.throughput

1
2
3
4
5
6
7
8
9
10
11
12
{
  "type": "com.paklog.pick.throughput.v1",
  "data": {
    "zoneId": "ZONE-A",
    "currentPicksPerHour": 145,
    "targetPicksPerHour": 150,
    "activePickersCount": 12,
    "queueDepth": 35,
    "avgPickDuration": "PT2M15S",
    "timestamp": "2025-01-20T10:00:00Z"
  }
}

Pick Strategy by Path

Singles Path Picking

1
2
3
4
5
6
7
8
9
10
Path: SINGLES
Strategy: DIRECT_PICK
─────────────────────────
1. Single item per tote
2. Direct route to pack station
3. No consolidation required
4. Fastest cycle time

Pick Order:
[Item] → [Yellow Tote] → [Conveyor] → [Pack Station]

AFE Path Picking

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Path: AFE
Strategy: ITEM_BY_ITEM
─────────────────────────
1. Pick items individually
2. Each item to separate tote
3. Items travel to induct
4. Consolidation at rebin wall

Pick Order:
[Item 1] → [Tote A] → [Induct] → [AFE Tray] → [Sorter] → [Rebin]
[Item 2] → [Tote B] → [Induct] → [AFE Tray] → [Sorter] → [Rebin]
[Item 3] → [Tote C] → [Induct] → [AFE Tray] → [Sorter] → [Rebin]
                                                            ↓
                                                    [Pack Station]

Batch/Flow Path Picking

1
2
3
4
5
6
7
8
9
10
Path: BATCH_FLOW
Strategy: BATCH_PICK
─────────────────────────
1. Multiple orders in wave
2. Batch picking reduces travel
3. Items sorted at put wall
4. Higher efficiency for high-volume

Pick Order:
[Wave of Orders] → [Batch Cart] → [Put Wall] → [Pack Stations]

Throughput Coordination

Pick Zone Capacity Signals

Pick Execution reports zone capacity to Process Path:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
  "zones": [
    {
      "zoneId": "ZONE-A",
      "pickCapacityPerHour": 1800,
      "currentUtilization": 75,
      "avgWalkTime": "PT30S",
      "congestionLevel": "NORMAL"
    },
    {
      "zoneId": "ZONE-B",
      "pickCapacityPerHour": 1500,
      "currentUtilization": 90,
      "avgWalkTime": "PT45S",
      "congestionLevel": "HIGH"
    }
  ]
}

Process Path Response

Process Path adjusts routing based on pick zone congestion:


Tote Flow Coordination

Tote Assignment

Pick Execution assigns totes and communicates to Process Path:

1
2
3
4
5
6
7
8
9
10
11
{
  "shipmentId": "SHP-123456",
  "toteAssignments": [
    {
      "toteId": "TOTE-789",
      "itemCount": 1,
      "destinationPath": "SINGLES",
      "pickZone": "ZONE-A"
    }
  ]
}

Tote Progress Tracking

Process Path tracks tote progress for SLA monitoring:

1
2
3
4
5
6
7
TOTE-789:
  Picked: 10:05:00
  On Conveyor: 10:06:00
  At Pack Station: 10:08:00
  Packed: 10:10:00

  Total Pick-to-Pack: 5 minutes ✓

Error Handling

Short Pick Handling

1
2
3
4
5
6
7
1. Pick Execution detects short pick
2. Pick Execution publishes PickShortEvent
3. Process Path evaluates impact:
   - If partial fulfillment possible → Continue
   - If order cannot be fulfilled → Request reallocation
4. Process Path may reroute to different path
5. Order Management notified if critical

Pick Bottleneck Detection

1
2
3
4
5
6
1. Pick throughput drops below threshold
2. Pick Execution publishes PickThroughputEvent
3. Process Path detects bottleneck
4. Process Path reduces routing to affected zones
5. Process Path triggers WorkloadRebalanceTriggeredEvent
6. WES may add pick labor or redistribute work

Performance Metrics

Metric Target Impact on Routing
Picks per hour 120-150 Capacity score factor
Pick accuracy 99.8% Quality score factor
Avg pick duration < 3 min Cycle time estimate
Short pick rate < 0.5% Path reliability score

Integration Points

Process Path → Pick Execution

Data Purpose Frequency
Routed shipments Initiate picking Per shipment
Path capacity state Throttle pick release On change
SLA priority updates Reprioritize picks On escalation

Pick Execution → Process Path

Data Purpose Frequency
Pick completion Track progress Per pick
Throughput metrics Capacity scoring Every 5 min
Zone congestion Routing adjustment On change
Short picks Exception handling Per occurrence

Monitoring

Key Metrics

Alerts