1 ポイント 投稿者 GN⁺ 2024-01-04 | 1件のコメント | WhatsAppで共有

カナダの給与控除計算の複雑さ

  • カナダ歳入庁(CRA)は定期的に「給与控除の計算式(Payroll Deductions Formulas)」文書を発行している。この文書には、CRAが徴収するカナダ年金制度、雇用保険、所得税のすべての計算式が含まれている。
  • カナダで小規模事業を営み、外部の給与サービス提供業者を利用していない Colin Percival は、これらの計算式をスプレッドシートに直接実装した。
  • 税制の多くの側面と同様に複雑さは増しており、今年はカナダ年金制度に「基本」保険料と「追加」保険料だけでなく「第2追加」保険料まで含まれるようになり、スプレッドシートを一から書き直さなければならなかった。

依存関係チャートの作成

  • 文書の著者たちはソフトウェアにおける重要な細部、つまり値は使用する前に計算されていなければならないという点を見落としていた。そのため、文書を見ながら計算すべき各値がどこにあるのかを行き来しなければならない。
  • これを助けるため、Colin Percival は GraphViz を使って依存関係チャートを描いた。グラフには「年間最大年金算入額」($73200)のような値から始まり、「給与控除合計」に至るまで79個のノードがある。
  • チャートには数式は書かず、各数式が依存するほかの値だけを記録し、チャートを見る人が何を先に計算すべきかを簡単に把握できるようにしている。

単純化した前提

  • 単純化のため、Colin Percival は手数料を受け取る従業員、カナダ年金制度に加入または脱退する従業員、ケベック、ノバスコシア、ユーコン、オンタリオ(それぞれ独自の税務上の複雑さがある)に居住する人々は扱わないと仮定している。

GN⁺の見解

  • この記事は、カナダの給与控除計算がどれほど複雑かをよく示している。特に、小規模事業主が直面する課題と、それを解決するための創造的なアプローチを強調している。
  • 依存関係チャートを作成することは、複雑なシステムを理解し管理するうえで非常に有用なツールであり、ソフトウェアエンジニアリングだけでなくさまざまな分野での問題解決にも応用できる。
  • この記事は、税計算の複雑さを単純化しようとする事業主の努力を示しており、その取り組みはほかの事業主たちにも刺激を与えるかもしれない。

1件のコメント

 
GN⁺ 2024-01-04
Hacker Newsの意見
  • 政府がコード形式の公開された数式を提供していないのは残念だ。

    カナダ歳入庁(CRA)のWebサイトで提供されているWebフォームを使うことが、信頼できる唯一の方法であり、手作業で計算するのは非常に面倒でミスが起きやすい。

  • カナダの小さな給与計算会社を運営していた経験から、ルールが更新されるたびにCRA計算機向けのスクレイパーを実行して、さまざまな地域と給与帯の給与を計算し、rspecで出力してコンプライアンスをテストしていた。

    ルールが変わるたびにスクレイパーで給与を計算し、rspecで結果を出力して規制順守をテストする「ブルートフォース」方式を使っていた。

  • 税法の複雑さは次のような循環プロセスをたどる。

    1. 税法が制定される。
    2. 熟練した会計士と税務弁護士が、合法的に税金を回避する方法を見つける。
    3. 税務当局が抜け穴をふさぐための規則を発行する。
    4. 政権が交代し、票を得たり経済を調整したりするために一部の税率を下げ、税制優遇を追加する。
    5. 新しい政権が政治的理由で前政権の施策を選択的に覆す。
    6. 国際課税の場合、複数の法域で税負担を下げるための複雑な戦略を使う熟練した税務弁護士、多国籍企業を誘致するため税法にインセンティブを追加する政府、これを防ごうとして税関連事項の標準化を試みるOECD、各国間の租税条約などがさらに加わる。
  • 数年前にIRS向けに似たようなものを作ったことがある。

    米国内国歳入庁であるIRSのために、数年前に似たようなツールを作った経験がある。

  • 給与計算プロバイダーが存在する理由を示すチャートだ。

    給与計算プロバイダーの必要性を説明するチャートに関連する Bits About Money の投稿を参照している。

  • CRAがすべての数式の参照実装を公開すべきだという点で、著者に拍手を送りたい。

    CRAがすべての数式の参照実装を公開し、中小企業が恩恵を受けられるようにすべきだという意見に同意する。

  • フランスでは、こうしたルールはWebサイト、API、NPMパッケージ、そして publi.codes 言語による生のルールとして提供されている。

    フランスでは税制ルールがWebサイト、API、NPMパッケージ、publi.codes言語で提供されていることを説明している。

  • カナダ人口の約75%が住むケベック、ノバスコシア、ユーコン、オンタリオの住民を除けば、すべての人に適用される。

    ケベック、ノバスコシア、ユーコン、オンタリオの住民を除く、カナダ人口の大多数に適用されるルールだ。

  • 米国に住んでいるが、この複雑さは自分のLLCで従業員を雇わない主な理由の一つだ。

    米国在住のユーザーは、税務に関する複雑さがLLCで従業員を雇わない主な理由の一つだと説明している。

  • どんなアルゴリズムも、ソフトウェアであれそうでなかれ、複雑さを追加して望ましい結果を得られるような混沌とした状態にされてしまう。

    アルゴリズムは複雑さを加えることで、望む結果を得られる混沌とした状態にされ、部外者を混乱させ、場合によっては悪い結果を招くことがある。