Taylor, who was part of the side which beat the Proteas 2-1 in the Test series, hit eight fours and a six in his innings of 116.
Jonny Bairstow, Chris Jordan and David Willey then cleared the rope late on as Eoin Morgan’s men again showed their positive intent with the bat.
Openers Alex Hales and Jason Roy put on 49 in eight overs before Surrey batsman Roy was trapped lbw by David Wiese for 22.
Hales swiftly followed for 23, a leading edge off Marchant de Lange carrying to Andile Phehlukwayo at mid-on.
Morgan and Taylor added 80, but Wiese took an excellent catch off his own bowling to send the captain packing for 41.
Moeen Ali hit a couple of sixes in his 27 before being run out and Jos Buttler skied Phehlukwayo to mid-off, but Taylor reached his century and Bairstow hammered a rapid half-century which featured six sixes.
Bairstow was bowled by Dean Elgar’s part-time spin for 58 off just 30 balls, and Taylor soon followed when he was caught by Wiese off de Lange.
Jordan belted 33 off only 14 deliveries and Willey hit the last ball of the innings from Hardus Viljoen for a maximum.