아침 6시 반이었다. 사무실에 들어선 지 얼마 안 돼 메일이 왔다 — 최대 고객의 품질 디렉터가 지난 9월 출하의 로스 상세를 필요로 했다. 로트 번호, 로케이션, 누가 만졌는지, 전부. "문제없습니다" 하고 새 WMS를 열었는데 속이 철렁했다. 구 시스템에서 이전할 때, 과거 트랜잭션 데이터는 알 수 없는 사내 약어가 잔뜩 박힌 CSV 더미로 나왔다. 로트 계보는 끊겼다 — 어느 로트가, 언제 입고돼, 어디에 보관됐고, 누가 픽했는지, 하나도 맞출 수 없었다. 그때 깨달았다. 선정 때는 모두가 시스템이 뭘 할 수 있는지 묻는다. SaaS WMS를 떠날 때 자기 데이터가 누구 것인지를 묻는 사람은 아무도 없다. 창고에서는 더 단순하게 말한다 — 자기 집 열쇠를 남에게 쥐여주는 거라고.

갈아타는 날이야말로 WMS 데이터 주인을 아는 날이다

2022년 말, 우리 DC는 SaaS WMS 업체를 갈아탔다. 인랜드 엠파이어의 3PL — 약 180,000평방피트, 피크 때 하루 약 3,000오더, 현장에 200명. 선정에 3개월 걸렸다. 가격 협상하고, 데모 5라운드를 견디고, 고라이브 날짜를 확정했다. 얘기 안 한 건 탈출뿐이었다. 계약서의 데이터 익스포트 관련 문구는 딱 한 줄. "데이터 익스포트 서비스는 합리적인 방법으로 제공하며, 요금은 별도 정함." 아무도 눈 하나 깜짝 안 했다. 이사 가는 날 나갈 생각을 하는 놈이 어디 있나?

2023년 1분기, 계약이 만료됐고 갱신 안 했다. 이전 시간이다. 마스터 데이터는 잘 나왔다 — 품목, 로케이션, 고객, 문제없음. 하지만 6년 치 재고 트랜잭션 — 입고, 격납, 이동, 픽, 순환실사 조정 — 은 벤더 사내 속어가 컬럼명인 생 CSV에 데이터 사전 없이 나왔다. 더 나쁜 건, 로트 계보가 끊겼다는 거다. 입고 도크에서 픽 슬롯, 출하까지 로트 추적 불가.

그리고 그 아침이 왔다. 고객 감사가 2023년 9월 3개 SKU의 로스 상세를 요구했고, 400개가 넘는 차이가 있었는데, 증거 체인을 못 냈다. 어떻게 했나? 3명, 꼬박 3주, 종이 기록을 파고, 메일을 대조하고, 기억으로 이동을 재구성하고, 로케이션별로. 솔직히 말하겠다 — 그 3주 동안 매일 아침 부끄러워서 사무실에 들어갔다. 데이터는 도둑맞은 게 아니다. 계약서의 모호한 한 문장으로, 우리가 직접 넘긴 거다.

동료는 같은 수업료를 거의 2만 달러 냈다

친구가 폰태나에서 우리 절반쯤 되는 이커머스 DC를 한다. 2023년 여름, 시스템을 갈아탔는데 구 벤더가 목을 잡았다. "물론 데이터 익스포트 해드립니다 — 저희 표준 프로페셔널 서비스 요금으로요." 견적: 25,000달러, 엔지니어는 하루 800달러, 예상 15일. 계산해봐라 — 자기 데이터를 되찾는 데 4만 달러 가까이. 계약서에는 "합리적인 요금"이라고 있었다. 누구에게 합리적인가? 두 달을 다퉜다. 18,000달러까지 깎았지만, 고라이브는 6주 미뤄졌다. 6주, 피크 직전이다. 4분기에 6주가 뭘 의미하는지 알 거다.

이제는 맥주 마시며 이 얘기를 하는데, 매번 같은 불편한 진실에 도달한다. SaaS를 살 때 소프트웨어를 빌리는 줄 안다. 진짜로 빌리는 건 바깥에서만 잠그는 문이다. 선정 때 영업은 기능으로 눈을 현혹한다. 구축팀은 고라이브를 재촉한다. 이혼 서류에 사인하라고 일깨워주는 사람은 아무도 없다. 나가고 싶어질 때쯤이면, 데이터 양육권을 협상하지 않았다는 걸 깨닫는다.

"전부 익스포트해라, 5년이고 7년이고"라는 사람도 있다. 솔직한 진실? 비용 나름이다. 덤프가 클수록 스키마 매핑은 어렵고, 컨설턴트 청구서는 높아진다. 사내에서 숫자를 뽑았다. 6년 치 트랜잭션 스키마 재구축, 외부 컨설턴트는 30,000~40,000달러를 불렀고 — 로트 체인이 재구축 가능하다는 보장은 못했다. 한편 세무 당국이나 고객 감사는 2~3년 전으로는 거의 안 간다. 그래서 우리의 트레이드오프는 이렇다, 의도적으로. 마스터 데이터 전부 + 3년 치 트랜잭션 + 로트 계보는 별도로 익스포트해 검증. 절반의 비용으로, 전부 감사 가능. 많다고 좋은 게 아니다 — 검증 가능하고 충분한 게 좋다.

창고 데이터 시스템이 사는 서버실

내 데이터는 누구 것인가: 이제 모든 계약에서 요구하는 5개 조항

이제 우리가 맺는 계약은 전부 법무와 IT를 함께 거치고, 이 다섯 조항은 양보 불가다.

1. 소유권은 본문에, 부속서가 아니라. "고객 데이터의 소유권은 모두 고객에게 귀속된다" — 사용 허락이 아니라 소유권이다. 파생 데이터도 포함해라. 리포트, 집계 지표, 네 데이터로 그들의 알고리즘이 만든 모든 것. 까다로워 보이지만, 틀어졌을 때 기댈 문장은 이거다.

2. 익스포트 형식과 스키마를 서면으로. 완전한 데이터 사전을 요구해라. 필드명, 타입, 의미, 테이블 간 관계. 최소 CSV로 익스포트하고, 관계 구조를 문서화. 형식만으론 부족하다 — 우리는 매년 1월에 풀 익스포트 훈련을 한다. 익스포트하고, 열어보고, 로트를 맞춰본다. 반나절 일이다. 작년 1월 첫 훈련에서 진짜 문제를 잡았다. 벤더 업그레이드 후 순환실사 조정 테이블에서 필드 하나가 사라져 있었다. IT가 그 자리에서 고치게 했다. 그 훈련이 없었으면 이전 당일에 알았을 거다. 너무 늦다.

3. 전환 지원 요금에 상한을. 상한을 두거나, 연간 구독료의 비율에 연동시켜라. "합리적인 요금은 별도 정함"을 남기지 마라. 기억해라. 협상력이 가장 셀 때는 계약 전이다.

4. 해지 후 데이터 보관. 계약서에는 해지 후 최소 90일간 데이터가 서버에 남고, 그 기간 중 언제든 익스포트 가능하며, 삭제에는 네 서면 확인이 필요하다고 적어둬라. 이사 간 다음 주에 데이터베이스를 날리게 두지 마라.

5. 셀프서비스 API 익스포트 권리. 계약 기간 중에는 네 데이터를 전부 스스로 API로 뽑을 수 있어야 한다 — 티켓도 애원도 없이. 많은 시스템은 API로 테이블 일부만 노출한다. 선정 때 API 문서를 받아 테이블별로 체크해라. 오더, 재고 트랜잭션, 로트, 순환실사. 하나도 빼먹지 말고.

솔직한 계산은 이렇다.

접근법 비용 결과
5개 조항을 미리 협상 1~2주 연장, 법무 비용 수천 달러 내 조건으로 익스포트, 드라마 없음
건너뛰고 탈출 때 협상 익스포트 요금 25,000달러+, 6주 지연 피크 전 6주 — 계산 못 할 손실
데이터를 잃고 재구축 업체 고용 컨설팅 30,000~40,000달러 로트 체인은 영원히 재구축 못 할 수도

여러분, 선정 때는 영업이 밥을 사고 데모는 아름답다. 그건 다 정상이다. 하지만 서명 전에 계약서의 데이터 장을 펴고 세 가지를 물어봐라. 누구 것인가, 어떻게 꺼내는가, 나가는 데 얼마 드는가? 영업이 머뭇거리면 실제로 커밋할 수 있는 사람을 데려오게 해라. 그 한 페이지가 3년 치 마음의 평화에 값한다.

Chen Feng, 창고 운영 매니저 지음

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