How to prep roof for paint?

Ok so...
Repair metal where needed
Acid wash/metal prep (what kind? So many options)
Epoxy primer over bare metal
Body filler and seam seal where needed
Primer over body filler
Paint

Can I paint over the factory paint if I prep it right? Sorry for all the questions, just want to do it right. I did a short stint in a body shop, but that was 25 years ago and I don't think what I was taught was correct.
Any kind of metal prep works. Most of the major paint companies have their own product. I use PPG's acid wash but POR 15 also has a metal conditioner that works well.
Epoxy primer is not absolutely necessary. Any quality 2 part primer will work. Epoxy is just a little more durable but once topcoated, most primers you can't tell the difference.
Yes you can absolutely paint over factory finish. If the original finish is in good shape, just sand with whatever you are finishing with-320 or 400 grit. Sealer over that, then your topcoat.