세금 정보는 왜 조용히 낡는가
"연금저축 400만원 한도"가 아직도 검색 상위에 있는 이유
세법은 매년 바뀌는데 글에는 연도가 적히지 않는다. 검색 엔진은 오래된 글도 계속 노출하고, 읽는 사람은 그것이 몇 해 전 기준인지 알 단서가 없다. 이 구조적 문제를 어떻게 다룰 것인가.
"연금저축 세액공제 한도 400만원"이라는 문장을 검색하면 아직도 많이 나온다. 지금은 연금저축 단독 600만원, IRP 합산 900만원이다.
틀린 정보가 사라지지 않는 이유는 단순하다. 글에 연도가 안 적혀 있고, 아무도 지우지 않기 때문이다.
세 겹의 문제
첫째, 세법은 매년 바뀐다. 매년 세제개편안이 나오고 국회를 거쳐 다음 해부터 시행된다. 한도·요건·세율이 조금씩 움직인다.
둘째, 글에는 연도가 안 적힌다. "연금저축 400만원까지 공제받으세요"라고만 쓰면 이 문장은 언제 쓰였는지 알 수 없다. 발행일이 있어도 본문의 숫자가 그 시점 기준이라는 표시가 없다.
셋째, 검색은 오래된 글도 계속 노출한다. 링크가 많이 걸린 오래된 글이 최신 글보다 위에 있는 경우가 흔하다.
세 가지가 겹치면 틀린 숫자가 몇 년씩 유통된다.
이건 개인의 부주의가 아니다
"확인하고 쓰면 되지 않느냐"고 할 수 있지만, 읽는 사람에게는 확인할 단서가 없다. 어느 해 기준인지 모르는 숫자를 어떻게 검증하나. 국세청 원문을 매번 찾아보는 것은 현실적이지 않다.
정보를 만드는 쪽의 구조 문제다.
그래서 이 사이트가 하는 것
세 가지를 강제한다.
1. 과세연도를 필수 필드로 둔다
모든 제도와 계산기에 taxYear 가 있다. 없으면 데이터가 시스템에 들어오지 못한다. 화면에서 막는 것이 아니라 데이터가 들어오는 길목에서 막는다 — 화면에서 막으면 언젠가 한 화면이 빠진다.
2. 지났으면 화면에 띄운다
현재 귀속연도와 다르면 제도 상세 상단에 배너가 뜬다. 접히지 않는다.
3. 대시보드가 센다
운영 화면이 "과세연도가 지난 제도 N건"을 상시 표시한다. 0이 아니면 붉게 나온다. 개정 반영이 밀리고 있다는 사실 자체가 보여야 한다.
세율표를 한 파일로 모았다
기술적으로는 세율·한도를 lib/taxdata.ts 한 파일에 연도별로 모아 뒀다. 개정 때 고칠 곳이 하나다.
그리고 세율표가 바뀌면 단위 테스트가 먼저 깨지게 만들었다. 구간 경계에서 인접한 두 식의 값이 같은지를 검사한다. 표를 고치다 만 상태로는 통과할 수 없다.
그래도 완벽하지 않다
개정 반영은 결국 사람이 하는 일이다. 이 장치들은 밀리고 있다는 사실을 숨기지 않게 만들 뿐이다.
그래서 화면에 배너가 보이면 원문을 확인해 달라고 적어 둔다. 그게 지금 할 수 있는 최선이다.