Right-back Stephen Darby tripped Alfie Potter in the box and Peter Leven scored from the spot to extend Oxford's unbeaten league run to eight matches.
Leading goalscorer Nahki Wells put Bradford in front after 14 minutes following a mistake by Michael Duberry. The defender tried to head the ball back to advancing Wayne Brown, but it went past the goalkeeper and Wells chased it, before turning it into the net from an acute angle.
The visitors deservedly levelled the scores in the 19th minute when the Bradford defence failed to clear Potter's cross and Sean Rigg scored with a right-footed shot from the edge of the penalty area after Leven laid the ball back into his path.
Oxford dominated the second half only to be denied by home goalkeeper Matt Duke and when he was beaten in the 59th minute Carl McHugh cleared Potter's header off the goalline before Leven's late penalty.