카페24 운영자라면 엑셀 대량 업로드를 피할 수 없습니다. 상품 수가 수백 개를 넘어가면 관리자 화면에서 하나씩 고치는 건 불가능하고 재고 반영이나 진열 변경은 결국 엑셀 파일 업로드로 처리하게 됩니다. 그런데 이 업로드에는 문서만 봐서는 체감이 안 되는 규칙들이 있고 규칙을 어긴 파일은 통째로 거부되거나 더 나쁘게는 일부만 반영됩니다. 재고 반영 자동화를 구축하며 부딪힌 카페24 엑셀 업로드 규칙들을 자동화 관점에서 정리합니다.
규칙 1: 카페24 엑셀 업로드는 행수에 상한이 있다
업로드 파일은 한 번에 처리할 수 있는 행수에 상한이 있습니다. 상품이 많은 몰은 재고 반영 한 번에 수천 행이 나오므로, 파일을 1,000행 단위로 쪼개 여러 번 올려야 합니다. 손으로 하면 헤더 행을 매 파일에 복사하고 행 범위를 잘라 붙이고 파일명을 관리하는 지루한 작업이 반복됩니다.
자동화에서는 이 분할을 저장 단계에 내장하는 것이 답입니다. 우리가 만든 변환 프로그램은 결과를 저장할 때 헤더 포함 1,000행 상한에 맞춰 파일을 _1, _2 순번으로 자동 분할합니다. 사람은 생성된 파일들을 순서대로 올리기만 하면 됩니다.
규칙 2: 수식이 남은 파일은 사고를 만든다
엑셀에서 VLOOKUP으로 재고를 채운 뒤 그대로 저장해 올리면 문제가 됩니다. 값이 아니라 수식이 저장된 셀은 업로드 처리에서 기대와 다르게 읽히거나 거부됩니다. 그래서 실무자들은 "복사 후 값만 붙여넣기"로 수식을 지우는 단계를 거치는데, 이걸 잊는 순간이 곧 사고입니다.
프로그램 전환의 이점이 여기서 분명해집니다. 우리는 저장 직전에 모든 셀을 검사해 수식이 하나라도 발견되면 파일 생성을 중단하는 검증을 넣었습니다. 규칙을 사람의 기억이 아니라 코드의 확인 절차로 만들었습니다. 함수 파일 로직을 프로그램으로 옮기는 과정 전체는 VLOOKUP 업무 자동화에서 다뤘습니다.
규칙 3: 품목 양식과 상품 양식은 다른 파일이다
카페24에서 재고와 진열은 두 층위로 관리됩니다. 품목(사이즈·색상 조합) 단위의 진열 상태와 상품 단위의 진열 상태가 별도 양식으로 업로드됩니다. 재고를 반영하려면 품목 양식에서 품목별 진열을 갱신하고 상품수정 양식에서 상품 진열 여부를 함께 맞춰야 합니다.
두 파일이 어긋나면 증상이 미묘합니다. 품목은 전부 품절인데 상품이 진열 상태면 들어가서야 품절인 걸 아는 빈 상품이 되고 반대면 재고가 있는데 검색에 안 뜨는 상품이 됩니다. 우리는 품목 결과에서 상품 진열을 유도하는 규칙(소속 품목 중 하나라도 진열이면 상품 진열)을 코드로 묶어 두 파일이 항상 정합하게 생성되게 했습니다. 이 판정 로직의 상세와 실제로 겪은 예외 사례는 재고 연동 진열 자동화에서 이어집니다.
규칙 4: 업로드 파일에도 원본 관리가 필요하다
대량 업로드는 되돌리기 어렵습니다. 잘못된 파일을 올리면 수백 상품의 상태가 한 번에 바뀝니다. 그래서 업로드 자동화에는 두 가지 안전장치를 권합니다.
- 원본 불변: 변환 프로그램은 입력 파일(양식·재고표)을 절대 수정하지 않고 결과를 별도 폴더에 만듭니다. 문제가 생기면 입력을 다시 확인할 수 있습니다.
- 건별 리포트: 변환마다 몇 건이 매칭되고 몇 건이 미매칭인지 기록을 남깁니다. "매칭 0건"처럼 파일 조합이 잘못된 신호를 업로드 전에 잡을 수 있습니다. 리포트는 일괄 처리에서도 건별로 남아 여러 파일 중 어느 건이 실패했는지 바로 찾을 수 있습니다.
| 함정 | 증상 | 자동화 대응 |
|---|---|---|
| 행수 상한 초과 | 업로드 거부 | 1,000행 자동 분할 |
| 수식 잔존 | 거부 또는 오반영 | 저장 전 전셀 수식 검사 |
| 품목·상품 양식 불일치 | 빈 상품 노출, 검색 누락 | 두 파일 동시 생성 · 정합 규칙 |
| 잘못된 파일 조합 | 대량 오반영 | 매칭 통계 · 미매칭 경고 |
이 규칙들을 전부 흡수한 실제 구축 사례는 카페24 재고 업로드 자동화에서 볼 수 있습니다. 업로드 이전 단계, 즉 공급사마다 다른 재고표를 읽는 문제는 재고 표기 정규화 설계에서 다룹니다.
자주 묻는 질문
카페24 엑셀 업로드 파일은 왜 나눠서 올려야 하나요?
한 번에 처리되는 행수에 상한이 있기 때문입니다. 상한을 넘는 파일은 업로드가 거부되므로, 헤더를 유지한 채 1,000행 단위로 분할해 순서대로 올려야 합니다. 자동화 도구라면 저장 단계에서 분할까지 끝내는 것이 안전합니다.
업로드 전에 수식을 꼭 지워야 하나요?
네. 값이 아닌 수식이 남은 셀은 업로드에서 기대대로 처리되지 않습니다. 수작업이라면 "복사 후 값만 붙여넣기"를 습관화해야 하고 프로그램이라면 저장 전에 수식 잔존을 검사해 파일 생성 자체를 막는 검증을 넣는 것이 좋습니다.
품목 진열과 상품 진열은 무엇이 다른가요?
품목은 사이즈·색상 같은 옵션 조합 단위이고 상품은 그 품목들을 묶는 단위입니다. 진열 상태가 각각 관리되므로 재고 반영 시 두 양식을 함께 갱신해야 하며 보통 "품목 중 하나라도 재고가 있으면 상품은 진열"이라는 규칙으로 정합을 맞춥니다.
업로드용 파일에서 재고 수량도 함께 바꿔야 하나요?
목적에 따라 다릅니다. 우리 사례는 재고 유무에 따른 진열 상태만 갱신하고 재고 수량 컬럼은 원본값을 유지했습니다. 수량까지 자동으로 바꾸면 공급사 수량 표기의 신뢰도 문제가 그대로 유입되므로 확실한 신호(진열 여부)만 자동화하는 편이 안전했습니다.
대량 업로드 실수를 줄이는 가장 효과적인 방법은 뭔가요?
업로드 전 검증을 자동화하는 것입니다. 행수·수식·매칭 통계를 사람이 눈으로 확인하는 대신 도구가 검사하게 하면, 실수가 "주의할 일"이 아니라 "일어날 수 없는 일"이 됩니다.