Aller au contenu

Aperçu du Moteur Fiscal

@dtax/tax-engine est une bibliothèque TypeScript-first sans dépendances pour le calcul fiscal des cryptomonnaies.

Fonctionnalités

  • 23 parseurs d’exchange — détection automatique ou spécification manuelle du format
  • 8 méthodes de coût de base — FIFO, LIFO, HIFO, Specific ID, et plus encore
  • Types de transactions — Achat, Vente, Échange, Staking, Minage, Airdrop, NFT, DeFi, Frais
  • Génération de rapports — Form 8949 (CSV/PDF/TXF), résumé Schedule D
  • Détection des wash sales — signale les violations de la règle de rachat à 30 jours
  • Déduplication — détection des doublons par empreinte de contenu

Fonctions principales

FonctionDescription
parseCsv(csv, options?)Parser un CSV d’exchange en transactions normalisées
computeGains(txs, options)Calculer les plus-values pour une année fiscale
compareAllMethods(txs, year)Comparer les gains entre les 7 méthodes comparables
generateForm8949Csv(disposals, options)Exporter le Form 8949 en CSV
generateTxfFile(disposals, options)Exporter un fichier TXF pour les logiciels fiscaux

Types TypeScript

type CsvFormat =
| 'coinbase' | 'binance' | 'binance_us' | 'kraken' | 'gemini'
| 'crypto_com' | 'kucoin' | 'okx' | 'bybit' | 'gate' | 'bitget'
| 'mexc' | 'htx' | 'etherscan' | 'etherscan_erc20'
| 'solscan' | 'solscan_defi' | 'bitfinex' | 'poloniex'
| 'koinly' | 'cointracker' | 'cryptact' | 'generic';
type CostBasisMethod =
| 'FIFO' | 'LIFO' | 'HIFO' | 'SPECIFIC_ID'
| 'GERMANY_FIFO' | 'PMPA' | 'TOTAL_AVERAGE' | 'UK_SHARE_POOLING';
interface ParsedTransaction {
type: TransactionType;
timestamp: string; // ISO 8601
sentAsset?: string;
sentAmount?: number;
receivedAsset?: string;
receivedAmount?: number;
feeAsset?: string;
feeAmount?: number;
notes?: string;
}