자판기 노선 사업은 겉으로 보기에 속기 쉬울 정도로 간단해 보입니다. 휴게실에 기계를 설치하고, 과자와 음료를 채워 넣은 뒤, 몇 주마다 돌아와서 지폐와 동전을 수거하기만 하면 됩니다. 장부 관리도 그만큼 간단해 보이지만, 실제로는 그렇지 않습니다.
대부분의 초보 운영자들이 뼈아프게 깨닫는 불편한 진실이 있습니다. 한 대당 월 300달러의 매출을 올리는 기계 20대를 운영하는 것은 월 매출 6,000달러짜리 사업 하나를 운영하는 것이 아닙니다. 그것은 20개의 별개 마이크로 비즈니스이며, 수익이 나는 기계들이 운영을 유지하는 동안 일부는 조용히 손실을 보고 있을 수 있습니다. 기계 단위의 장부가 없다면 어떤 것이 수익이 나고 어떤 것이 손실이 나는지 알 수 없습니다. 입금 내역과 코스트코 영수증만 보고 그 사이의 모든 것이 수익이라고 가정하기 쉽지만, 실제로는 그런 경우가 드뭅니다.
이 가이드는 실제 노선 장부 관리가 어떤 모습인지 설명합니다. 원격 측정 데이터(Telemetry)를 바탕으로 현금 및 카드 수거액을 정산하는 방법, 기계별 매출원가 및 입점 수수료를 추적하는 방법, 그리고 모든 개별 위치의 실제 공헌 이익(Contribution Margin)을 측정하여 어떤 기계를 그대로 둘지, 최적화할지, 아니면 철수할지 결정하는 방법을 다룹니다.
왜 사업별 장부가 아니라 기계별 장부인가
노선 전체에 대한 통합 손익계산서는 세금 신고용으로는 괜찮습니다. 하지만 비즈니스를 운영하는 데는 쓸모가 없습니다. 자판기 사업의 경제성은 위치에 따라 크게 달라지는 두 가지 비용에 의해 좌우되기 때문입니다.
- 매출원가 (COGS) — 코스트코에서 구매하는지, 직거래 유통업체에서 구매하는지, 혹은 음료 공급업체 노선에서 직접 구매하는지에 따라 통상 총매출의 40%에서 60% 사이입니다.
- 입점 수수료 (Site commission) — 해당 장소를 사용하는 대가로 건물주에게 지불하는 비율입니다. 보통 총매출의 5%에서 25% 사이지만, 폐쇄형 오피스 단지는 무료로 공간을 제공하기도 하는 반면, 붐비는 병원 식당은 25%를 떼어가기도 합니다.
여기에 카드 결제 수수료(카드 거래의 5%~10%), 원격 측정 구독료, 각 지점을 방문하는 데 드는 연료비와 시간, 그리고 기계의 연간 감가상각비를 더하면, "월 400달러" 매출을 올리는 기계의 운영자 순이익률은 마이너스에서 40%까지 널뛰게 됩니다. 통합 손익계산서에서는 이러한 변동을 볼 수 없습니다. 기계 단위의 장부에서만 확인할 수 있습니다.
이 가이드의 목표는 계정 과목 체계(Chart of Accounts), 정산 루틴, 그리고 공헌 이익 보고서 구조를 제공하여 노선의 모든 자산에 대해 다음과 같은 간단한 질문에 답할 수 있도록 하는 것입니다. "이 기계가 서비스를 위해 들어가는 기름값을 감당하고 있는가?"
기계를 중심으로 계정 과목 체계 구축하기
대부분의 장부 시스템은 기본적으로 "매출", "매출원가", "연료비"와 같은 카테고리별로 수입과 지출을 정리합니다. 하지만 노선 사업에는 적절하지 않은 프레임입니다. 올바른 방법은 기계(또는 한 지점에 여러 대가 있는 경우 위치)를 기본 코스트 센터로 만드는 것입니다. 카테고리는 그 하위에 위치합니다.
소규모 노선을 위한 실제 계정 과목 체계는 대략 다음과 같습니다:
- 수익 (Income)
- 자판기 매출 — 현금
- 자판기 매출 — 비현금 (카드 / 모바일 지갑)
- 환불
- 매출원가 (Cost of Goods Sold)
- 스낵류
- 음료류
- 동전 및 지폐 시재금 (동전 부족 시 소모분)
- 폐기물 / 유통기한 경과 재고
- 직접 운영 비용 (Direct Operating Expenses)
- 지급 입점 수수료
- 카드 결제 수수료
- 원격 측정 / DEX 구독료
- 셀룰러 및 통신비
- 수리 및 유지보수
- 부품
- 간접 / 노선 비용 (Indirect / Route Expenses)
- 차량 연료비
- 차량 마일리지 정산
- 창고 / 차고 임대료
- 보험료
- 장부 기입 및 세무 보고 준비
- 자본 (Capital)
- 기계 감가상각 (배분)
- 장비 수리 (자본화)
모든 항목에 machine_id(또는 location_id)와 route_date를 태그로 지정하세요. 스프레드시트에서는 기계, 날짜, 카테고리, 금액을 위한 각각의 열이 필요함을 의미합니다. Beancount와 같은 텍스트 기반 장부에서는 계정 하위 세그먼트(Income:Sales:Cash:M-014)를 사용하거나, 더 유연하게 메타데이터 태그(#machine-014)를 사용하여 계정 트리를 관리 가능하게 유지하면서 기계별로 데이터를 추출할 수 있습니다.
도구에 상관없이 원칙은 동일합니다. 기계 태그가 없는 거래는 규칙이 아니라 예외가 되어야 합니다.
매번 서비스 방문 시 원격 측정 데이터와 현금 대조 정산하기
자판기 운영자가 가질 수 있는 가장 중요한 습관은 매번 서비스 방문 시 현금 가방의 금액과 계측기 수치를 대조하는 것입니다. 이를 통해 도난, 지폐 인식기 걸림, 불량 동전 메커니즘, 그리고 생각보다 자주 발생하는 장부 기입 실수를 잡아낼 수 있습니다.
현대적인 자판기는 DEX(Data Exchange)라는 프로토콜을 사용하여 각 품목의 판매량, 총 수거 현금, 총 카드 거래액, 총 무료 판매량 등의 감사 카운터를 노출합니다. Nayax, Cantaloupe, 365 Retail Markets, Parlevel 등과 같은 원격 측정 장치는 셀룰러 연결을 통해 DEX 데이터를 읽고 이를 어디서든 볼 수 있는 대시보드로 전송합니다.
매 방문 시 깔끔한 정산 과정은 다음과 같습니다:
- 마지막 서비스 이후의 **DEX 현금 카운터 증분(Delta)**을 읽습니다. 이를 "예상 현금"이라 합니다.
- 기계에서 지폐와 동전을 꺼냅니다. 금액을 확인합니다. 이를 "실제 현금"이라 합니다.
- 오차는 0이어야 합니다. 지속적인 양의 오차(DEX 수치보다 현금이 많음)는 대개 기계에서 테스트 모드가 실행된 채로 제품이 나갔음을 의미합니다. 음의 오차(DEX 수치보다 현금이 적음)는 지폐 부족, 인식기 걸림 또는 도난을 의미합니다.
- 예상 현금과 실제 현금을 모두 기록합니다. 오차는 기계 태그가 지정된 별도의 계정(예: 현금 과부족)에 기입합니다. 단순히 매출에 포함시켜 버리지 마세요.
- 비현금(카드) 부분도 같은 방식으로 정산합니다. DEX 비현금 카운터 증분은 카드 프로세서에서 해당 기계로 입금되는 금액(수수료 차감 전)과 일치해야 합니다.
장기적으로 건강한 기계는 누적 현금 과부족 잔액이 거의 0에 가깝습니다. 특정 기계에서 만성적인 부족이 발생하기 시작하면, 그것은 지폐 인식기를 교체하거나, 노선 기사를 점검하거나, 입점처 담당자와 진지한 대화를 나눠야 한다는 신호입니다. 기계별 정산 없이는 이러한 신호를 절대 포착할 수 없습니다.
사이트 수수료의 올바른 기록 방법
사이트 수수료(장소 수수료)는 다른 어떤 비용 항목보다 자판기 운영자들을 더 많이 곤혹스럽게 만듭니다. 가장 흔한 실수는 입금액에서 수수료를 상계 처리하는 것입니다. 예를 들어, 장소 소유주가 15%를 가져간 후 400달러의 총 매출을 340달러의 순 매출로 기록하는 식입니다. 이는 판매세 신고에 필요한 총 매출 라인을 숨기며, 매출원가(COGS) 비율을 실제보다 더 나빠 보이게 만듭니다.
올바른 방법은 다음과 같습니다:
- 총 매출은 수집된 전체 소매 가격 그대로 자판기 매출(Vending Sales) 계정으로 보냅니다.
- 지급된 수수료는 동일한 자판기로 태그를 지정하여 사이트 수수료 비용(Site Commissions Paid) 계정에 비용으로 처리합니다.
- 수수료를 매달 수표나 ACH로 지급하는 경우, 실제 지급이 나중에 이루어지더라도 해당 월의 판매량을 기준으로 매월 말에 수수료를 발생주의로 계상(accrue)하세요. 그래야 자판기 단위의 손익(P&L)을 발생주의 기준으로 유지할 수 있으며, 12월의 판매가 1월의 비용으로 나타나는 것을 방지할 수 있습니다.
매출 비례 방식의 경우 계산은 간단합니다. 해당 기간의 총 매출에 계약된 요율을 곱하면 됩니다. 정액제(Flat-fee) 계약의 경우 비용을 해당 월로 나눕니다. 계단식 또는 수익 배분 계약의 경우, 계약서 스캔본 옆의 스프레드시트에 공식을 적어두어 매번 기억에 의존해 다시 계산할 필요가 없도록 하세요.
한 가지 더 유의할 점은, 일부 지역에서는 사이트에 지급한 수수료를 납부할 판매세에서 공제할 수 없습니다. 판매세는 수수료 차감 후의 순액이 아니라 총 소매 가격을 기준으로 계산됩니다. 이 둘을 혼동하면 감사관이 발견할 때까지 수년 동안 판매세를 과소 납부하게 될 수 있습니다.
자판기 단위로 관리하는 매출원가(COGS)
매출원가(COGS)는 자판기 운영에서 가장 큰 단일 비용이며, 운영자들이 가장 자주 추측으로 처리하는 항목이기도 합니다. 루트 운영에서 이를 깔끔하게 추적하는 방법은 기기에 제품을 채우는 재입고 시점마다 원가를 산정하는 것입니다.
실무적인 워크플로우는 다음과 같습니다:
- 창고에서 제품을 꺼내 트럭에 싣습니다. 무엇을 가져가는지 기록합니다. 이는 "창고에서 트럭으로(warehouse-to-truck)"의 재고 이동입니다.
- 각 자판기에서 트럭에 있는 제품을 재입고합니다. 각 기기에 무엇을 싣는지 기록합니다. 이는 "트럭에서 자판기로(truck-to-machine)"의 이동입니다.
- 구매 인보이스상의 최근 평균 도매가를 사용하여 각 품목의 원가를 산정합니다. (환급받을 수 없는 경우 도매 구매 시 지불한 판매세도 포함합니다.)
- 해당 서비스 날짜에 해당 자판기로 태그를 지정하여 적재된 가치를 **매출원가(COGS)**로 기록합니다.
시간이 지남에 따라 창고, 트럭, 그리고 각 자판기는 모두 재고 잔액을 가지게 됩니다. 보통 분기별로 실시하는 정기적인 실사(Physical count)를 통해 장부 잔액과 실재고를 대조하여 조정(true up)하며, 부족분은 해당 사유가 발생한 위치에 **폐기/감모(Spoilage / Shrinkage)**로 배정합니다.
아주 작은 1인 운영자의 경우 더 간단한 대용치(proxy)도 허용됩니다. 자판기에서 수거한 현금이 일정한 비율(예: 매출원가 50%)로 제품을 소비했다고 가정하는 것입니다. 이 방법은 빠르고 유용한 마진 수치를 제공합니다. 다만, 이 방식으로는 3달러에 팔리는 4달러짜리 단백질 바를 채워 넣고 있는 기기를 감지할 수 없으며, 실제 재고 감모를 파악하는 것이 불가능하다는 점을 이해해야 합니다. 대부분의 운영자가 첫해 안에 재입고별 원가 산정 방식으로 전환하는 이유가 바로 이것입니다.
비현금 결제: 결제 대행사 정산액은 매출이 아닙니다
자판기에 신용카드나 모바일 결제를 도입할 때, 은행에 입금되는 금액은 매출이 아닙니다. 그것은 매출에서 결제 수수료, 차지백(지급 거절), 결제 대행사가 보유하는 유보금(rolling reserves) 등을 차감한 금액입니다. 입금액을 그대로 수익으로 기록하는 것은 현대적인 자판기 회계에서 가장 흔한 오류 중 하나입니다.
각 결제 정산에 대한 깔끔한 분개 방식은 다음과 같습니다:
- 차변(Debit) 은행 계좌 (실제로 수령한 입금액)
- 차변(Debit) 비현금 결제 수수료 (원천징수된 수수료)
- 대변(Credit) 자판기 매출 — 비현금 (DEX 데이터와 일치하는 총 비현금 매출액)
여러 대의 자판기를 포함하는 일괄 입금을 받는 경우, DEX 비현금 데이터를 사용하여 각 기기에 비례적으로 분개하세요. 대부분의 텔레메트리 플랫폼에서 이 내역을 내보낼 수 있습니다. 지원되지 않는다면 기간별, 기기별로 한 줄씩 정리된 간단한 스프레드시트만으로도 충분합니다.
차지백과 환불에도 동일한 논리가 적용됩니다. 이는 단순히 입금액이 줄어드는 것이 아니라 마이너스 매출입니다. 이를 별도 계정으로 추적하여 각 기기에서 얼마나 자주 발생하는지 확인하세요. 동일한 장소에서 반복되는 차지백은 거의 항상 동전 반환기 고장이나 가격 설정 오류를 의미합니다.
자판기별 실제 이익 측정하기
장부가 자판기별로 정리되면 모든 운영자가 실제로 알고 싶어 하는 수치인 **자판기당 월간 공헌 이익(contribution margin)**을 계산할 수 있습니다. 그 공식은 다음과 같습니다:
공헌 이익 = 총 매출 − 매출원가(COGS) − 사이트 수수료 − 비현금 수수료 − 직접 유지보수 및 부품비
이 공식에 포함되지 않는 항목에 주의하세요: 연료비, 보험료, 본인 급여, 트럭 할부금 등입니다. 이들은 루트(노선) 단위의 비용입니다. 공헌 이익의 목적은 해당 기기가 존재하기 때문에 발생하는 이익 부분만을 분리해내는 것입니다. 공헌 이익이 마이너스라면, 그 기기는 당신이 운전해서 가기도 전에 이미 가치를 파괴하고 있는 것입니다. 즉시 철수하세요.
그다음 루트 비용 배분(route allocation) 단계를 추가합니다. 각 기기를 서비스하는 데 한 달에 몇 시간이 걸리는지 추정하고, 여기에 제반 비용이 포함된 시간당 인건비(연료, 차량 마모, 운전기사에게 지급할 수준의 본인 시간 가치 등)를 곱하여 차감합니다. 남은 금액이 자판기 비즈니스에서 "기기별 실제 순이익"에 가장 가까운 수치입니다.
유용한 경험 법칙: 한 달 공헌 이익이 2시간분의 루트 비용에도 미치지 못하는 기기는 이전하거나 철거해야 할 후보입니다. 이 보고서를 분기별로 실행하는 운영자들은 보통 매년 전체 기기의 10~20%를 정리하며, 그 결과 남은 루트는 이전보다 훨씬 더 높은 수익성을 갖게 됩니다.
판매세 및 소득세: 4월까지 기다리지 마세요
자판기 판매세 규정은 주(state)마다 다르며 놀라울 정도로 일관성이 없습니다. 일부 주에서는 모든 자판기 판매에 대해 표준 세율을 적용합니다. 어떤 곳은 일정 가격 이하의 식품 품목에 대해 세금을 면제하기도 합니다. 일반 소매 세율과 다른 특별 "자판기 판매세" 세율을 적용하는 주도 있습니다. 계약 내용에 따라 운영자(본인)가 납세 의무자가 되기도 하고, 장소 소유주가 책임을 지기도 합니다.
거주하는 주와 상관없이 장부에 기록해야 할 사항은 다음과 같습니다:
- 기기별로 구분된 과세 매출과 면세 매출
- 징수된 판매세(수익이 아닌 부채로 계상)
- 기기별 지역 관할 구역 코드(A 시와 B 시에 있는 기기의 세율이 다를 수 있기 때문)
연방 소득세의 경우, 자판기는 일반적으로 MACRS(수정 가속 상각법)에 따라 5~7년에 걸쳐 감가상각되거나, 요건을 충족하는 경우 Section 179에 따라 구매 연도에 전액 비용 처리가 가능합니다. 노선 관리를 위한 주행거리는 IRS 표준 마일리지 요율에 따라 공제 가능하지만, 반드시 동시 기록부(contemporaneous log)를 작성해야 합니다. 연말에 "운전을 많이 했다"는 식의 모호한 추정치는 세무 조사 시 거부됩니다. 원격 측정(Telemetry) 구독료, 비현금 결제 수수료, 수리비, 보험료 및 장소 수수료는 모두 일반적인 공제 대상 비용입니다.
첫날부터 정확하게 장부를 정리하면 세금 신고 시즌은 당황스러운 3월의 주말이 아닌 30분 내외의 짧은 대화로 끝날 수 있습니다. 판매세와 감가상각은 자판기 운영자가 기초 기록을 제대로 관리하지 않아 돈을 낭비하거나 과태료를 내게 되는 가장 대표적인 두 분야입니다.
자판기 노선을 위한 실무적인 월 마감 절차
이 모든 과정이 복잡하게 느껴진다면, 소규모 노선을 정직하게 운영하기 위한 최소한의 루틴을 소개합니다:
- 매 방문 점검 후 — 수거된 현금, DEX 예상 현금, 차액, 투입된 상품(원가), 수행된 유지보수 내용을 기록하고 모두 해당 기기 태그를 지정합니다.
- 매주 — 결제 대행사 명세서와 비현금 입금액을 대조하고, 수수료를 기입하며, 지급 거절(chargeback) 발생 여부를 확인합니다.
- 매월 — 장소 수수료를 계상하고, 기기별 현금 과부족(Cash Over/Short)을 검토하며, 월 마감 후 기기별 공헌 이익(contribution-margin) 보고서를 작성합니다.
- 분기별 — 창고 및 차량의 실물 재고를 파악하고, 시산표를 검토하며, 공헌 이익 기준 하위 10% 기기를 선별하여 최적화, 재협상 또는 이전 여부를 결정합니다.
- 매년 — 기기 감가상각을 진행하고, 연방 및 주 세금 신고를 완료하며, 노선을 하나의 포트폴리오로 검토하고 새해 목표를 재설정합니다.
계정과목표(Chart of Accounts)와 태그 규칙이 정립되면 이러한 각 단계는 거의 자동화됩니다. 첫 달은 힘들지만, 셋째 달부터는 일상이 됩니다.
노선 재무 상태를 투명하고 감사 가능하게 유지하세요
자판기 노선 운영은 현금, 원격 측정 데이터, 그리고 적은 마진을 바탕으로 이루어집니다. 비즈니스를 확장하는 운영자들은 소프트웨어 엔지니어가 프로덕션 코드를 다루는 것과 같은 방식으로 장부를 관리합니다. 즉, 구조화되고 버전 관리가 가능하며 사람이 읽을 수 있어야 합니다.
Beancount.io는 이러한 사고방식을 소규모 비즈니스 회계에 접목합니다. 전체 원장이 일반 텍스트로 저장되므로 모든 거래를 줄 단위로 감사할 수 있으며, 기기 및 위치 태그를 통해 이 가이드에서 설명한 자산별 상세 분석이 가능합니다. 또한 독점 데이터베이스에 데이터가 갇힐 염려도 없습니다. 무료로 시작하여 수치의 무결성을 중시하는 운영자들이 왜 텍스트 기반 회계로 전환하고 있는지 확인해 보세요. 결정하기 전에 대시보드와 작동 원리에 대해 더 자세히 알아볼 수도 있습니다.