Ruby で学ぶアメリカ税制 - 1231条資産の売却損益

米国内国歳入法(Internal Revenue Code)の1231条は、基本的に1年を超えて保有する事業用資産の売却損益について規定した条項です。原則として、このような資産の売却益は長期キャピタルゲイン、売却損は通常所得を相殺する損失として扱われます。教科書を読んでもよくわからなかったので、元の条文に当たってみました(コーネル大学のこのウェブサイト、IRS の条文を調べるのになかなか便利です)。他にも Wikipedia内国歳入庁の解説ページがよいです。

この1231条が対象にする主な資産は次の2つです。

  1. 事業用資産(asset_a)
  2. 営利性資本資産(asset_b)

1 は、具体的には1年を超えて保有された事業用の資産で、不動産と減価償却を行う動産です。ただし、棚卸資産著作権等の無形資産は含みません。
2. は、1年を超えて保有された資本資産で、事業・営利に関係するものです。どうやらこれは主に投資資産のようですね。

ではプログラムで表現してみましょう。

# gain_on_sale_of_asset_a 複数の事業用資産(asset_a)の売却で発生した損益を合算したもの。負は損失を表す。
# gain_on_casualty 複数の事業用資産(asset_a)と営利性資本資産(asset_b)に対する災害や盗難が原因で発生した損益を合算したもの。負は損失を表す。
# gain_on_condemnations 複数の事業用資産(asset_a)と営利性資本資産(asset_b)に対する収用決定が原因で発生した損益を合算したもの。負は損失を表す。
#  (収用というのは、政府が公共の目的のために市民の財産を強制的に買い上げること) 負は損失を表す。
# nonrecaptured_sec1231_loss まだ再捕捉されない1231条損失。過去5年間に発生した1231条損失の合計から対応する1231条利益を相殺した残り。負は損失を表す。

def gain_on_sec1231(gain_on_sale_of_asset_a, gain_on_casualty, gain_on_condemnations, nonrecaptured_sec1231_loss)
  # result
  res = {:long_term_capital_gain => 0, :ordinary_loss => 0, :ordinary_1231_loss => 0, :ordinary_income => 0}
 
  if gain_on_casualty < 0
    res[:ordinary_loss] = gain_on_casualty
    adjusted_gain_on_casualty = 0
  else
    adjusted_gain_on_casualty = gain_on_casualty 
  end

  sec1231_gain = gain_on_sale_of_asset_a + adjusted_gain_on_casualty + gain_on_condemnations
  if sec1231_gain <= 0 
    res[:ordinary_1231_loss] = sec1231_gain
  else # gain
    res[:long_term_capital_gain] = [0, sec1231_gain + nonrecaptured_sec1231_loss].max
    res[:ordinary_income] = [sec1231_gain, nonrecaptured_sec1231_loss.abs].min
  end

  res
end

def main
  gain_on_sale_of_asset_a = 100
  gain_on_casualty = 0 
  gain_on_condemnations = 0
  nonrecaptured_sec1231_loss = 0
  puts "case1: %s" % gain_on_sec1231(gain_on_sale_of_asset_a, gain_on_casualty, gain_on_condemnations, nonrecaptured_sec1231_loss).inspect
 
  gain_on_sale_of_asset_a = 100
  gain_on_casualty = 30 
  gain_on_condemnations = 0
  nonrecaptured_sec1231_loss = 0
  puts "case2: %s" % gain_on_sec1231(gain_on_sale_of_asset_a, gain_on_casualty, gain_on_condemnations, nonrecaptured_sec1231_loss).inspect

  gain_on_sale_of_asset_a = 100
  gain_on_casualty = -30 
  gain_on_condemnations = 20
  nonrecaptured_sec1231_loss = 0
  puts "case3: %s" % gain_on_sec1231(gain_on_sale_of_asset_a, gain_on_casualty, gain_on_condemnations, nonrecaptured_sec1231_loss).inspect

  gain_on_sale_of_asset_a = 100
  gain_on_casualty = -30 
  gain_on_condemnations = 20
  nonrecaptured_sec1231_loss = -75
  puts "case4: %s" % gain_on_sec1231(gain_on_sale_of_asset_a, gain_on_casualty, gain_on_condemnations, nonrecaptured_sec1231_loss).inspect

  gain_on_sale_of_asset_a = 100
  gain_on_casualty = -30 
  gain_on_condemnations = 20
  nonrecaptured_sec1231_loss = -125
  puts "case5 %s" % gain_on_sec1231(gain_on_sale_of_asset_a, gain_on_casualty, gain_on_condemnations, nonrecaptured_sec1231_loss).inspect

  gain_on_sale_of_asset_a = -90
  gain_on_casualty = -30 
  gain_on_condemnations = 20
  nonrecaptured_sec1231_loss = -125
  puts "case6 %s" % gain_on_sec1231(gain_on_sale_of_asset_a, gain_on_casualty, gain_on_condemnations, nonrecaptured_sec1231_loss).inspect

end

main

このプログラムの出力結果は、

case1: {:ordinary_income=>0, :long_term_capital_gain=>100, :ordinary_loss=>0, :ordinary_1231_loss=>0}
case2: {:ordinary_income=>0, :long_term_capital_gain=>130, :ordinary_loss=>0, :ordinary_1231_loss=>0}
case3: {:ordinary_income=>0, :long_term_capital_gain=>120, :ordinary_loss=>-30, :ordinary_1231_loss=>0}
case4: {:ordinary_income=>75, :long_term_capital_gain=>45, :ordinary_loss=>-30, :ordinary_1231_loss=>0}
case5 {:ordinary_income=>120, :long_term_capital_gain=>0, :ordinary_loss=>-30, :ordinary_1231_loss=>0}
case6 {:ordinary_income=>0, :long_term_capital_gain=>0, :ordinary_loss=>-30, :ordinary_1231_loss=>-70}

となります。

この出力結果をどのように解釈したらいいでしょうか。4つの数字が出力として出てくることがわかります。それぞれの意味は次の通りです。

long_term_capital_gain
長期キャピタルゲイン。1231条の資産の売却にともない利益が出た場合、これは基本的に税制上有利な長期キャピタルゲインとして扱われます。
ordinary_1231_loss
通常所得と相殺される1231条損失。通常所得の税額は高いので、これを相殺できる1231条損失は価値が高いです。これは翌年「まだ再捕捉されない1231条損失(nonrecaptured_sec1231_loss)」に追加されます。
ordinary_income
通常所得として扱われる 1231条損失。まだ再捕捉されない1231条損失が残っている場合、その範囲において、1231条利益は通常所得として扱わなければなりません。これは 1231条利益の濫用を防止するために後から付け加えられた条項らしいです。1231条のサブセクション(c)がこれに当たります。
ordinary_loss
事業用資産や営利性資本資産に対して発生した災害や盗難が原因で発生した損失は、他の1231条損益とは通算されません。この目的はこの部分を「まだ再捕捉されない1231条損失」に組み込まないことでしょう。

case 1

入力

gain_on_sale_of_asset_a = 100
gain_on_casualty = 0
gain_on_condemnations = 0
nonrecaptured_sec1231_loss = 0

出力

case1: {:ordinary_income=>0, :long_term_capital_gain=>100, :ordinary_loss=>0, :ordinary_1231_loss=>0}

ですね。これはもっとも普通のケースで、事業用資産の売却で100の利益がでているので、長期キャピタルゲインも100になっているケースです。

case 2

入力

gain_on_sale_of_asset_a = 100
gain_on_casualty = 30
gain_on_condemnations = 0
nonrecaptured_sec1231_loss = 0

出力

case2: {:ordinary_income=>0, :long_term_capital_gain=>130, :ordinary_loss=>0, :ordinary_1231_loss=>0}

ここでは、事業用資産の売却で100の利益と災害で30の利益がでています。(災害で利益、というのは損害保険が下りた分の利益をさします)これは単純に合算されて130の長期キャピタルゲインになります。

case 3

入力

gain_on_sale_of_asset_a = 100
gain_on_casualty = -30
gain_on_condemnations = 20
nonrecaptured_sec1231_loss = 0

出力

case3: {:ordinary_income=>0, :long_term_capital_gain=>120, :ordinary_loss=>-30, :ordinary_1231_loss=>0}

さて、災害で30の損失がでていたらどうでしょうか。ここでは、事業用資産の売却で100、収用のため20の利益が出ています。これらの合計 120 は、災害損失30とは合算されないことに注意してください。これが1231条における災害損失の特徴になっています。

case 4

入力

gain_on_sale_of_asset_a = 100
gain_on_casualty = -30
gain_on_condemnations = 20
nonrecaptured_sec1231_loss = -75

出力

case4: {:ordinary_income=>75, :long_term_capital_gain=>45, :ordinary_loss=>-30, :ordinary_1231_loss=>0}

これは「まだ再捕捉されない1231条損失」が -75 あるケースです。この場合、事業用資産の売却と収用による利益の合計である 120 はそのまま全額、長期キャピタルゲインとして認められません。 120 - 75 = 45 だけが長期キャピタルゲインになります。残りは、再捕捉として、75の通常所得として申告しなければなりません。この場合、まだ再捕捉されない1231条損失は全部使いきってしまうので、翌年には持ち越されません。

case 5

入力

gain_on_sale_of_asset_a = 100
gain_on_casualty = -30
gain_on_condemnations = 20
nonrecaptured_sec1231_loss = -125

出力

case5 {:ordinary_income=>120, :long_term_capital_gain=>0, :ordinary_loss=>-30, :ordinary_1231_loss=>0}

これは、case 4 と同様ですが、「まだ再捕捉されない1231条損失」が -125 と大きくなっています。この場合は、1231条利益全体が通常所得として申告されます。この例では、残りの -5 の「まだ再捕捉されない1231条損失」が翌年に繰り越されます。

まとめ

いかがだったでしょうか。税法は複雑ですね。というか本当にアホ素敵ですね。この場合本来あるべき姿は何だったのでしょうか。通常所得だ、キャピタルゲインだといって所得の種類によって税率を変えるからこういうアホ素敵なことになるのです。所得の種類など統一してしまえばよろしい。そして最後に累進課税すれば十分です。しかし、税法とは政治の醜い妥協の歴史的堆積物ですから、いったん定めた条項を後で変更するのは非常に難しい。あきれるほど難しいのです。アメリカの所得税法が特に複雑怪奇なのは、アメリカの納税者が特に攻撃的に税法の抜け穴を探しまくり、税務当局が塞ぎまくった結果でしょう。

税金を喜んで払いたい人など誰もいませんから、すべての納税者が税制に対して文句を言います。その苦情を受けて支持者を増やしたい政治家は税法をいじくり回します。そして、誰も税法が理解できなくなるほど複雑になったところで、理解ができなくなった納税者は文句も言えなくなり、税法の改訂は終了します。我々はそういう最終的な姿を見ているわけです。

ところで本題に戻りますが、上の例ではあえて省略した事項がありました。それは 1245 条所得と1250条所得です。1231条による理論上の長期キャピタルゲインの一部は、1245条と1250条によってやはり通常所得として再捕捉されます。税務当局は、どうしても長期キャピタルゲインを認めたくないようです。だから、税率を同じにしろと・・・(以下省略)。これは次回の話題とします。