This is why I sometimes purchase parts myself and bring them to a mechanic if I am not doing the work. I always figure they charge a greater price, then I can get with my discounts. Or ordering from USA. Its polite, and may make the job go much faster, as long as you get the exact right parts!
On computer repair however, I absolutely always charge the customer the exact price that I pay for parts (shipping included of course). I don’t really get bulk discounts or percentage discounts with buying desktop hardware. I charge enough for my services as flat rate that its easy to not mark up parts acquired for a specific job. If I was retail and had to keep stock that depreciated, that would be a different story. Most auto mechanic shops I believe don’t keep many spare parts and have someone drive them over parts that they need. If the person can simply go look up the part on a website and see what you have paid for it, then there it looks scammy if you charge 100 bucks for a 70 dollar part “i can get that at future shop for $80!”. The same is occurring with auto parts, depending on the retailers business model.
Some amount of markup is justified, the way the auto parts store treats the clueless person off the street depends on the store I think. Some like canadian tire, compete on price, make money on volume, and have almost all their parts listed online. However they do not have as big a variety of options for brands. A popular BC brand store is lordco, which has ridiculous 30% discount that they give to companies and organizations. There may even be higher discounts I am not aware of, but it is all account based. They say “do you have an account?” before getting pricing, so you know you are getting somewhat shafted just from that statement. Luckily I have one, but even at -30% with lordco, canadian tire often beats the price sku for sku. Lordco does not list its prices online without a service rep relationship, and I view that as part of their business model.
I use Autozone in the USA as a good indicator of the average american price for something (usually 1/3rd the price CAD for sensors, half for most other stuff). Rock auto ships to canada and has really the best prices I have seen anywhere and most variety. They also provide online pictures of most parts. Autozone does not ship to canada, so it means a border crossing and possible customs payment.