Canonical classification examples
Nineteen verbatim request/response captures from the live CryptoTaxEdge engine — real transactions, independently sourced, saved exactly as the API returned them. Each file is stamped with its capture date and policy version, and the whole pack is replayed against the live engine nightly: if the engine's answer for any capture drifts, the site build fails rather than publishing a stale claim.
Read the needs_review rows first. 8 of the 19 captures return needs_review with taxable: null — that is the engine declining to guess when the evidence does not support a confident treatment. A sample pack of nothing but high-confidence wins would be marketing; this is the actual distribution of one capture session, deferrals included.
The pack
Captured 2026-08-04 under policy version us-default-2026-08. Every row links to the raw JSON, which validates against the published cte-classification-v1 schema. Wire values are documented in the classification taxonomy.
| Capture | Chain | Category | Treatment | taxable | Confidence | Protocol |
|---|---|---|---|---|---|---|
| 01-transfer.json | ethereum | transfer | non_taxable | false | 70 | ERC-20 Transfer |
| 02-needs_review.json | ethereum | needs_review | needs_review | null | 0 | Native ETH transfer (no protocol) |
| 03-needs_review.json | ethereum | needs_review | needs_review | null | 0 | None (native ETH transfer) |
| 04-transfer.json | ethereum | transfer | non_taxable | false | 70 | ERC-20 Transfer |
| 05-transfer.json | ethereum | transfer | non_taxable | false | 70 | ERC-20 Transfer |
| 06-transfer.json | ethereum | transfer | non_taxable | false | 70 | ERC-20 Transfer |
| 07-transfer.json | ethereum | transfer | non_taxable | false | 70 | ERC-20 Transfer |
| 08-needs_review.json | ethereum | needs_review | needs_review | null | 0 | AlloXCheck (unidentified protocol) |
| 09-transfer.json | ethereum | transfer | non_taxable | false | 70 | ERC-20 Transfer |
| 10-fee_payment.json | ethereum | fee_payment | expense | false | 52 | UMA Protocol: VotingV2 |
| 11-needs_review.json | ethereum | needs_review | needs_review | null | 0 | Uniswap V4 |
| 12-needs_review.json | ethereum | needs_review | needs_review | null | 0 | WETH |
| 13-transfer.json | ethereum | transfer | non_taxable | false | 70 | ERC-20 Transfer |
| 14-needs_review.json | ethereum | needs_review | needs_review | null | 0 | None (plain ETH transfer) |
| 15-needs_review.json | ethereum | needs_review | needs_review | null | 0 | Native ETH transfer |
| 16-needs_review.json | ethereum | needs_review | needs_review | null | 0 | Native ETH transfer (no protocol) |
| 17-swap.json | solana | swap | disposal | true | 80 | Jupiter |
| 18-swap.json | solana | swap | disposal | true | 80 | Pump amm |
| 19-swap.json | solana | swap | disposal | true | 80 | Jupiter |
What to do with these
Use them as fixtures for an integration before you mint a key, as ground truth for what the classification API actually returns (including the shape of a deferral), or as a check against the OpenAPI 3.1 spec. To reproduce any row live, enter its transaction hash in the Classification Explorer.
Not tax advice. CryptoTaxEdge is software, not a licensed tax advisor. These captures are engine output for specific public transactions, informational only. Verify results and consult a qualified tax professional before filing.