코인 세금 계산기의 심장: FIFO와 의제취득가액 로직의 비밀
2027년, 대한민국 가상자산 투자 시장은 거대한 변곡점을 맞이합니다. 그동안 세금의 사각지대에 있었던 코인 매매 차익에 대해 22%(양도소득세 20% + 지방소득세 2%)의 세금이 부과되기 시작하기 때문입니다. 코인 시장은 주식보다 훨씬 복잡합니다. 수시로 발생하는 거래소 간 전송, 파편화된 매수 기록, 그리고 의제취득가액까지. 이 모든 것을 엑셀로 계산하는 것은 불가능에 가깝습니다.
첫 번째 엔진: 선입선출법(FIFO) 매칭
가상자산 과세의 대전제는 선입선출법(First-In, First-Out)입니다. 먼저 산 코인을 먼저 파는 것으로 간주하여 취득가액을 산정하는 방식입니다.
AssetIQ의 엔진은 사용자가 입력한 트랜잭션을 시간순으로 정렬한 뒤, Holdings(보유분)라는 가상의 큐(Queue)를 생성합니다.
📥 매수(Buy) 처리
(단가 × 수량 + 수수료) × 환율 공식을 적용해 원화(KRW)로 환산한 뒤 큐에 쌓습니다. 수수료를 취득원가에 미리 가산하여 향후 양도차익을 줄이는 방향으로 설계했습니다.
📤 매도(Sell) 처리
큐의 맨 앞에 있는 가장 오래된 매수분부터 차례대로 꺼내어 매칭합니다. 100개를 매도하는데 가장 오래된 매수분이 60개뿐이라면, 엔진은 자동으로 다음 매수분에서 40개를 가져와 합산합니다.
이 과정에서 발생하는 소수점 정밀도 문제를 해결하기 위해, AssetIQ는 모든 금액을 원화 정수 단위로 변환(Math.round)한 뒤 계산합니다. 마지막 매칭 건에서는 잔액 전체를 사용하여 반올림 누적 오차를 방지합니다.
두 번째 엔진: 의제취득가액 자동 적용
2027년 과세 시행을 앞두고, 2026년 12월 31일 당시의 코인 가격을 취득가액으로 인정해 주는 의제취득가액 제도가 도입됩니다.
AssetIQ의 핵심 차별점은 FIFO 매칭이 끝난 각 데이터 조각에 대해 실시간 비교 연산을 수행한다는 점입니다.
핵심 비교 로직
1. FIFO 매칭으로 산출된 실제 취득원가를 확인합니다.
2. 해당 매수분이 2027년 이전 취득분인지 자동 판별합니다.
3. 의제취득가액(2026.12.31 시가 × 수량)과 비교합니다.
4. 둘 중 더 높은 금액을 자동 선택하여 양도차익을 최소화합니다.
예를 들어 1,000만 원에 산 비트코인이 2026년 말 1억 원이 되었다면, 1억 원에 산 것으로 인정받습니다. AssetIQ는 이 로직이 적용된 건수와 절세 효과 금액을 별도로 표시하여, 의제취득가액으로 얼마를 아꼈는지 직관적으로 보여줍니다.
세 번째 엔진: 국고금 관리법에 따른 단수 처리
계산기 개발에서 가장 간과하기 쉬운 부분이 단수 처리(Rounding)입니다. 국세청에 신고하는 세금은 원 단위까지 정확해야 하지만, 법령에 따라 특정 단위에서 절사해야 하는 규칙이 있습니다.
| 항목 | 절사 규칙 | 근거 |
|---|---|---|
| 과세표준 | 1,000원 미만 절사 | 과세표준 산정 기준 |
| 양도소득세 | 10원 미만 절사 | 국고금 관리법 제47조 |
| 지방소득세 | 10원 미만 절사 | 국고금 관리법 제47조 |
단 10원의 차이로도 국세청 시스템에서 오류가 나거나 신고서 반려 사유가 될 수 있습니다. AssetIQ는 홈택스 숫자와 1원의 오차도 없이 일치하도록 설계되었습니다.
기술적 도전: 부동 소수점과 환율
코인 세금 계산기를 개발하며 마주한 가장 큰 난관은 JavaScript의 부동 소수점 오차입니다. 0.1 + 0.2 = 0.30000000000000004가 되는 환경에서 소수점 8자리의 사토시 단위를 다루는 것은 위험합니다.
이를 위해 AssetIQ는 모든 금액을 원화 정수로 변환(Math.round)한 뒤 연산하고, 마지막 매칭 건에서는 나머지 전액을 사용하여 반올림 누적 오차를 원천 차단합니다. 또한, 해외 거래소 이용자를 위해 매수 시점의 환율을 자동 매칭하는 로직을 통합하여, 달러로 산 코인을 원화로 신고해야 하는 투자자들의 고충을 해결했습니다.
세금 계산기는 예뻐 보이는 것보다
'정확한 것'이 본질입니다
자주 묻는 질문 (FAQ)
Q. 거래소 간 이동(전송) 내역도 계산에 포함되나요?
거래소 간 전송은 '매도'가 아닌 '자산 이동'으로 처리하여 취득원가를 유지하도록 설계되어 있습니다. 단, 전송 수수료는 비용으로 처리하여 절세에 도움을 줍니다.
Q. 의제취득가액은 모든 코인에 다 적용되나요?
2027년 1월 1일 이전에 취득하여 보유 중인 모든 가상자산에 대해 적용됩니다. AssetIQ 엔진은 매수 일자를 자동으로 판별하여 2027년 이후 매수분에는 실제 취득가액만 적용합니다.