The fees are two-fold, depending on the value of the goods received. In this answer, I will concentrate solely on commercial shipments (i.e. you bought something from an internet sales company). The same generally applies to non-commercial shipments (i.e. your friend sending you a gift) albeit with different duty-free values. As the article lists German customers, I will focus on the German fees in this answer.
In all cases, the determining factor is the value of goods. This is, in principle, estimated by the customs agents although the declaration on the parcel is taken into account. If the value of the goods is assessed to be less than €22, the shipment is free of all duties. (This is subject to change on 1st July 2021 when the €22 limit will be abolished and all imports will be subject to import VAT as per the next paragraph. Link in German.)
If the value is estimated to be more than €22 but less than €150, the recipient is required to pay import VAT: 19 % of the value of the goods. (It was 16 % during 2020 as part of the Covid-19 relief effort). If the parcel contains only good that are eligible for the discounted VAT rate, it is 7 % of the assessed value.
If the value is estimated to be above €150, customs duty must be paid on top. How high customs duties are, depends on the exact nature of the goods being received. However, as a private consumer receiving goods sporadically of no more than €700 in value intended solely for personal use, a flat-rate customs duty of 17.5 % may be levied (reduced to 15 % for certain privileged goods). The flat-fee approach can be rejected and customs duty tallied up comprehensively which may result in a lower overall fee – especially if some goods can be imported at a 0 % customs duty.
The above values do not apply to ‘alcohol, tobacco products, perfume or toilet waters, roasted coffee, instant coffee and merchandise containing coffee’, for which other duty-free allowances, rates etc. apply.
In case the charges calculated as per the above end up being below €5, they are waived.
For example, if a parcel containing goods (excluding alcohol, tobacco products, etc.) valued at €50 is received, the recipient has to pay €9.50 in import VAT.
If the items are shipped with DHL (the current name of the parcel service of Deutsche Post, the former state-owned German postal service), DHL can take care of the customs formalities on the recipient’s behalf; in this case, the DHL delivery person will require cash payment at the door. Most other shipping companies do not have such an agreement and the goods will instead be delivered to the nearest customs office for inspection and the recipient notified that they will have to pick up (and pay, if necessary) there.
Further information can be found on the web pages of German customs concerning ‘consignments of negligible value’ (below €150) and those above. The relevant EU Regulation concerning the €150 level is EC 1186/2009. The €22 limit can be found in the Einführumsatzsteuerbefreiungsverordnung (EUStBV), §1a (in German).
The values quoted above are mostly specific to Germany as I wrote in the beginning. However, the €150 limit is codified in an EU regulation so shipments of at least that value will be customs duty free. The abolishment of the low value exception for import VAT also derives from a European-level decision so all shipments to all EU countries will be subject to the corresponding national import VAT. The national VAT levels differ between countries so the fees will vary; other countries may levy additional fees.