I had my battery replaced which isnt covered under CPO warranty. BMW charged me $200 for the correct battery which is what I found it for online. But then they charge an hour labor to register the battery to the car which you have to have done. So your looking at roughly around $300 through BMW, but if you can find a local shop that works on BMW they might be able to do it for a few bucks cheaper.
2007 BMW 335i with Premium Package, JB4, AFE DCI, RR OCC, Catless DPs, AFE Silver Bullet, and other cosmetic stuff.