Before Kohli, India’s iconic batsman Sachin Tendulkar held this record with 254 innings. Kohli had surpassed the batting legend with a century in the first ODI against England in January 2017 in Pune.
Amla (108 not out) and new cap Hendrick ‘Rassie’ van der Dussen (93) put on 155 for second wicket as South Africa posted 266 for two after opting to bat.
However, Imam-ul-Haq scored 86 off 101 balls and Mohammad Hafeez hit an unbeaten 71 off 63 deliveries as Pakistan chased down a target of 267 with five balls to spare.
With a five-wicket win in Port Elizabeth, Pakistan claimed a 1-0 lead in the five-match ODI series.
Earlier, South Africa registered a 3-0 clean sweep against Pakistan in the three-match Test series.
Virat Kohli, who has 39 ODI centuries to his name, recently led India to their first-ever bilateral ODI series win in Australia.
India clinched the three-match ODI series 2-1, following a maiden Test series triumph in 71 years and 11 attempts and a 1-1 draw in three-match T20 International series.