This skill should be used when the user needs to calculate consumption tax (消費税) or determine their tax method (2割特例, 簡易課税, or 本則課税). Trigger phrases include: "消費税を計算", "消費税の申告", "消費税申告書", "2割特例", "簡易課税", "本則課税", "課税売上", "消費税額", "インボイス", "みなし仕入率", "課税仕入".
課税売上・課税仕入から消費税額を計算するスキル。
assess スキルで消費税の課税事業者と判定され、settlement スキルで決算が完了していることを前提とする。
計算結果は /e-tax スキル(Claude in Chrome)で確定申告書等作成コーナーに入力する。
shinkoku.config.yaml を Read ツールで読み込む/setup スキルの実行を案内して終了するdb_path: CLI スクリプトの --db-path 引数に使用output_dir: 進捗ファイル等の出力先ベースディレクトリconfig の db_path が ./shinkoku.db で CWD が /home/user/tax-2025/ の場合:
shinkoku tax calc-consumption --input /home/user/tax-2025/output/consumption_input.json設定の読み込み後、引継書ファイルを読み込んで前ステップの結果を把握する。
.shinkoku/progress/progress-summary.md を Read ツールで読み込む(存在する場合).shinkoku/progress/06-settlement.md.shinkoku/progress/02-assess.md消費税計算を開始する前に以下を確認する:
Q1. インボイス登録により課税事業者になったか?
かつ基準期間の課税売上が1,000万円以下か?
├── Yes → 2割特例の適用が可能 → Q2へ
└── No → Q3へ
Q2. 2割特例を適用するか?
├── Yes → 2割特例で計算
└── No → Q3へ(簡易課税・本則課税と比較して有利な方を選択可能)
Q3. 簡易課税制度選択届出書を提出済みで、
基準期間の課税売上が5,000万円以下か?
├── Yes → 簡易課税で計算
└── No → 本則課税で計算
帳簿から課税売上高を税率区分別に集計する。ledger.py trial-balance や ledger.py search の結果から以下を算出する:
| 項目 | 説明 |
|---|---|
| 課税売上高(税込) | 税率10%と軽減税率8%を区分して集計 |
| 課税売上高(税抜) | 課税標準額(1,000円未満切り捨て) |
| 非課税売上高 | 受取利息等の非課税取引 |
| 免税売上高 | 輸出取引等(該当する場合) |
tax_calc.py calc-consumption の呼び出しshinkoku tax calc-consumption --input consumption_input.json
入力 JSON (ConsumptionTaxInput):
{
"fiscal_year": 2025,
"method": "special_20pct",
"taxable_sales_10": 5500000,
"taxable_sales_8": 0,
"taxable_purchases_10": 0,
"taxable_purchases_8": 0,
"simplified_business_type": null,
"interim_payment": 0
}
出力 (ConsumptionTaxResult):
method: 適用した申告方法taxable_sales_total: 課税売上高合計(税込、表示用)taxable_base_10: 課税標準額(10%分、税抜、1,000円切捨て)taxable_base_8: 課税標準額(8%分、税抜、1,000円切捨て)national_tax_on_sales: 消費税額(国税: 7.8%分 + 6.24%分)tax_on_sales: = national_tax_on_sales(後方互換エイリアス)tax_on_purchases: 控除対象仕入税額(国税部分)net_tax: 差引税額(100円切捨て、正の場合のみ)refund_shortfall: 控除不足還付税額(仕入 > 売上の場合)interim_payment: 中間納付税額tax_due: 納付税額 = net_tax - interim_paymentlocal_tax_due: 地方消費税額(差引税額 × 22/78、100円切捨て)total_due: 合計納付税額(負 = 還付)1. 課税標準額 = 税込売上 × 100/110(10%分)or × 100/108(8%分)
→ 1,000円未満切捨て(国税通則法118条)
2. 消費税額(国税)= 課税標準額 × 7.8%(10%分)+ 課税標準額 × 6.24%(8%分)
3. 差引税額 = 消費税額 × 20%
→ 100円未満切捨て(国税通則法119条)
4. 地方消費税 = 差引税額 × 22/78
→ 100円未満切捨て
1. 課税標準額 = 税込売上 × 100/110(10%分)or × 100/108(8%分)
→ 1,000円未満切捨て(国税通則法118条)
2. 消費税額(国税)= 課税標準額 × 7.8%(10%分)+ 課税標準額 × 6.24%(8%分)
3. 控除対象仕入税額 = 消費税額 × みなし仕入率
4. 差引税額 = 消費税額 − 控除対象仕入税額
→ 100円未満切捨て(国税通則法119条)
5. 地方消費税 = 差引税額 × 22/78
→ 100円未満切捨て
みなし仕入率(事業区分別):
| 事業区分 | 該当する事業 | みなし仕入率 |
|---|---|---|
| 第1種 | 卸売業 | 90% |
| 第2種 | 小売業、農林水産業(飲食料品) | 80% |
| 第3種 | 製造業、農林水産業(その他)、建設業、電気ガス業 | 70% |
| 第4種 | その他(飲食店業等) | 60% |
| 第5種 | サービス業(運輸・通信・金融保険) | 50% |
| 第6種 | 不動産業 | 40% |
1. 課税標準額 = 税込売上 × 100/110(10%分)or × 100/108(8%分)
→ 1,000円未満切捨て(国税通則法118条)
2. 課税売上に係る消費税額(国税):
標準税率分: 課税標準額 × 78/1000(= 7.8%)
軽減税率分: 課税標準額 × 624/10000(= 6.24%)
3. 課税仕入に係る消費税額(国税):
標準税率分: 税込仕入額 × 78/1100(= 7.8/110)
軽減税率分: 税込仕入額 × 624/10800(= 6.24/108)
4. 差引税額 = 売上消費税額 − 仕入消費税額
正の場合 → 100円未満切捨て(国税通則法119条)
負の場合 → 控除不足還付税額(端数処理なし)
5. 地方消費税 = 差引税額 × 22/78
→ 100円未満切捨て
複数の方法が選択可能な場合、それぞれの税額を試算して比較表を提示する。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
消費税の申告方法比較
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
| 方法 | 納付税額 | 備考 |
|------|---------|------|
| 2割特例 | ○○,○○○円 | 届出不要 |
| 簡易課税 | ○○,○○○円 | 届出が必要 |
| 本則課税 | ○○,○○○円 | インボイス保存要 |
→ 最も有利な方法: [方法名](差額: ○○,○○○円)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
消費税の計算結果(令和○年分)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 基本情報
申告方法: [2割特例 / 簡易課税 / 本則課税]
課税期間: 令和○年1月1日〜12月31日
■ 課税売上
標準税率(10%)対象: ○,○○○,○○○円
軽減税率(8%)対象: ○○○,○○○円
課税売上高合計: ○,○○○,○○○円
■ 消費税額
課税売上に係る消費税額: ○○○,○○○円
控除対象仕入税額: ○○○,○○○円
差引税額: ○○○,○○○円
中間納付税額: 0円
-----------------------------------------
消費税の納付税額: ○○○,○○○円
地方消費税の納付税額: ○○,○○○円
合計納付税額: ○○○,○○○円
■ 次のステップ:
→ /e-tax で確定申告書等作成コーナーに入力する(Claude in Chrome)
→ /submit で提出準備を行う
→ 消費税の納付期限: 令和○年3月31日
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
サマリー提示後、以下のファイルを Write ツールで出力する。 これにより、セッションの中断や Compact が発生しても次のステップで結果を引き継げる。
.shinkoku/progress/08-consumption-tax.md に以下の形式で出力する:
---