Not sure about Malaysia but this is a standard practice worldwide...nothing unusual about it. I am based in Switzerland. CHF20 is charged as processing fee per package/parcel (regardless the total purchase price) for the courier service provider (FedEx, DHL, SwissPost, PostNL, etc.) to get any parcel cleared from the custom in addition to the 8% Swiss VAT. The only diff is that some courier service provider will ask for cash payment upon delivery and some will send an invoice 1 week after delivery.
There was one time my family back home sent me a parcel (only bunch of documents and a rm10 coaxial cable). Concerned the hassle and cost if such important docs get lost, my family declared rm500 as the value. I ended up paying chf20 (rm85) + 8% of rm500 for a bunch of documents and a rm10 coaxial cable. Lol
In hindsight, i would rather pay rm53 and get the package in a timely manner rather than having to go and deal with the custom directly.'time is expensive, rm53 cost to save me 1-2 hours of my time dealing with this is worthwhile imho.
Before ordering online, it may be better to factor in all cost incl. the gst and the relevant processing fees (courier companies are usually transparent about the cost - can check their websites). If the total price is more expensive than what it would have cost buying locally, then dont buy online unless it's something which cant be sourced locally. That's what i always do.