2023년 어느 화요일 아침, 전화가 울렸다. 로스앤젤레스에서 보관하던 펫용품 브랜드가 창고 청구서에 이의를 제기해 왔다. 3개월 연속이었다. 영업 담당은 고객이 무리한 요구를 한다고 했고, 운영팀은 시스템이 틀릴 리가 없다고 했다. 고객은 화물을 다른 3PL로 옮기겠다고 위협했다.

아무도 인정하고 싶어 하지 않은 사실이 있었다. 아무도 계산을 틀리게 하지 않았다. 모두 '다른 계산'을 했을 뿐이다.

나는 세 당사자를 한 통화에 모아 청구서를 한 줄씩 짚었다. 40분 후, 진실이 드러났다. 고객은 계약 체결 당시의 요금표로 계산하고 있었다. 우리는 1월에 요금을 인상했고 이메일로 통지했지만, 서면 확인은 받지 못했다. 그리고 보관료에 대해서는 고객은 팔레트 수 × 일수로 계산한 반면, 우리 시스템은 점유 로케이션 수 × 일수로 청구했다. 고객 화물은 하프 팔레트로 출고되는 경우가 많아, 한 로케이션에 하프 팔레트 하나가 놓이는 식이라 숫자가 맞을 리가 없었다. 세 당사자, 세 가지 알고리즘, 악역은 없었다.

그 뒤로 나는 규칙을 만들었다. 모든 청구 분쟁은 먼저 프로세스를 돌리고, 누가 옳은지는 그다음에 따진다. 프로세스는 이렇다.

계산기에 손 대기 전에 먼저 버전을 맞추세요

분쟁 청구서가 도착하면 스프레드시트를 열지 마세요. 먼저 세 가지를 확인하세요. 이 청구서가 어느 버전의 요금표를 따르는지, 그 버전의 적용 시작일이 언제인지, 그리고 청구 주기가 달력 월인지 정산 월인지.

나는 이 단계에서만 죽는 분쟁을 너무 많이 봤다. 고객은 옛 요금표로 계산하고, 창고는 새 요금표로 청구한다. 그러면 차액 전부는 서면으로 확인되지 않은 인상분이다. 아니면 고객은 달력 월로 세고 창고는 26일부터 25일까지로 청구한다. 5~6일의 어긋남이 생기고, 숫자는 절대 맞지 않는다. 버전과 주기를 먼저 맞추면 분쟁의 절반은 그 자리에서 증발한다.

관련된 함정이 하나 더 있다. '통지했다'지만 '합의받지 못한' 요금 인상이다. 아무도 답장하지 않은 이메일은 합의가 아니다. 창고를 운영한다면 상대방 서명을 받아 두세요. 고객이라면 모든 버전의 요금표를 적용 시작일과 함께 보관하세요. 계약 체결일에 서랍에 넣은 요금표는 두 번의 인상을 놓치고 있을지 모른다.

청구서를 네 개의 바구니로 나누세요

창고 청구서는 사실 네 장의 청구서가 스테이플로 묶인 것이다. 보관료, 하역료(입고와 출고), 부가가치 서비스, 예외 과금. 합계로 논쟁하지 마세요. 나눠서 바구니마다 짚으세요.

  • 보관료: 단위를 확인하세요. 팔레트 × 일수, 로케이션 × 일수, 아니면 평방피트 × 월? 분쟁 1위 발생 구역이다. 영업 통화에서 누가 기억한 내용이 아니라, 요금표와 한 글자씩 대조하세요.
  • 하역료: 입고는 입고 건당인가 팔레트당인가? 출고는 단위당인가 주문당인가? 긴급 주문은 별도 행으로 청구되는가?
  • 부가가치 서비스: 라벨링, 재포장, 검품. 실적으로 청구되므로 작업 지시서를 꺼내 대조하세요.
  • 예외 과금: 체화, 시간 외 대기, 재검증 수수료. 합의한 기억이 없는 과금들이다. 하지만 기록이 있고 통지되었다면 내야 한다. 가장 감정을 일으키고 가장 돈이 안 되는 바구니다.

펫용품 고객 이야기로 돌아가자. 차액 내역은 이렇다.

항목 고객의 계산 창고의 계산 월 차액
보관료 280 팔레트일 310 로케이션일 ~$900
긴급 출고 수수료 미계상(그 행이 있는지 몰랐다) 20건의 긴급 주문을 별도 청구 ~$1,100
요금표 버전 옛 요금표 새 요금(1월에 인상) ~$250

유통센터 통로에서 사이클 카운트를 수행하는 창고 작업자

월 약 $2,250. 고객이 이의를 제기했던 금액과 거의 정확히 일치했다. 테이블 위의 숫자가 논쟁을 끝냈다. 우리는 과다 청구하지 않았다. 고객이 3개월간 잘못된 알고리즘으로 계산해 왔을 뿐이다. 그리고 직관에 반하는 점은 이것이다. 가장 시끄러운 청구 분쟁은 계산 실수 때문인 경우가 드물다. 처음부터 계산 방식에 합의하지 못한 두 당사자 때문이다. 시스템의 계산 실수는 사람이 방법론을 잘못 기억하는 것보다 훨씬 드물다.

증거가 말하게 하고, 규칙을 문서로 남기세요

방법론이 맞으면 나머지는 증거 싸움이다. 우리 쪽은 시스템 기록을 가져온다. 재고 스냅샷, 입고, 출고, 작업 지시서. 고객은 자기 장부를 가져온다. 나란히 놓고 보면 진실은 대개 몇 분 안에 분명해진다.

정산은 숫자의 문제가 아니라 신뢰의 문제다. 내 규칙은 단순하다. 우리가 틀렸다면 그 자리에서 인정하고, 차액은 다음 달 청구서에 크레딧으로 반영한다. 질질 끌지 않는다. 고객이 방법론을 오해했다면 올바른 계산을 1페이지로 정리하고, 양측이 서명해서 요금표의 첨부 문서로 만든다. 실수는 빨리 인정하고, 규칙은 더 빨리 문서화하라. 나는 이 교훈을 비싼 수업료를 내고, 한 번이 아니라 여러 번 배웠다.

그리고 솔직히 짚고 넘어갈 만한 트레이드오프가 있다. 더 자세하다고 항상 좋은 것은 아니다. 대형 고객에게는 한 줄씩 리뷰에 시간을 들일 가치가 있다. 중소 규모에게는 차이 임계값이 더 싸다. 예컨대 월 청구액의 3% 이내는 간이 승인으로 통과시키고, 더 큰 차이만 심층 분석하는 식이다. 정산 자체에도 비용이 든다. CS와 운영 담당자들의 시간은 공짜가 아니다. 세밀하면 정확하지만 비싸고, 거칠면 싸지만 지뢰를 묻는다. 임계값이 균형점이며, 흐름에 맡기지 말고 의도적으로 정해야 한다.

마지막으로 한 가지. 분쟁이 해결되면 월 정산을 습관으로 만드세요. 이벤트로 만들지 마세요. 우리의 현재 관행은 청구서마다 5영업일 이내에 양측이 같은 정산 템플릿을 함께 확인하는 것이다. 문제는 그 달에 해결한다. 분기 말까지 쌓아 두지 않는다. 청구 분쟁은 묵을수록 썩는다. 기록이 맞지 않게 되고, 기억이 흐려지고, 몇 달이 지나면 아무도 진실을 재구성할 수 없다.

그러니 다음에 고객이 "이 청구서가 틀렸다"고 하면 당황하지 마세요. 먼저 질문 하나만 하세요. 보고 계신 요금표는 어느 버전인가요?

Lao Mi, 공급망 베테랑(20년) 지음

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