결론부터 말하겠습니다: 대부분의 창고는 필요 없던 핸들링 터치 하나에 돈을 내고 있습니다. 화물이 도착하면 인바운드에서 분해하고, 저장 위치에 입고한 뒤, 며칠 후 다시 꺼내 피킹합니다. 같은 팔레트를 지게차가 두 번 만집니다. 그건 곧 돈이 문 밖으로 걸어 나가는 소리입니다.

WES 입고 최적화가 존재하는 이유는 바로 이 문제를 해결하기 위해서입니다. 화물이 도착하는 순간, 시스템은 이미 그 화물이 어디로 갈지를 파악해 둔 상태입니다. 출고로 바로 흘려보낼 수 있는 화물은 아웃바운드 스테이징이나 피크 페이스(pick face)로 직행하고, 정말로 저장이 필요한 화물만 저장 위치에 입고합니다. 터치 하나 줄이기는 지게차 연료 절약이 아닙니다. 그 터치 하나에 붙어 있던 모든 비용을 없애는 것입니다.

왜 WMS가 아니라 WES가 이 일을 맡아야 하는가

WMS도 입고 규칙은 짤 수 있습니다. A급 제품은 도크 근처에, 무거운 화물은 하단에. 하지만 WMS 규칙은 정적입니다. 지금 이 순간 무슨 일이 일어나고 있는지는 볼 수 없습니다.

인상 깊게 남은 사례가 하나 있습니다. 다른 고객사에서도 같은 함정을 세 번이나 목격했습니다. 2023년 11월, 상하이 외곽의 한 3PL이 18,000제곱미터 규모의 시설에서 소형 가전 제품을 운영하고 있었습니다. Singles' Day를 일주일 앞두고, 그들의 인바운드 구역은 400+ 팔레트에 파묻혔습니다. 지게차 기사들은 오전 8시부터 오후 10시까지 일해도 입고가 따라가지 못했습니다. 사장님이 저에게 물었습니다. 'ABC 입고 규칙을 다 설정했는데, 왜 바빠질수록 더 엉망이 되는 거죠?'

사흘 치 데이터가 이야기를 말해주었습니다. 규칙은 맞았지만, 타이밍이 틀렸습니다. 그 400개 팔레트 중 120개는 이미 다음 날 아침 출고 예정인 아웃바운드 주문에 확정된 물량이었습니다. 정적 규칙은 충실하게 그들을 저장 위치에 넣었고, 다음 날 피커들이 그대로 다시 꺼냈습니다. 120개 팔레트, 하나도 빠짐없이 한 번씩 쓸데없이 더 만진 셈입니다.

WMS는 화물이 어디에 있어야 하는지 알려줍니다. WES는 화물이 지금 당장 그곳에 가야 하는지를 알려줍니다. 동적 입고 오케스트레이션은 네 가지 실시간 입력을 저울질합니다.

  1. 미결 수요(Open demand): 앞으로 24–72시간 안에 이 화물이 필요한 아웃바운드 주문(또는 계획된 웨이브)이 있는가?
  2. 저장 현실(Storage reality): 지금 이 순간 목표 위치가 가득 찼는가, 절반인가, 아니면 존재하지도 않는가?
  3. 자원 상태(Resource state): 지게차가 폭주 상태인가? 플로우스루 레인은 비어 있는가?
  4. 화물 특성(Freight characteristics): 유통기한, 로트 요건, 혼합 팔레트.

정적 규칙은 네 번째만 봅니다. WES는 네 가지 모두를 봅니다.

플로우스루 구축 4단계

1단계: 위치 배정 전에 인바운드에서 목적지를 태깅하라

기존 흐름: 입고 → QC → WMS가 위치 배정 → 적재. 새로운 흐름: 입고 → WES가 목적지 계산 → 태깅(플로우스루 / replenishment-direct / store) → 태그대로 라우팅.

태깅 로직은 WES 의사결정 엔진 안에 있습니다. 시작용 템플릿은 다음과 같습니다.

  • 앞으로 48시간의 아웃바운드 수요가 인바운드 물량의 ≥80%를 커버한다 → 플로우스루
  • 수요는 있지만 커버율이 <80%이고, 피크 페이스 재고가 보충 트리거 이하이다 → replenishment-direct(피크 페이스로 직행)
  • 단기 수요가 없다 → store(일반 입고 규칙)

이 48시간 윈도우는 임의로 정한 게 아닙니다. 너무 짧으면 플로우스루 물량 자체가 나오지 않고, 너무 길면 예측이 불안정해져 화물이 스테이징에 쌓입니다. 저는 보통 고객사를 48시간으로 시작해서 2주간의 데이터를 보고 튜닝합니다. 상하이 3PL은 36시간에 안착했습니다. 하루에 주문 웨이브를 두 번 도는데, 36시간이면 정확히 세 개의 웨이브를 커버하거든요.

2단계: 플로우스루를 계층화하라 — 한 가지가 아니다

플로우스루는 세 가지 형태가 있으며, 비용과 리스크 프로파일이 크게 다릅니다.

형태 처리 방식 적합한 경우 주의점
풀팔레트 플로우스루 팔레트 통째로 인바운드에서 아웃바운드 스테이징으로 이동 대물량, 단일 SKU, 풀팔레트 출고 공간이 부족하면 스테이징 레인이 막힘
브레이크벌크 플로우스루 인바운드에서 팔레트를 분해해 주문별로 분류 다품종 SKU, 소량 배치, 이커머스 주문 브레이크벌크 인건비가 비쌈
보충 직행(replenishment-direct) 저장을 건너뛰고 피크 페이스로 직행 피크 페이스 재고 부족, 인바운드가 적시에 도착 피크 페이스 수용량이 제한적

의사결정 프레임워크는 단순한 2×2 매트릭스입니다. 가로축은 '인바운드 물량이 단기 수요와 얼마나 잘 맞는가', 세로축은 'SKU 집중도'입니다. 우상단(매칭 높음, SKU 집중) → 풀팔레트 플로우스루. 좌상단 → 브레이크벌크 플로우스루. 하단 절반 → 피크 페이스 확인: 들어가면 보충 직행, 아니면 저장.

WES 동적 입고 오케스트레이션 다이어그램

3단계: 누가 무엇을 맡는지 문서로 남겨라 — WES, WMS, 그리고 장비

이건 가동(go-live) 당일 밤 체크리스트에 넣고, 타협 없이 지킵니다. 목적지 결정은 WES, 위치 실행은 WMS, 물리적 이동은 MHE(컨베이어/AGVs)가 맡습니다. 세 계층을 인터페이스 명세에 명문화해 두면, 문제가 터졌을 때 로그를 보고 어느 계층이 깨졌는지 바로 알 수 있습니다.

핸드오프:

  1. WES가 ASN을 받으면 → 3초 안에 목적지 태그 + 목표(스테이징 레인 / 피크 페이스 / 미배정)를 반환
  2. 태그 = store → WMS가 기존 입고 규칙대로 위치 배정
  3. 태그 = flow-through → WES가 WMS를 완전히 우회해 지게차 단말이나 AGV 스케줄러에 이동 작업을 직접 하달
  4. 예외(목표가 가득 참, 주문 취소) → WES가 10초 안에 재계산, 새 목적지 발행, 기존 작업 자동 무효화

4번이 핵심입니다. 2024년 5월, 중국 남부의 한 뷰티 이커머스 창고: 플로우스루 화물이 스테이징에 앉아 있는데 고객이 주문의 30%를 취소했습니다. 재계산이 없으면 그 화물은 스테이징에서 썩습니다. 이들의 WES는 이송 중인 플로우스루를 10분마다 재스캔합니다. 수요가 사라지면 작업이 입고로 전환되고, 지게차가 다음 패스에 그 화물을 실어 나릅니다. 플로우스루 결정은 취소 가능(revocable)해야 합니다. 하드코딩된 규칙과 WES 오케스트레이션의 진짜 차이가 여기 있습니다.

4단계: 가동 후 세 가지 숫자를 보고 튜닝하라

  • 플로우스루 비율 = 플로우스루 팔레트 ÷ 전체 인바운드 팔레트. 건강한 수준은 보통 15%–35%입니다. 15% 미만이면 규칙이 너무 보수적인 것이고, 40%를 넘으면 저장해야 할 화물이 억지로 흘려보내지고 있는지 확인하십시오.
  • 플로우스루 체류 시간 = 플로우스루 화물이 아웃바운드 스테이징에 머무는 평균 시간. 24시간을 넘으면 백로그입니다. 수요 예측이 너무 낙관적이라는 뜻이니 임계값을 조이십시오.
  • 재핸들링 비율 = 플로우스루 화물 중 결국 저장 위치에 들어가 버린 비중. 10%를 넘으면 의사결정 품질이 낮다는 뜻입니다. 어느 데이터 소스가 거짓말하는지(주문, 재고, 웨이브 계획) 확인하십시오.

실제 현장의 실패 패턴 세 가지

실패 1: 플로우스루 구역의 물리적 분리가 없음. 2022년, 중국 북부의 한 자동차 부품 창고. 플로우스루 팔레트와 입고 대기 팔레트가 같은 인바운드 바닥을 썼고, 구분이라곤 바닥에 그어진 선뿐이었습니다. 바빠지면 기사들이 그 선을 무시했습니다. 플로우스루 화물이 저장 위치로 들어갔고, 저장행 화물이 아웃바운드로 끌려 나왔습니다. 일주일 내내 혼돈이었습니다. 교훈: 플로우스루 스테이징 구역은 물리적으로 분리되어야 합니다. 전용 도크 도어, 전용 위치 번호 체계, WES 내 전용 위치 그룹.

실패 2: 로트/유통기한 관리 화물을 무리하게 흘려보냄. 식품, 제약, 엄격한 FIFO가 필요한 품목. 플로우스루의 가장 큰 리스크는 로트 추적성을 깨뜨리는 것입니다. 로트 캡처가 끝나기 전에 화물이 출고되면, 시스템의 로트 기록이 현실과 어긋납니다. 제 규칙: 유통기한 민감 SKU는 기본적으로 플로우스루에서 제외합니다. 단, 로트 캡처가 인바운드 상류로 앞당겨졌고 WES가 로트 데이터를 실시간으로 읽을 수 있다면 예외입니다.

실패 3: 플로우스루를 KPI 목표로 만듦. 한 운영 이사가 플로우스루가 돈을 절약한다는 얘기를 듣고 '플로우스루 비율 ≥ 50%' KPI를 세웠습니다. 목표를 맞추느라 창고는 2주간 저장해야 할 화물까지 흘려보냈습니다. 아웃바운드 스테이징이 산이 되었고, 주말 재입고 작업을 위해 일용 인력을 고용했고, 한 달에 십만 달러 단위의 비용을 추가로 썼습니다. 플로우스루 비율은 결과(outcome) 지표이지 목표가 아닙니다. 목표는 총 핸들링 비용의 최소화입니다. 플로우스루는 지렛대 하나일 뿐, 목표가 아닙니다.

역발상: 터치 하나 더가 더 쌀 때도 있다

역발상을 하나 던져보겠습니다. 플로우스루가 많을수록 좋은 게 아닙니다. 가장 극단적인 반례: 팔레트당 40+ SKU로 처절하게 분절된 서적 이커머스 창고. 그들의 WES는 50%의 플로우스루 비율을 계산했지만, 브레이크벌크 플로우스루 인건비는 유닛당 약 $1.10이었던 반면 일반 입고+피킹 합계는 유닛당 약 $0.75 수준이었습니다. 플로우스루는 지게차 이동을 아끼지만, 브레이크벌크 플로우스루는 수작업 분류 인건비를 씁니다. 장부의 양쪽 모두를 계산해야 합니다.

수학은 단순합니다.

팔레트당 플로우스루 비용 = 브레이크벌크 인건비(있을 경우) + 분류 인건비(있을 경우) + 1회 이동 팔레트당 기존 비용 = 2회 이동 + 입고 인건비 + 피킹 인건비

왼쪽이 오른쪽의 85% 이하일 때만(15%의 안전 마진을 유지) 플로우스루가 진짜로 쌉니다. 서적 창고는 성수기 베스트셀러에만 풀팔레트 플로우스루를 유지하고, 브레이크벌크 플로우스루는 완전히 중단했습니다. 총비용이 12% 줄었습니다.

상하이 3PL 이야기로 돌아가 보겠습니다. 가동 3개월 후, 플로우스루 비율은 28%에 안착했고, 성수기 인바운드 백로그는 400+ 팔레트에서 150 미만으로 줄었으며, 지게차 교대조는 2개조에서 1.5개조로 줄었습니다.

WES 입고 최적화는 한 문장으로 정리됩니다. 화물이 도착하면, 어디에 넣을지 정하기 전에 어디로 가는지 먼저 물어보십시오. 이 순서를 맞추면 터치 하나를 절약합니다. 그 터치 뒤에 있던 인건비, 장비, 시간까지 함께요.

Lin Xiao, WMS 구현 컨설턴트 지음

영어판 번역본입니다. 내용이 다를 경우 영어판을 우선합니다.