ZenLedger Integration
How to import TaxFormatter data into ZenLedger
The REST API reference, plus guides for the dashboard uploader.
How to import TaxFormatter data into ZenLedger
ZenLedger is a comprehensive crypto tax platform. Here's how to use TaxFormatter with it.
ZenLedger offers automated API connections and tax reporting.
Best for:
ZenLedger connects directly to your exchanges:
Advantage: Automatic, always updated
When to use: If you can provide API keys
If using APIs directly: You don't need TaxFormatter for ZenLedger import.
But still use TaxFormatter to:
Manual import for users who can't/won't use APIs:
This is where TaxFormatter excels.
ZenLedger will ask: "What type of transactions are these?"
Select:
Choose Mixed to include all transaction types.
If ZenLedger asks for column mapping:
TaxFormatter Column → ZenLedger Field
Date → Transaction Date
Pair → Currency Pair
Type → Transaction Type
Amount → Amount
Price → Price/Rate
Fee → Fee
Cost Basis → Cost Basis (if available)
Usually auto-maps. If needed, select from dropdowns.
ZenLedger shows preview of imported data:
Transactions to import: 847
Sample:
- BUY 0.5 BTC @ $42,525.50 on 2025-01-15 ✓
- SELL 0.5 BTC @ $45,000 on 2025-01-20 ✓
Verify count and spot-check a few transactions.
Click Import or Confirm
ZenLedger processes and calculates gains/losses.
1. Export from exchange
↓
2. Format in TaxFormatter
↓
3. Review TaxFormatter output
↓
4. If API available: Connect to ZenLedger
If no API: Upload TaxFormatter CSV to ZenLedger
↓
5. Verify in ZenLedger
↓
6. Generate tax report
↓
7. File taxes
Even if you use ZenLedger's API connections:
ZenLedger has AI detection for:
TaxFormatter provides detailed explanations of each flag.
Use TaxFormatter notes to understand what ZenLedger flagged.
ZenLedger alerts: "Wash sale detected"
You think: "What does that mean?"
TaxFormatter explains: "You sold BTC at a loss on Jan 16, bought again on Jan 20. Loss of $2,500 disallowed. Cost basis of new purchase increased."
Now you understand the impact.
CSV shows:
Cost Basis: 42525.50 [FLAG: Wash Sale]
In ZenLedger:
In TaxFormatter:
Type: STAKING
Amount: 0.125 ETH
FMV: $2,400
Notes: "Staking income - $300 ordinary income"
In ZenLedger:
TaxFormatter notes verify:
In TaxFormatter:
Type: AIRDROP
Amount: 100 UNI
FMV: $550
Notes: "Airdrop income - $550 ordinary income"
In ZenLedger:
Type: SWAP (for DEX trades)
Type: LP_DEPOSIT (liquidity pool deposits)
Type: LP_WITHDRAW (liquidity pool withdrawal)
Type: LP_REWARD (farming income)
In ZenLedger:
TaxFormatter notes explain tax treatment.
Option A: All APIs to ZenLedger
Option B: TaxFormatter for all
Option C: Hybrid (Recommended)
After importing:
ZenLedger creates:
Use for:
After importing to ZenLedger:
Problem: TaxFormatter 847, ZenLedger 840
Solution:
Problem: Different gains than expected
Solution:
Problem: ZenLedger adjusted differently than TaxFormatter
Solution:
Problem: "Invalid file format" error
Solution:
Use TaxFormatter first
Review TaxFormatter output
Import clean data to ZenLedger
Verify in ZenLedger
Generate and review report
✅ Want to verify API imports
✅ Have wallets without API (MetaMask, hardware, etc.)
✅ Explanations + clean data
✅ Cross-check before filing
✅ Complex portfolios
✅ Multiple years
| Cost | Purpose | |
|---|---|---|
| TaxFormatter | Free plan; paid plans add volume | Clean CSV + AI insights |
| ZenLedger Free | $0 | API + basic reports |
| ZenLedger Pro | $199-599 | Full tax reports + support |
Value stack:
Choose based on your portfolio complexity and budget.
1. TaxFormatter: Clean data + explain issues
↓
2. ZenLedger: Generate tax report ($0-599)
↓
3. CPA/TurboTax: File taxes
↓
4. IRS: Submit with confidence ✓
Done! You're all set.