Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
Use one chronological ledger for every Korean exchange, overseas exchange and wallet, then reconcile transfers between your own accounts. Keep the untouched CSV or PDF export behind each normalized row, record KRW values, fees, transaction IDs and valuation sources, and never treat an internal transfer as a sale or purchase. This approach prepares you for Korea’s virtual-asset income-tax rules currently scheduled to apply from 1 January 2027. It also preserves the evidence needed when an overseas platform cannot provide records to Korean tax authorities. Because official Korean materials use different wording for the cost-basis method, confirm the operative rule with the National Tax Service (NTS) or a qualified Korean tax professional before filing.
What should a Korean taxpayer do first?
Start by making an account inventory, not by importing whichever exchange file is easiest to download. List every domestic exchange account, overseas exchange, self-custody wallet, staking account and account that was closed during the period. Include years in which an account had only deposits, withdrawals or transfers. Give each source a stable name such as Exchange-A:KRW or Wallet-01:BTC; that label will follow every row in the consolidated ledger.
As an Amazon Associate I earn from qualifying purchases.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Korea’s tax framework is time-sensitive. The NTS overview and the National Assembly Budget Office (NABO) describe 1 January 2027 as the scheduled start date for tax on virtual-asset transfers and lending. The NTS describes taxable income as proceeds less actual acquisition cost and related expenses, a 2.5 million KRW annual basic exemption, a 20% rate and annual netting of gains and losses, with reporting in the following May filing period. Recheck the current NTS overview and the law in force before submitting a return; an implementation date or detailed rule can change.
The scale of the recordkeeping problem is substantial: NABO reported 11.13 million domestic virtual-asset exchange user accounts and average daily trading volume of about KRW 5.4 trillion in the second half of 2025. Those figures do not change your individual tax calculation, but they explain why a single year-end balance or one exchange statement cannot stand in for a complete acquisition history.
Popular on Amazon
- Ideal for Gifting
- Ideal for a bookworm
- Compact for travelling
Which files and evidence should be preserved?
Download the complete transaction history from every source and retain the original file in read-only storage. Do not overwrite a CSV after changing a date, decimal place or symbol. Give each file a unique filename containing the source, account identifier, coverage dates and download date, for example upbit_account123_2019-01-01_2026-12-31_download-2026-11-13.csv. Keep PDFs, screenshots of account ownership and relevant correspondence when a platform cannot export machine-readable data.
Your working ledger is a normalized copy; the original export is the evidence. Add a column containing the original filename and the source row or transaction ID so that a reviewer can move from a calculated figure back to the exact record. Preserve API responses as well as CSVs if an API is used, including the request date and the exchange’s reported time zone.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
What columns belong in a consolidated cost-basis ledger?
The NTS transaction form distinguishes won sales, purchases, crypto-to-crypto disposals and acquisitions, lending income, transfers out, deposits in and other acquisitions such as staking, hard forks and airdrops. Build your ledger so those distinctions are visible rather than collapsing everything into “buy” or “sell.” The following fields cover the evidence the official forms ask for and the reconciliation work that multiple accounts require.
| Field | What to record | Why it matters |
|---|---|---|
| Source and account | Exchange or wallet name, country, account label and reporting owner | Separates domestic, overseas and self-custody records and identifies the taxpayer’s own accounts |
| Original evidence | Untouched filename, source row ID, transaction ID and export date | Lets a reviewer reproduce every normalized value |
| Time | Source timestamp, stated time zone and normalized UTC or Korea Standard Time value | Prevents a transaction near midnight from entering the wrong tax year |
| Asset and quantity | Symbol, chain where relevant, exact decimal quantity and sign | Preserves precision for partial disposals and fee deductions |
| Category | Purchase, sale, crypto-to-crypto exchange, lending income, transfer, deposit, staking, airdrop, hard fork or other acquisition | Maps activity to the categories used by Korean reporting forms |
| Value | Gross KRW proceeds or acquisition value, currency of the original trade, exchange rate, valuation source and valuation timestamp | Documents how a non-KRW transaction became a KRW figure |
| Fees | Trading fee, withdrawal or network fee, currency paid and whether it reduced quantity or cash proceeds | Separates deductible related expenses from an asset movement |
| Counterparty and route | Sending account, receiving account, wallet address, network and transaction hash | Shows whether a deposit is an internal transfer, an external receipt or an unexplained event |
| Basis status | Acquisition-cost source, linked lot or calculation batch, confidence level and missing-basis flag | Makes uncertain records reviewable instead of silently inventing a cost |
Keep both the original currency and the KRW result. Rounding a token quantity or converting every historical trade at today’s price destroys information needed to calculate a partial disposal. If the source reports a balance before the transaction, retain that field too; Form 30-3 asks for the balance before a transaction in relevant entries.
How do you classify activity without creating a taxable sale?
Classify the economic event first, then calculate its value. A transfer from your own exchange account to your own wallet is a movement of the same asset, not a purchase or sale. A crypto-to-crypto swap normally has both a disposal of the asset given up and an acquisition of the asset received; preserving both legs prevents the received asset from appearing with a zero or guessed basis.
| Source event | Ledger treatment | Evidence to retain |
|---|---|---|
| KRW purchase | Acquisition quantity, KRW consideration and attributable fee | Trade ID, order or fill record and fee currency |
| KRW sale | Disposal quantity, gross KRW proceeds, fee and linked acquisition basis | Trade ID, fills and the lot or moving-average calculation used |
| Crypto-to-crypto exchange | Disposal of the asset surrendered and acquisition of the asset received, with a contemporaneous KRW valuation | Both trade legs, pair, timestamp, rate source and fees |
| Withdrawal to your wallet | Transfer out; reduce the exchange balance by the net quantity and record the network fee separately | Withdrawal ID, hash, destination address, network and fee |
| Deposit from your exchange or wallet | Transfer in when matched to an outgoing record; otherwise flag as an unmatched receipt pending evidence | Deposit ID, hash, source address or account and matching notes |
| Staking or lending receipt | Other acquisition or lending income as appropriate to the source record; create a new basis entry using the documented valuation | Reward statement, accrual or payment timestamp and valuation input |
| Airdrop or hard fork | Other acquisition, with a separate event ID and valuation or an explicitly unresolved value | Platform notice, chain record and valuation evidence |
Do not infer that an asset disappeared because an exchange export has no row for a withdrawal fee. Reconcile the quantity debited, the network fee and the quantity credited at the destination. A one-unit discrepancy can be a fee, a rounding convention, a failed transaction or a duplicate import; it should have a written explanation.
Also popular on Amazon
How do you match transfers across Korean exchanges and wallets?
Pair an outgoing record with an incoming record using several signals, not a timestamp alone. The strongest match is the same transaction hash and destination or source address on the same network. When no hash is available, compare the asset, net quantity after the network fee, close timestamps converted to one time zone, and the sending and receiving account labels. Record the match confidence and leave an exception when the evidence is incomplete.
- Sort all transfers by asset, network and normalized timestamp.
- For each withdrawal, record the gross amount, network fee, net amount, destination address and hash.
- Search deposits for the same hash; if absent, search for the same asset and net amount within a reasonable time window.
- Confirm that the destination account belongs to the taxpayer. A similar address is not proof of ownership.
- Link the two rows with a transfer ID and mark both sides as internal movement, leaving acquisition basis unchanged.
- For an unmatched deposit, check blockchain explorers, the exchange’s deposit memo or tag, and records from a third-party sender. Do not assign an invented purchase price.
Overseas activity needs extra diligence. NABO notes that overseas exchanges do not have the same duty to submit transaction records to Korean tax authorities, so acquisition costs and histories can be difficult to verify. Download exports while the account is active, preserve local time-zone information and retain wallet addresses and transaction hashes that can corroborate a later reconstruction.
How should non-KRW trades be valued?
For a trade quoted in US dollars, another fiat currency or a crypto pair, retain the contemporaneous inputs used to derive a KRW value: the quoted price, quantity, currency, exchange-rate source and timestamp. Do not apply a present-day price to a historical transaction. If your software supplies a KRW conversion, export the rate table or calculation detail and record the software version or calculation date.
A crypto-to-crypto exchange requires a defensible value for both sides at the event time. For example, if Asset A is exchanged for Asset B, record the quantity of A disposed, the quantity of B acquired, the pair price and the KRW conversion used. The fee may be charged in a third asset; keep that fee as its own quantity and value rather than hiding it in the swap rate.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsWhat happens to assets held before 1 January 2027?
For assets already held when the tax begins, the Income Tax Act and NTS overview describe a deemed acquisition value equal to the greater of the actual acquisition cost and the market value on 31 December 2026. Preserve the historical record anyway. You need it to identify the holding, demonstrate that the asset was owned before the start date and determine which value is greater; a guessed historical cost is not a substitute for evidence.
Create a year-end snapshot for each account and wallet showing asset, quantity, source balance, valuation date, market-value input and any transfer reconciliation. Keep the calculation separate from the transaction ledger so that the deemed-value adjustment is transparent and reversible if the law or official guidance changes.
Also popular on Amazon
What if the acquisition cost cannot be verified?
Article 37 of the Income Tax Act allows a prescribed deemed necessary-expense treatment for qualifying post-2027 acquisitions whose actual cost cannot be verified, capped at 50% of the transfer value. The rule is limited: the available data’s official-law summary says no additional incidental expenses are included under that exception, and eligibility and prescribed conditions must be checked before relying on it.
Mark a missing-basis record explicitly, retain every attempt to recover the source file and do not use the exception simply because importing data is inconvenient. A reconstructed cost supported by bank records, trade confirmations, blockchain evidence and an exchange statement is materially different from an unsupported estimate.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Which Korean cost-basis method should you use?
Do not treat one method as definitively settled from the current English summaries alone. The NTS overview describes a total-average method for residents, while the official transaction and annual-form instructions refer to a moving-average method in specified fields. The Form 30-3 instructions state in Korean: “양도가액에 대응되는 필요경비(취득가액과 수수료 등 부대비용)를 이동평균법에 따라 계산하여 적습니다.” This says to enter necessary expenses corresponding to transfer value, including acquisition cost and fees or incidental expenses, calculated under the moving-average method.
The annual summary form also refers to moving-average cost, while the NTS overview uses different wording. Until the NTS or a qualified adviser resolves which instruction applies to your filing and transaction type, keep a calculation that can be rerun under both interpretations. Do not blend the outputs or silently relabel a moving-average result as total-average. Save the official guidance version and the date on which you relied on it.
How do you reconcile the ledger to year-end balances?
Reconciliation is the control that catches missing withdrawals, duplicated imports and decimal errors. For every asset and account, calculate:
opening quantity + acquisitions + matched deposits + rewards − disposals − matched withdrawals − fees = closing quantity
Also popular on Amazon
- Capture the opening balance from the prior year’s reconciled ledger or the earliest reliable statement.
- Aggregate each category separately; do not net a deposit against a withdrawal before confirming that they are linked.
- Compare the calculated closing quantity with the exchange or wallet balance at the same timestamp.
- Investigate differences by checking network fees, pending transactions, failed trades, staking lockups, dust balances, symbol changes and duplicate rows.
- Write a reconciliation note for every unresolved difference, including the amount, likely cause, evidence checked and next action.
An exchange’s year-end balance is a control total, not an acquisition history. A matching balance can still hide a missing trade and a compensating duplicate, so retain transaction-level evidence even after the arithmetic agrees.
What should the filing-ready package contain?
Before preparing a 2027 return, assemble a package that a second person could audit without access to your exchange passwords:
- One normalized ledger covering every exchange, overseas account and wallet.
- Untouched source exports, PDFs, API files and a manifest linking each file to ledger rows.
- A transfer-matching schedule with hashes, addresses, networks, timestamps and confidence flags.
- KRW valuation schedules for non-KRW trades, including rate sources and timestamps.
- Acquisition-basis calculations, the method and official guidance version used, and any alternative calculation retained because of the total-average/moving-average wording conflict.
- Pre-2027 holdings snapshots and the 31 December 2026 market-value inputs used for the deemed-value rule.
- An exceptions log for missing basis, unmatched deposits, unexplained balance changes, staking, airdrops, hard forks and duplicate rows.
- A reconciliation report for each asset and account at the start and end of every tax year.
Encrypt the archive, restrict access and keep a second backup in a different location. Never store exchange passwords or API keys in the ledger archive. If an adviser prepares the return, provide read-only evidence and document any transformation they make to the normalized data.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Can software import multiple Korean exchanges reliably?
Software can reduce manual work, but a vendor’s exchange list does not prove that your full history, fees or internal transfers will import correctly. Kontaxt describes an Upbit file-upload and calculation workflow. CryptoTax.cloud describes a CSV calculator and lists Upbit, Bithumb, Coinone and Binance among its exchange choices. These are vendor statements, not a guarantee of tax correctness or complete coverage.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Evaluate any tool against the records you actually have:
- Does it accept the exact CSV or PDF format and the full historical date range?
- Does it preserve original row IDs, timestamps and decimal precision?
- Are deposits, withdrawals, network fees, staking, lending, airdrops and hard forks imported as distinct events?
- Can it match transfers across exchanges and wallets, and show unmatched items for review?
- Does it support KRW valuation for crypto-to-crypto trades and expose the rate source?
- Can it export itemized calculations and evidence that map to Forms 30-3 and 30-4?
- Which cost-basis method does it implement, and can the method be changed if official Korean guidance changes?
- What are the privacy, retention and deletion terms for uploaded financial records?
Run a small copy of your real history first, compare imported totals with the source statement and inspect every unmatched transfer. Keep your own normalized ledger even if the software produces a polished tax report; vendor output should be a calculation aid, not the sole evidence.
Also popular on Amazon
- It can be a gift option
- Comes with secure packaging
- Helpful in various ways
What are the most common failure modes?
- Importing only trades
- Withdrawals, deposits, rewards and fees then appear as unexplained gains or losses. Import all event types and reconcile quantity, not just cash totals.
- Counting an internal transfer as a sale
- A withdrawal from one of your accounts and a deposit into another should be linked as movement. The transfer hash, net quantity and ownership evidence support that classification.
- Using a current price for an old swap
- Historical KRW valuation must use contemporaneous inputs. Preserve the rate source and timestamp used for each non-KRW event.
- Dropping the original export after cleanup
- Normalization changes are difficult to prove without the untouched file. Store originals and a row-level mapping.
- Assuming the exchange has the complete history
- Closed accounts, delisted assets, API limits and overseas platforms can leave gaps. Keep a source inventory and request missing records promptly.
- Choosing a method by software default
- The official NTS overview and form instructions currently use different wording. Document the method and obtain current clarification before filing.
How we picked this recordkeeping approach
The approach follows the fields and categories in the NTS transaction and annual-summary forms, adds the evidence needed to reconcile multiple accounts, and addresses the overseas-record gap identified by NABO. It prioritizes reversibility, source-file preservation, transfer matching, KRW valuation evidence and an explicit exception log over a single automated number. No software import or calculation has been independently tested here.
What should you do before filing in May?
Set a calendar checkpoint before the May filing period to verify the law and NTS forms then in force. Re-run the ledger through the confirmed cost-basis method, review every missing-basis and unmatched-transfer flag, apply any valid pre-start deemed-value rule, and have a Korean tax professional review unusual lending, staking, airdrop, hard-fork or overseas transactions. Keep the evidence package and the final submitted figures together so a later question can be answered from the same records.
Frequently Asked Questions
Do I have to keep records from a Korean exchange account that I closed?
Yes. Treat a closed account as part of the historical account inventory and retain its final export, closure confirmation and any bank or wallet records used to reconcile it. Closing access does not remove the need to support acquisition cost or transfers made while the account was active.
How should I handle a crypto swap when the exchange reports only one combined row?
Preserve the combined row, then create linked disposal and acquisition legs in the normalized ledger with the same source ID. Record the pair, quantities, contemporaneous KRW valuation and fee allocation, and flag the transformation so it can be traced back to the original export.
What can I do when a transfer has no transaction hash?
Use the source and destination account, asset, net quantity, normalized timestamps and wallet address or memo to seek a match. If the evidence remains inconclusive, leave both records unmatched, document the searches performed and ask the exchange or network custodian for a withdrawal or deposit statement rather than guessing.
Is a screenshot of a wallet balance enough evidence for cost basis?
A screenshot can support an ownership or year-end-balance claim, but it does not show how the asset was acquired. Pair it with transaction history, blockchain hashes, exchange exports or bank records and retain the capture date and wallet address.




