It can be overwhelming to start buying ETFs, especially for non-German speakers. Here is a step by step guide to buy ETFs at Flatex in Germany (directly, not savings plan aka Sparplan).


UPD(2020-01-11): Flatex introduces percentage-based account fee (see details and alternatives here). If you were going to choose Flatex, please take this into account.

I personally started investing with Flatex too (funny fact, this is not a referral link, their referral system conditions are weird). They have constant fees (5-8 Euro) to buy and sell ETFs. To the best of my knowledge all other brokers (except onvista and its derivatives) have percentage-based fees, which I avoid (here is a post why - basically paying 0.5% of all my networth is not fun). I already did an overview of German brokers before. I also started using Interactive Brokers in parallel with Flatex to diversify across brokers and to save more on the transaction fees. However, Interactive Brokers won’t do your investing related taxes, while Flatex will, so for beginners Flatex is definitely a much better choice. If you are curious about Interactive Brokers anyway, I wrote about their commissions, monthly fee and how to buy ETFs there.

I am aware of two disadvantages of Flatex. First, they charge 0.4% (Negativzinsen) each year of all the cash you have with them. This is actually applied each day (as ~0.4%/365 = 0.00109%) and rounded down. E.g. having 1k EUR with them for one day will result in 1 cent charge. Solution: just don’t store cash for long. One should be careful, though, and don’t let the account be negative for long, because the credit rate is 7.9%. One pays Negativzinsen at the end of a quarter, so you should transfer the missing money soonish there.

The second potential issue is that they charge 5.9 EUR for receiving dividends from individual non-German stocks (this is not ETF, dividends from ETFs are free). Solution: just buy ETFs.

Apart from that, they have nice customer service, who unofficially speaks English (i.e. this is not advertised, but they all switched to English easily). They also have non-customer service (i.e. for potential clients), which is amazing for asking random questions not related to me personally (I don’t have to fill in all the account details and to verify my identity to ask 5 second question).


I assume that you have already registered at German Flatex ( Unfortunately I can’t help you with this, because I already have an account with them.


Before buying an ETF you need to have money in your Flatex account. Surprise, surprise. Fortunately, you get a usual IBAN number where you can transfer money as if it is just a different bank account.

To find the IBAN:

  1. Sign in at
  2. Go to “SERVICE” tab
  3. Select “Bankverbindungen” (which means bank connections or links)
  4. Look for “Cashkonto” (cash account) and its IBAN. That’s where you need to send your money.

It is the best to save this IBAN as a template in your bank.

Sample screenshot of Bankverbindungen with fake data

Please be careful and don’t confuse this with “Externes Konto” (external account), i.e. the account linked with your Flatex account. For security reasons, you can transfer money out only to 1 predefined IBAN (in order to change it you actually need to send a paper letter). This is your “Externes Konto”.

You don’t have to transfer money from your “Externes Konto” though. It can be any account.

Finding ETF

Selecting an ETF to buy is an art of itself and this is outside of the scope of this guide. JustETF is a good start. Once you know the ETF, you need to find its ISIN number, e.g. for accumulating S&P 500 ETF from iShares it is IE00B5BMR087 (iShares Core S&P 500 UCITS ETF (Acc)).

JustETF page for iShares Core S&P 500 UCITS ETF (Acc) with ISIN highlighted


Buying screen

Once you received your money (you see it in your Cashkonto), you can get to ETF buying screen:

  1. Sign in at
  2. Click “HANDEL” (trading)
  3. Select “Order aufgeben” (give an order)
  4. Paste the ISIN number of the ETF you want to buy. I use IE00B5BMR087 as an example
  5. The suggestion with the ETF should appear, select it
  6. You get to the ETF page, scroll down to see exchanges overview Flatex short exchanges view
  7. Choose one of the exchanges. I recommend XETRA, flatex Preis (TRG) or gettex. I personally used gettex in the beginning a lot and, if you are not sure, I suggest to try gettex at first. Possible criteria for choosing an exchange:
    • opening times - exchanges work only at particular times, so some may be closed
    • fees - each exchange takes its own fee as well, I tried all 3 mentioned above and the resulting fees were 5-9 EUR
    • ETF price - there may be different price at different exchanges
    • availability - there may be more stocks available to buy at one exchange
  8. If your exchange is not in the list, click “Weitere Handelsplätze anzeigen” (show other trading places) to show the full list.
  9. Click green “K” button (stands for “kaufen”, i.e. to buy) in the row of the selected exchange. I use flatex Preis (TRG) here as an example.


Now you get to the actual buying screen. To buy:

  1. Double check “Verfügbar” (available), i.e. how much money you have. Flatex buying view
  2. Change “Handelsart” (kind of order) to “Limitorder” (order with a limit).
  3. Change “Ordertyp” (type of order) to “Limit”. This means that order will be fulfilled only when its price is smaller than the limit. This saves you from buying at an extreme price due to an unexpected market spike.
  4. Type the desired price limit into “Limit”. This can be just the current price or something 0.1% or 0.5% lower if you don’t mind waiting or risking that your order does not get fulfilled. Basically, Flatex won’t execute your order unless the price is lower than the limit. If you set unrealistic limit, your order won’t get executed. At the beginning I suggest to set the current price. Important: use comma (i.e. “,”) as a decimal separator, i.e. 7 EUR 50 cents should become 7,5.
  5. Type into “Stück/Nominal” (quantity) number of ETFs to buy. It can’t be fractional. Please leave 10-15 EUR gap for the fees. Usually they are applied later and not shown at this stage. If you are curious to know more about the fees, there is “Kostendetails & Auswirkung” link, which shows the breakdown. This is quite a recent feature, I don’t remember seeing this before.
  6. “Nettoschätzung” - should look green, this means that you have enough money. Double check that the number agrees with your understanding. E.g. if you forgot to use “,” as a decimal separator, the number here will be super large.
  7. “Orderzusatz” - “<ohne>”
  8. “Gültigkeit (Datum)” - how long the order should be valid. In other words, if the price does not reach your limit in this timeframe, the order will be canceled. This happened to me couple times and I didn’t pay any fees (anecdotal evidence, I haven’t seen this officially confirmed anywhere). You can choose “tagesgültig” (i.e. today) or “gültig bis:” (“until”) and some date of your choice. At the beginning I suggest to set lax limit (i.e. just the current price) and “tagesgültig”.
  9. Press “Eingaben übernehmen”.
  10. The site will ask you for your TAN code, just fill it in from the card.
  11. Done, your order has been created.

Usually “Verfügbar” (available) cash decreases at this stage, but in some places the money for the order may be shown as if they are still in your account. Actually, they are, they are just “frozen” for the order.


You can check the status of the order in “HANDEL” -> “Orderbuch”. There you can also cancel your order, e.g. if you limit happened to be too aggressive. I did this couple times and didn’t pay any fees.

After some time (depends on your limit and market state), the order should get fulfilled and usually after a delay of at most 1 day, the result gets reflected in the interface (i.e. you can actually see the new ETF in your account). If this is not the case after a day (assuming this is not a weekend), I suggest to call their customer service. I personally never had to do this, but better safe than sorry!

This is still scary

I agree that this may look hard and complicated. It definitely took me couple months of research before I started investing myself. As a workaround, I suggest you to make your first order with 10-50 EUR instead of your original amount. This way it is much easier to convince yourself to try. In the worst case, the loss is very limited. I did this myself too. I bought 1 share of some ETF and then sold it the next day to double check that I can get my money back. I know, this sounds very naive now, but it was scary to move a bunch of my money there otherwise. But soon after, I started to feel pretty confident with the process, so the learning curve is steep, but manageable!

Happy investing!