I used to use this for price comparisons but over time I got to only comparing prices at ECS Tuning and FCP and go with the best price OE or OEM parts:
Furiousmethod.com - BMW Parts Price Comparison. For other than coding this is the Foxwell scanner is a good option:
https://www.ecstuning.com/Search/SiteSearch/scanners/. I have the BMW software and never use it. IMO it is very cumbersome and not intuitive compared to how easy the Foxwell scanner is to use.