Skip to content

住民税の計算方法

ikuma-t edited this page Feb 5, 2022 · 2 revisions

住民税の計算方法

住民税は企業に所属している場合、企業が代理で納付する。これを特別徴収という。 一方無職の場合は個人で納付する必要がある。これを普通徴収という。

普通徴収と特別徴収の違いは、納付者の他に、納付タイミングにある。特別徴収の場合は毎月給与から天引きが行われるが、普通徴収の場合は、6月、8月、11月、翌年1月の4回で12ヶ月分を納付する。

料金

  • 住民税は大きく分けると、所得に応じて決まる所得割額と固定で支払義務が発生する均等割額の2種類が発生する。
  • 所得割額は昨年(1/1~12/31)の収入を基準に、諸々の控除を行ったもの(課税標準)に一定の割合を乗じたもの。

支払対象期間

  • 住民税は、前年の1/1 ~ 12/31までの所得を基準として、6月から翌年5月までを徴収期間とする。

計算に必要なパラメータ

計算式

純粋に住民税を算出する場合には次のような計算式になる

def 住民税総計
  (所得割額 + 均等割額)
end
  
def 給与所得(今年度の年収)
 今年度の年収 * 所定の計算式
end
  
def 所得控除
  支払済の健康保険料 + 支払済の厚生年金保険料 + 支払済の雇用保険料 + 基礎控除
end
  
def 課税標準
  (給与所得 - 所得控除).floor
end
  
def 調整控除
  # だいたい1500円だけど分岐あり
end
  
def 税額控除前所得割額
  課税標準 * (区市町村割合 + 都道府県割合)%
end
  
def 所得割額
  税額控除前所得割額 - 調整控除
end
  
def 均等割額
  区市町村均等割額 + 都道府県民均等割額
end

普通徴収の場合の納期限ごとの支払は、基本的に12ヶ月で按分した金額 * 経過月数 のような形で求められるが(6月分が3ヶ月分かは要確認)、按分する際に生じる100円未満の端数については、初月にまとめる必要がある。

def 端数処理
 # 端数処理は以下のような形で書ける
  # months = 12
  # remainder = (yearly_insurance_fee / months) % 100 * months + yearly_insurance_fee % months
 # base = (yearly_insurance_fee - remainder) / months
 # "初月:#{base + remainder} 残りの月:#{base}"
end

また特別徴収から普通徴収へ切り替える場合、退職時点での未払い分から普通徴収として納付することになる。

def 切り替え時の住民税
  今年度の住民税の総額 - 支払った住民税
end

def 支払った住民税
  今年度の住民税の総額 / 12 を端数処理したもの * 退職月までの経過日数
end