目录
文章目录
  1. 1. 加密税务真正难在哪里
  2. 2. 第 1 步:导出原始数据
  3. 3. 第 2 步:用 AI 统一字段格式
  4. 4. 第 3 步:识别交易类型
  5. 5. 第 4 步:成本基础计算
  6. 6. 第 5 步:产出工作底稿
  7. 7. 6 个典型坑
  8. 8. FAQ

AI 加密税务计算实操:用 ChatGPT/Claude 整理交易记录的 5 步流程

报税季打开各家交易所的"导出历史"按钮,是大多数加密用户最绝望的几个小时。 字段格式不一、时间戳时区混乱、跨链 swap 被记成两笔、staking 收益单独躺在另一份 CSV—— 这部分整理工作正好是 AI 的甜区。这篇给完整 5 步流程,不告诉你怎么报税,只告诉你怎么把数据整理到能交给税务师的程度。

2026-05-15 PromptDeck 撰 阅读约 9 分钟
本文不构成税务建议。各地税法差异极大(中国大陆、香港、台湾、新加坡、美国、欧盟、英国对加密的征税方式都不一样), 且每年还在变。本文流程仅用于把散乱的交易记录整理成一份可读的工作底稿, 最终应税额、扣除项、申报表格必须由持牌税务专业人士处理。 AI 输出会有错误,关键数字必须人工核对。

1. 加密税务真正难在哪里 #

大部分人以为难的是"算 capital gain 公式",其实公式简单(卖出价 - 成本基础 = 损益)。真正难的是把成本基础找回来。一个普通用户的数据现实长这样:

下面的 5 步流程不会让 AI 帮你"自动报税"——而是把上面这堆杂乱数据整理成一张干净的表。这张表你交给税务师 / Koinly / CoinTracker,他们会做剩下的工作。

2. 第 1 步:导出原始数据 #

这一步是手工的,AI 帮不上忙。但是必须导全,否则后面 AI 整理出来的数据是错的。

主要交易所 / 钱包的数据导出入口(2026 年 5 月版)
来源 导出路径 格式 典型遗漏字段
Binance Tax → Generate Tax Report → 选年份 CSV 跨账户内部划转、Launchpool 收益
OKX Assets → Bills → Export CSV / XLSX 合约持仓盈亏的实现 vs 未实现
Coinbase Reports → Tax Reports CSV / Form 8949 Coinbase Pro 旧数据需单独导
MetaMask 用 Etherscan / Arbiscan 等按地址导出 CSV CSV swap 内部步骤、L2 → L1 提款
Phantom Solana Explorer 按地址查或 Solscan 导 需手工整理 SPL token 元数据
硬件钱包 从对应链浏览器按地址导 同上 多链需逐链导

建议:建一个文件夹 2025-tax/raw/,每个来源一个 CSV,文件名带年份和来源。所有 AI 处理都从这个目录开始,不要让 AI 直接连交易所。

3. 第 2 步:用 AI 统一字段格式 #

各家 CSV 字段名千奇百怪。Binance 用 UTC_Time,Coinbase 用 Timestamp,OKX 用 billCreateTime。让 ChatGPT 或 Claude 写一个统一脚本。

Prompt 模板(GPT-4o + Code Interpreter)

附件是 3 份不同交易所导出的 CSV:binance.csv / okx.csv / coinbase.csv。

请帮我写 Python 脚本,把它们合并到统一格式 unified.csv,列必须是:

- timestamp_utc (ISO 8601)
- source (binance / okx / coinbase / wallet_
) - type (buy / sell / convert / transfer_in / transfer_out / staking_reward / airdrop / fee / unknown) - asset_in (BTC / ETH / USDT ...) - amount_in (float) - asset_out - amount_out - fee_asset - fee_amount - usd_price_at_time (留空,下一步算) - raw_tx_id (原始记录 ID) - raw_note (原始 CSV 的备注字段,原文保留) 要求: 1. 自动识别每份 CSV 的时间列、金额列、类型列(不要假设列名相同) 2. 类型映射不确定时填 "unknown",不要自己猜 3. 时区一律转 UTC 4. 输出一份 mapping_report.md,说明每份 CSV 哪些列被映射到哪个统一字段,哪些列被丢弃 附件就是真实数据,请基于真实列名做映射,不要假设。

关键是最后那行"不要假设"。GPT-4o 容易凭训练记忆给你一个"通用的"币安 CSV 字段列表,但 Binance 改过两次格式——基于真实附件做映射才靠谱。

4. 第 3 步:识别交易类型 #

上一步把"unknown"留了下来。第 3 步用 AI 把这些归类。这一步最容易出错,必须人工抽查。

Prompt 模板

下面是 unified.csv 里 type=unknown 的所有记录(共 N 条)。

请逐条判断它的实际类型,从以下 9 类选一个:
- buy / sell / convert / transfer_in / transfer_out
- staking_reward / airdrop / mining_reward / interest
- fee_only

判断依据可以用:
- raw_note 字段里的关键词("Distribution" / "Stake Earn" / "Launchpool" 等)
- 是否两侧资产一致(同币种不同账户 = transfer)
- 金额是否过小(< $0.5 可能是 dust 或 fee)
- 来源是否 wallet(链上 tx 可能是 swap / mint / claim)

对每条输出:
- tx_id
- 推荐类型
- 置信度(high / medium / low)
- 你的理由

最后单独列出 confidence=low 的条目,那些我会人工复核。
不要硬填——拿不准就写 low + 说明缺什么信息。

"硬填"是 AI 的本能。"拿不准就标 low"必须显式要求,否则它会编一个看上去合理的类型。我跑过的真实样本里,low 通常占 5-15%,这部分必须人工查。

5. 第 4 步:成本基础计算 #

类型整理好后,让 AI 跑成本基础。这里需要补历史价格——CSV 里很多记录没有 USD 计价,要从 CoinGecko 历史 API 抓。

Prompt 模板(必须 Code Interpreter)

附件 unified.csv 已分好类型。

请:
1. 对每条 buy/sell/convert/staking_reward/airdrop,补上 usd_price_at_time
   - 如果原始数据里有 USD 金额,直接换算
   - 否则用 CoinGecko 历史价格(你可以联网取,注意标注 API 调用次数和限流)
   - 如果某天某币没有公开价格,标 "N/A" 不要编

2. 用 FIFO 方法计算每笔卖出的成本基础:
   - 对每个币种维护一个 "未卖出批次队列",按时间先进先出
   - 每笔卖出按队列顶部批次成本计算 cost_basis
   - 每笔 staking_reward / airdrop / mining_reward 的 cost_basis 就是收到时 USD 价格

3. 同时再跑一遍 LIFO 算法做对比

输出三份:
- realized_pnl_fifo.csv(FIFO 下每笔卖出的实现损益)
- realized_pnl_lifo.csv(LIFO 下,同上)
- summary.md(FIFO vs LIFO 总应税额对比 + 数据完整度报告)

最后告诉我:哪些币种 / 时间段的数据有明显缺失或低置信度。

FIFO 在大多数地区是强制的,LIFO 做对比只是看看差额——如果差额很大(> 30%),说明你的持仓批次结构很重要,更值得请税务师做精确处理。

6. 第 5 步:产出工作底稿 #

最后一步,把所有结果整理成一份能交给税务师的工作底稿。这一步 ChatGPT / Claude 都行。

Prompt 模板

基于 unified.csv 和 realized_pnl_fifo.csv,请生成一份纳税年度工作底稿(Markdown):

# [年份] Crypto Tax Working Paper

## 1. 数据来源与时间范围
- 来源清单 + 每个来源记录数
- 时间范围
- 已知数据缺口(哪些来源没导,为什么)

## 2. 资产持仓变动总览
- 期初每币种持有量
- 期末每币种持有量
- 期内最大持仓 + 最小持仓

## 3. 已实现损益(FIFO)
- 按币种分组的实现损益表
- 按月度的累计实现损益

## 4. 收入类项目
- staking 收益总额
- airdrop 收到的总额
- 收入类按 USD 计价

## 5. 数据置信度与已知问题
- 低置信度记录数(type=low confidence 的 N 条)
- 缺失 USD 价格的记录数
- 跨账户内部转账识别情况

## 6. 给税务师的备注
- 我的 AI 整理流程概述
- 哪些字段是 AI 推断的(如交易类型)
- 推荐税务师重点核对的部分

明确写:"本文档由用户使用 AI 工具整理,最终申报数字必须由持牌税务师复核。"

这份底稿你交给税务师后,他不会重新做整理工作(那是你刚干完的),只会复核 + 适配本地税法 + 填申报表。整理这一步通常占税务工作 70% 时间,AI 帮你省下来了。

7. 6 个典型坑 #

坑 1:跨所转账被记成"卖出 + 买入"。从 Binance 提 BTC 到 MetaMask 不是应税事件,但两边 CSV 看起来像两笔交易。第 3 步识别 type=transfer 必须人工抽查。

坑 2:DeFi swap 的中间步骤。Uniswap 一笔 USDC → ETH 在 Etherscan 上可能展开成 4-5 个 internal transaction。AI 会把每个 internal tx 当独立记录,应该只算一笔 swap。让 Prompt 显式合并"同一 tx_hash 内的多个 internal"。

坑 3:Airdrop 入账时的 USD 价格。很多 airdrop 收到时没有公开交易市场(前 24 小时没 listing),CoinGecko 价格是滞后的。这种情况让 AI 标 "FMV unavailable",留给税务师判断。

坑 4:staking 自动复投。每天累积小额 staking 收益、自动复投到本金——CSV 里可能是几百条 0.0001 ETH 的小条目。AI 会一条一条算,结果是正确但繁琐。可以让它按日聚合("all stake rewards on YYYY-MM-DD combined")。

坑 5:把 KYC 个人信息一起贴给 AI。Binance Tax 报告 CSV 里有时含你的邮箱、UID、IP——脱敏后再处理。OpenAI Settings 里关 "Improve the model for everyone",企业 API 默认不训练。

坑 6:信任 AI 的 USD 价格。AI 给你的"2024-03-15 ETH 价格 $3,825"可能是它训练数据里的近似值,不是当日真实价。所有价格必须来自 CoinGecko / CryptoCompare 历史 API,让 AI 显式调用(联网模式)或你自己抓再贴。

导出 Binance Tax Report → 看完整 Prompt 库 →

8. FAQ #

Q1:AI 能直接帮我报税吗?

不能。AI 适合做数据整理和初步成本基础计算,最终的应税认定、扣除项、跨年结转必须由当地持牌税务专业人士复核。本文流程产出的是一份整理过的工作底稿,不是报税表。

Q2:用 ChatGPT 整理报税数据安全吗?

原始 CSV 里如果包含真实身份关联信息(KYC 邮箱、地址、IP)请先脱敏。OpenAI Settings 里可以关闭"Improve the model for everyone"。涉及大额账户建议用 API + 自建工具链而非 Web 对话。

Q3:FIFO 和 LIFO 哪个划算?

这取决于你所在地区的税法和持有时间结构。许多地区强制 FIFO(先进先出),少数允许 LIFO 或特定批次法。AI 可以同时算几种方法对比,但选哪个必须遵守当地法律。

Q4:和 Koinly / CoinTracker / TokenTax 比,AI 自己做更划算吗?

看记录量。少于 200 笔:AI 自己做更便宜(一次 ChatGPT Plus 对话就够);200-2000 笔:用 AI 做前期清洗,然后导入这些工具做最终税务;大于 2000 笔:直接付钱用专业税务软件,AI 只做 ad hoc 查询。

Q5:跨年结转的损失怎么算?

这是 AI 容易出错的地方——它不知道你去年的未利用亏损。把去年的工作底稿一并贴给 AI,明确说"附件 A 是 2024 损益、附件 B 是 2025 损益,请算 2024 未利用亏损在 2025 的结转"。

披露与免责:本页含 Affiliate 推介链接(Binance,带 rel="sponsored"), 通过链接注册我们可能获得佣金,不会增加您的任何费用本文不构成税务、法律或投资建议。 加密税法在各地区差异巨大且频繁更新,最终申报必须由当地持牌税务专业人士处理。 完整披露 →

PromptDeck · 2026-05-15