Everything you need to know about capital gains tax (Doh-KDVP)
Who has to file Doh-KDVP, how the taxable base is computed under FIFO and normalized costs, which rates apply to which year, and how to file by 1 March 2027 — worked to the cent.
Short answer
If you sold shares, ETFs or investment coupons through a foreign broker during the calendar year, you must file the Doh-KDVP form yourself by 1 March 2027 (for 2026). Tax is charged on the gain, matched by FIFO and reduced by 1 % normalized costs on purchase and 1 % on sale. The rate falls with the holding period: 25 % under 5 years, 20 % under 10, 15 % under 15, and 0 % beyond 15 years.
Who has to file Doh-KDVP
You file if you disposed of (sold, exchanged, gifted) securities, other holdings or investment coupons during the tax year. In practice that means shares, ETFs, mutual funds and business shares.
The obligation arises whether you made a gain or a loss, and regardless of the amount. Filing a loss is not pointless — a recognised loss reduces the base on your other sales in the same year.
The crucial point with foreign brokers: nobody withholds the tax for you. A Slovenian brokerage would handle part of the administration; Interactive Brokers, Revolut and eToro do not. The filing is entirely your responsibility.
When you do not need Doh-KDVP
- If you sold nothing during the year — merely holding a position is not a taxable event.
- For dividends — those go on Doh-Div.
- For interest — that goes on Doh-Obr or Doh-DHO.
- For options, CFDs and futures — those go on D-IFI and follow different rules.
- For cryptocurrency — individuals fall under a separate regime, not Doh-KDVP.
Tax rates by holding period
Slovenia rewards holding. The rate is set by the holding period of each individual lot, not of the position as a whole:
| Holding period | Tax rate |
|---|---|
| Under 5 years | 25 % |
| 5 to 10 years | 20 % |
| 10 to 15 years | 15 % |
| Over 15 years | 0 % (exempt) |
This schedule applies to disposals from 2022 onwards. If you are filing for earlier years, note that it used to differ:
| Year of disposal | Under 5y | 5–10y | 10–15y | 15–20y | Over 20y |
|---|---|---|---|---|---|
| 2022 onwards | 25 % | 20 % | 15 % | 0 % | 0 % |
| 2020–2021 | 27.5 % | 20 % | 15 % | 0 % | 0 % |
| Up to 2019 | 25 % | 15 % | 10 % | 5 % | 0 % |
How the taxable base is computed
The base is almost never the plain difference between sale and purchase price. Two steps sit in between.
1. FIFO decides which purchases you sold
FURS requires the FIFO method — the first lot bought is the first sold. If you bought the same security several times, one sale splits across several lots, each with its own cost and its own tax rate. More in the article on the FIFO method.
2. Normalized costs reduce a positive difference
Instead of your actual commissions, the law recognises 1 % on purchase and 1 % on sale (ZDoh-2, art. 97). From tax year 2020 an important restriction applies:
- the deduction is granted only when the difference is positive, and
- only up to that positive difference — so a small gain floors at €0.00 and never becomes a loss;
- a loss is recognised raw, without normalized costs, which therefore cannot deepen it.
A worked example
An investor bought the same ETF twice and sold part of the position in 2026:
- 10 March 2019: bought 50 units at €40 = €2,000
- 10 June 2023: bought 50 units at €60 = €3,000
- 5 September 2026: sold 70 units at €90 = €6,300
Under FIFO, all 50 units from 2019 and 20 units from 2023 are sold:
| Lot | Holding period | Rate | Sale value | Cost | Difference | Normalized costs | Base | Tax |
|---|---|---|---|---|---|---|---|---|
| 50 units (2019) | 7y 5m | 20 % | €4,500.00 | €2,000.00 | €2,500.00 | €65.00 | €2,435.00 | €487.00 |
| 20 units (2023) | 3y 2m | 25 % | €1,800.00 | €1,200.00 | €600.00 | €30.00 | €570.00 | €142.50 |
| €3,005.00 | €629.50 |
Normalized costs are 1 % of the cost and 1 % of the sale value: on the first lot, 1 % × (€2,000 + €4,500) = €65.
Notice what FIFO did: the older lot was both larger and taxed at a lower rate. Had the same sale consumed the newer units, the tax would have been higher — which is why the method is not an administrative detail.
What a loss does
Suppose the same investor also sold another position in 2026 at a raw loss of €800. Losses offset gains in the same year (ZDoh-2, art. 97). Plutko applies the offset to the highest rate bracket first, which is the taxpayer-favourable order:
| Step | Base at 25 % | Base at 20 % | Tax |
|---|---|---|---|
| Before offsetting | €570.00 | €2,435.00 | €629.50 |
| €800 loss — into the 25 % bracket first | €0.00 | €2,435.00 | — |
| Remaining €230 into the 20 % bracket | €0.00 | €2,205.00 | €441.00 |
The same sale, €188.50 less tax — purely because the loss was declared and allocated properly. Anyone who does not declare their losses pays more than they owe.
Foreign currency: Bank of Slovenia rates, day by day
If you bought in dollars, each leg of the trade is converted separately, at the Bank of Slovenia rate for that transaction’s own date. Not at an annual average, and not at the rate on the sale date.
For example: a $1,000 purchase at 1.1000 USD/EUR is €909.09. The same position sold for $1,200 at 1.0500 is €1,142.86. The difference in euros is €233.77, even though the difference in dollars is $200 — part of your gain or loss is created by the exchange rate, and FURS taxes it.
The wash-sale rule: when a loss does not count
If you sell a security at a loss and buy the same security back within 30 days before or after the sale, that loss is not recognised. On the form this is flagged in field F10.
The trap most people miss: the rule does not respect the tax-year boundary, nor the broker boundary. A loss-making sale in December 2026 and a repurchase in January 2027 — at anyone — cancels the 2026 loss. More in the article on the wash-sale rule.
How to file
- Gather statements for all years, not only the one you are filing. FIFO needs the purchase history; exporting a single calendar year finds the wrong acquisitions and produces an incorrect return.
- Compute the base — manually or with a tool.
- Log in to eDavki with a digital certificate (SIGEN-CA) or the smsPASS mobile identity.
- Upload the XML instead of typing every row by hand.
- Review and file by 1 March 2027 for tax year 2026. The statutory deadline is 28 February, but that day falls on a Sunday, so it moves to the next working day.
What Plutko does
Plutko reads statements from seven platforms — IBKR, Revolut, eToro, Trading 212, Trade Republic, XTB and Vantage — merges them into one return and automatically:
- matches sales to purchases under FIFO and sets each lot’s rate by holding period and year of disposal;
- converts each leg to EUR at the Bank of Slovenia rate for that transaction’s date;
- applies normalized costs under the rule in force for that year of disposal;
- checks the ±30-day wash-sale window, across the year boundary and across brokers, and fills field F10;
- offsets losses against gains in the same year;
- generates the Doh-KDVP XML, ready to import into eDavki.
The full methodology, with article references, is published on the Accuracy page — you can check it before you file anything.
Frequently asked questions
Do I have to file even if I made a loss?
Yes. The obligation arises on disposal, not on profit. Declaring a loss is also in your interest: a recognised loss reduces the taxable base on your other sales in the same year, which can mean several hundred euros less tax.
How is the holding period counted?
From the day each individual lot was acquired to the day of disposal. Because FIFO sells the oldest lots first, one sale often carries several different holding periods and therefore several different rates at once.
Do gains and losses on shares offset against options?
No. Securities (Doh-KDVP) and derivatives (D-IFI) are separate categories with separate forms. A loss on CFDs does not reduce the tax on a share sale, and vice versa.
What if I sold an accumulating ETF?
For Doh-KDVP what counts is the disposal of the unit. An accumulating ETF pays out no dividends while you hold it, so there is no Doh-Div in the meantime; the entire result is taxed on sale.
I sold shares I received from my employer (RSUs). Where do they go?
Receiving shares from an employer is generally employment income and follows its own path; the subsequent sale of those shares is a disposal and belongs on Doh-KDVP. The acquisition value is the value at vesting, and the holding period runs from then.
What happens if I miss the deadline?
You can still file through a voluntary disclosure (samoprijava). If you report the omission yourself, before FURS discovers it, you generally avoid the fine and pay the tax with interest. This applies to several years back — see the page on voluntary disclosure.
Why does my calculation not match the figure my broker shows?
Because your broker is computing something else. It generally shows the gain in the original currency, often at average cost rather than FIFO, without normalized costs and without the Slovenian rate schedule. What governs for FURS is the ZDoh-2 calculation, not the number in the broker’s app.
What rate applies if I sold shares in 2021?
27.5 % for a holding period under five years. The higher rate applied in 2020 and 2021 and returned to 25 % from 2022. What governs is the year of disposal.
Check your number without registering: calculate your capital gains tax.