Import, then inspect
Koinly, Summ or a generic CSV. Exceptions, duplicates and missing cost surface before a single journal is marked ready.
- Duplicate rows flagged, never silently merged
- Missing cost basis blocks readiness, not rounded to zero
- Every source row kept — nothing is dropped on import
