Ruby で学ぶアメリカ税制 - 子供と被扶養者の世話のための税額控除

子供と被扶養者の世話のための税額控除(Child and Dependent Care Credit) は以前話した通り子育て支援の優遇税制です。親が外に働きに出られるように、世話に手間のかかる子供を世話するベビーシッターや家政婦を雇ったとき、その費用の一部を税額控除する制度です。

対象となる子供と被扶養者は次の通りです。

  1. 19歳未満の適格子(qualifying child)
  2. 心身の障害のため自立して生活できない被扶養者または配偶者

税額控除は、子供の数や親の所得に応じて認められる上限が決まってきます。

プログラムを見てください。

# expense 実際に掛かった費用
# num_of_children 子供の数
# min_earned_income 納税者または配偶者の稼得所得で小さい方
# agi AGI

def child_and_dependent_care_credit(expense, num_of_children, min_earned_income, agi)
  child_limit = case
  when num_of_children == 1
    3000
  when num_of_children >= 2
    6000
  else
    0
  end

  rate = 0.01 * [20, 35 - ((agi - 15000) / 2000.0).ceil].max
  recognized_expense = [expense, child_limit, min_earned_income].min
  credit = recognized_expense * rate
end

def main
  expense = 3700
  num_of_children = 1
  min_earned_income = 15000
  agi = 30000
  puts "credit = %d" % child_and_dependent_care_credit(expense, num_of_children, min_earned_income, agi)
end

main

上の例は、Wiley から採ったものですが、実行結果は、

credit = 810

となって、Wiley の結果と一致します。

  rate = 0.01 * [20, 35 - ((agi - 15000) / 2000.0).ceil].max
  recognized_expense = [expense, child_limit, min_earned_income].min
  credit = recognized_expense * rate

という式がすべてを物語っていますね。ちょっと面白いのは認識する費用を求める式で、min_earned_income が条件の一つになっていることです。夫婦の稼得所得のうち、小さい方を費用の上限にする、というのです。これはたとえば、夫が外で働いていて、妻は家で専業主婦をやっているという場合「奥さん、子供の世話ができるでしょ」ということでしょうね。(ちなみにこの税額控除を取るためには、結婚している人の場合、かならず夫婦合算申告(joint return)しなければなりません。さすが IRS は厳しいですね。