Heb je een CSV-export die niet ons standaardformaat volgt? Met de kolom-mapper koppel je je eigen kolommen aan de velden van Cryptotax, zonder je bestand om te bouwen.
Laatste update: juni 2026
Heb je een CSV-export van een exchange of wallet die nog niet automatisch wordt herkend, en wil je je transacties niet eerst overtypen in ons sjabloon? Met de kolom-mapper upload je je bestand in zijn eigen formaat en koppel je zelf de kolommen aan de velden die Cryptotax verwacht. Je mapping wordt onthouden, zodat een volgende export van hetzelfde formaat meteen wordt verwerkt.
Dit is het verschil met het vaste Custom CSV-sjabloon: bij het sjabloon pas jij je data aan ons formaat aan. Met de kolom-mapper laat je je bestand zoals het is en vertel je Cryptotax eenmalig hoe het te lezen.
Gebruik de kolom-mapper voor:
- Een exchange of broker die nog niet automatisch wordt ondersteund
- Een export uit een andere belastingtool met andere kolomnamen
- Een eigen administratie (Excel, Google Sheets) die je niet wil ombouwen
Hoe het werkt
- Log in op Cryptotax → Account toevoegen → CSV Import → Custom CSV.
- Upload je bestand zoals je het van je exchange of tool kreeg.
- Herkent Cryptotax de kolomnamen niet, dan word je automatisch naar de kolom-mapper geleid. Herkent het de kolommen wel, dan wordt je bestand meteen geïmporteerd en hoef je niets te mappen.
- Doorloop de mapper (zie hieronder) en bevestig.
- Controleer het resultaat in je transactie-overzicht.
De volgende keer dat je een export met dezelfde kolomstructuur uploadt, herkent Cryptotax het formaat aan je eerdere mapping en verwerkt het bestand automatisch. Je hoeft de stappen dan niet opnieuw te doen.
De kolom-mapper, stap voor stap
1. Kolommen toewijzen
Je ziet de eerste rijen uit je bestand als voorbeeld. Voor elk veld dat Cryptotax nodig heeft, kies je welke kolom uit je bestand erbij hoort. De velden zijn dezelfde als in het Custom CSV-formaat:
| Veld | Verplicht | Beschrijving |
|---|---|---|
date | Ja | Het tijdstip van de transactie |
type | Ja | Het transactietype (koop, verkoop, swap, ...) |
asset | Ja | De ticker van de cryptomunt |
amount | Ja | De hoeveelheid |
price_eur | Nee | EUR-prijs per eenheid. Niet gemapt? Dan zoekt Cryptotax de prijs automatisch op. |
fee_amount | Nee | Betaalde kost (commissie) |
fee_asset | Nee | Het asset waarmee de kost is betaald |
exchange | Nee | Naam van de exchange of bron |
tx_id | Nee | Unieke transactie-ID voor deduplicatie en voor het koppelen van swap-benen |
notes | Nee | Vrije notitie (verschijnt in het boekhoudrapport) |
Je moet minstens date, type, asset en amount toewijzen. De optionele velden laat je gewoon leeg als je bestand ze niet bevat.
Heeft jouw export geen aparte type-kolom, maar één rij per trade met een ontvangen kant en een verstuurde kant (de "Universal"-export van Koinly, of Zodl)? Lees dan eerst de sectie Ontvangen/Verstuurd: één rij per trade verderop, want dan map je andere velden.
2. Transactietypes toewijzen
Elke exchange noemt transacties anders. Cryptotax toont de ruwe waarden die in jouw type-kolom voorkomen (bijvoorbeeld Buy, Aankoop, Deposit, Reward), en jij koppelt ze aan een van de standaardtypes:
| Type | Fiscale behandeling |
|---|---|
BUY | Verwerving (aankoop met EUR) |
SELL | Vervreemding (belastbaar event) |
TRADE | Crypto-naar-crypto swap (vervreemding + verwerving) |
DEPOSIT | Ontvangen van externe bron (interne transfer) |
WITHDRAWAL | Verstuurd naar extern adres (interne transfer) |
INCOME | Staking, mining, airdrops (belastbaar inkomen) |
GIFT_IN | Ontvangen als gift |
GIFT_OUT | Weggegeven als gift |
LOST | Verloren, gestolen of gehackt |
FEE | Losstaande kost |
Een ruwe waarde die je niet toewijst, wordt geïmporteerd als onbekend (UNCLASSIFIED). De transactie gaat niet verloren: ze verschijnt in je overzicht zodat je het type later met de hand kan zetten. Zo blijft de kostenbasis van je portefeuille intact, ook als één type-waarde nog niet duidelijk is.
3. Notatie-instellingen
Hier vertel je Cryptotax hoe de getallen en datums in jouw bestand zijn genoteerd:
- Datumformaat: laat leeg om automatisch te herkennen (ISO 8601). Wijkt je bestand af, geef dan het patroon op, bijvoorbeeld
dd/MM/yyyy HH:mm. - Tijdzone: de zone waarin de datums in het bestand staan. Cryptotax rekent intern alles om naar UTC.
- Decimaalteken: punt (
1234.56) of komma (1.234,56). Belangrijk voor exports uit Europese tools.
Je kan de mapping ook een naam geven (bijvoorbeeld "MijnExchange export"), zodat je ze later makkelijk herkent.
4. Controleren en importeren
Voor je importeert, toont Cryptotax een voorbeeld van het resultaat en markeert het de rijen met problemen. Die worden overgeslagen of als onbekend geïmporteerd, zodat één foute regel je hele upload niet blokkeert. Klopt alles, dan bevestig je met Importeren.
Ontvangen/Verstuurd: één rij per trade
Sommige tools exporteren een trade niet als twee aparte regels, maar als één rij die zowel wat je ontving als wat je verstuurde bevat, elk met een eigen hoeveelheid en munt. De bekendste bronnen zijn de "Universal"-export van Koinly en Zodl. De kolom-mapper ondersteunt deze vorm volledig: je hoeft je bestand niet om te bouwen naar één rij per been.
Zodra je minstens één van de onderstaande velden toewijst, schakelt de mapper over naar de Ontvangen/Verstuurd-modus. In die modus bepaalt Cryptotax de richting van de transactie aan welke kant van de rij is ingevuld, en niet aan een type-kolom. Je hoeft type, asset en amount dan niet te mappen.
| Veld | Beschrijving |
|---|---|
received_amount | De ontvangen hoeveelheid (wat je binnenkreeg) |
received_asset | De munt van de ontvangen kant |
sent_amount | De verstuurde hoeveelheid (wat je weggaf) |
sent_asset | De munt van de verstuurde kant |
Een kant is pas volledig wanneer je zowel de hoeveelheid als de munt ervan toewijst. In Ontvangen/Verstuurd-modus moet je date mappen plus minstens één volledige kant. Mapt je bestand beide kanten, dan map je ze allebei.
Hoe een rij wordt omgezet
Cryptotax leest elke rij en zet ze om naar de juiste transactie(s):
- Alleen een ontvangen kant (geen verstuurde kant) → een
DEPOSIT: je ontving iets van buiten. - Alleen een verstuurde kant → een
WITHDRAWAL: je stuurde iets naar buiten. - Beide kanten, verschillende munten → een volwaardige trade: een vervreemding van de verstuurde munt plus een verwerving van de ontvangen munt. De twee benen worden automatisch aan elkaar gekoppeld, zonder dat je een
tx_idhoeft te mappen. Eén rij is hier al de volledige trade. - Beide kanten, dezelfde munt (bijvoorbeeld een correctie of een export-artefact) → één
UNCLASSIFIED-rij met het netto verschil. Dit is geen echte swap, dus Cryptotax boekt geen vervreemding, maar zet de rij ter controle in je overzicht.
Kosten in deze modus
Een rij draagt één kost (fee_amount, eventueel met fee_asset). Die kost hangt aan de verstuurde, vervreemde kant wanneer hij in diezelfde munt is uitgedrukt. Is de kost in een andere munt betaald (bijvoorbeeld je verkoopt ETH maar betaalt de commissie in USDC), dan maakt Cryptotax er een aparte FEE-rij van, zodat de kost correct wordt gewaardeerd in zijn eigen munt.
Swaps en crypto-naar-crypto (één rij per been)
Heeft jouw export wel een type-kolom en staat elk been van een swap op een eigen regel? Dan bestaat een crypto-naar-crypto swap uit twee regels met hetzelfde tx_id: het uitgaande been (wat je verkoopt) en het inkomende been (wat je ontvangt). Zorg dus dat je de tx_id-kolom mapt als je bestand zulke swaps bevat, anders worden de twee benen niet aan elkaar gekoppeld.
Dit is de één-munt-per-rij-regel en geldt alleen voor exports met een type-kolom. Werkt jouw export met één rij per trade (een ontvangen en een verstuurde kant in dezelfde regel), dan heb je geen tx_id nodig: zie Ontvangen/Verstuurd: één rij per trade hierboven. Meer uitleg over het vaste sjabloon vind je op de pagina Custom CSV importeren.
Veelgestelde vragen
Moet ik mijn bestand nog aanpassen?
Nee. Dat is net het verschil met het vaste sjabloon: je upload je export zoals je hem kreeg en mapt de kolommen in de wizard.
Mijn export uit Koinly of Zodl heeft één rij per trade. Wordt dat ondersteund?
Ja. Map de velden received_amount, received_asset, sent_amount en sent_asset; de mapper schakelt dan over naar de Ontvangen/Verstuurd-modus en koppelt de twee kanten van elke rij automatisch tot één trade. Je hoeft geen tx_id te mappen.
Wat als ik een kolom verkeerd heb toegewezen?
Verwijder het CSV-account en upload het bestand opnieuw. Je doorloopt de mapper dan opnieuw en kan de toewijzing corrigeren.
Wordt mijn mapping bewaard?
Ja. Cryptotax onthoudt je mapping per kolomstructuur. Een volgende export van hetzelfde formaat wordt automatisch verwerkt, zonder dat je opnieuw hoeft te mappen.
Wat als mijn export wel wordt herkend?
Dan sla je de mapper helemaal over: je bestand wordt meteen geïmporteerd. De kolom-mapper verschijnt alleen wanneer Cryptotax de kolomnamen niet herkent.