← Back to all products
$8
Staking Tax Reporter
Generate tax reports for staking income — reward events, disposals, and cost basis tracking.
TOMLPythonMarkdown
📁 File Structure 10 files
staking-tax-reporter/
├── LICENSE
├── README.md
├── pyproject.toml
├── security-notes.md
├── src/
│ ├── calculator.py
│ ├── cli.py
│ ├── fetcher.py
│ ├── formatter.py
│ └── models.py
└── tests/
└── test_reporter.py
📖 Documentation Preview README excerpt
staking-tax-reporter
Generate staking income tax reports with FIFO, HIFO, LIFO, and ACB cost basis methods — CSV and PDF export.
Price: $7.99 | Store: staking-kit | Product #10
Overview
staking-tax-reporter is a Python CLI tool that classifies Ethereum staking rewards as taxable income and calculates capital gains/losses on dispositions. It supports multiple cost basis methods (FIFO, LIFO, HIFO, ACB) and jurisdictions (US, UK, Germany, Finland, Canada, Australia), with export to CSV and PDF formats.
Features
| Feature | Description |
|---|---|
| Income Classification | Staking rewards classified as ordinary income at receipt price |
| Cost Basis Methods | FIFO, LIFO, HIFO, and Average Cost Basis (ACB) |
| Capital Gains | Gain/loss calculation on dispositions with holding period tracking |
| Multi-Jurisdiction | US, UK, DE, FI, CA, AU tax rule awareness |
| CSV Import | Import rewards from any source via CSV |
| Beacon API | Fetch native validator rewards directly from a Beacon node |
| CSV Export | Machine-readable output for TurboTax, Koinly, etc. |
| PDF Export | Formatted report with CryptoForge branding (optional) |
| Lot Tracking | View cost basis lot inventory for audit/verification |
Installation
# Install from source
pip install -e .
# With PDF export support
pip install -e ".[pdf]"
# Or install dependencies manually
pip install click rich web3 pyyaml python-dotenv
Prerequisites
- Python 3.10+
- (Optional)
reportlabfor PDF export - (Optional) A Beacon API endpoint for the native rewards fetch
Quick Start
1. Generate a report from CSV
# FIFO method, US jurisdiction, table output
staking-tax report --year 2025 --method fifo --input rewards.csv
# HIFO method, CSV export
staking-tax report --year 2025 --method hifo --input rewards.csv --format csv
*... continues with setup instructions, usage examples, and more.*
📄 Code Sample .py preview
src/calculator.py
"""
staking-tax-reporter — Tax calculation engine
Implements FIFO, LIFO, HIFO, and ACB cost basis methods for staking rewards.
Classifies reward events as ordinary income and computes capital gains/losses
on dispositions.
Jurisdiction-specific rules:
- US: Staking rewards = ordinary income at fair market value upon receipt
- UK: Miscellaneous income upon receipt
- DE: Tax-free if held > 1 year (Haltefrist)
- FI: 30% capital income tax on receipt value
- CA: Business or capital income depending on frequency
- AU: Ordinary income at receipt
"""
from __future__ import annotations
from datetime import date, timedelta
from .models import (
CostBasisLot,
CostBasisMethod,
Disposition,
ReportConfig,
RewardType,
StakingReward,
TaxEvent,
TaxReport,
TaxSummary,
)
# ---------------------------------------------------------------------------
# Income event classification
# ---------------------------------------------------------------------------
def calculate_income_events(
rewards: list[StakingReward],
config: ReportConfig,
) -> list[TaxEvent]:
"""
Convert staking rewards into income tax events.
Each reward is treated as ordinary income at the USD price on the date
of receipt. This creates a cost basis lot for future capital gains
calculations.
"""
events: list[TaxEvent] = []
# ... 237 more lines ...