Ross Taylor's whirlwind half-century went in vain as New Zealand lost to South Africa by nine runs in their second warm-up match in Colombo.
When Taylor arrived at the crease after the fall of Brendon McCullum, 160 runs were still required. Taylor immediately set the pace with a boundary off Dale Steyn and a four and a six off Morne Morkel to race to 17 off 7 balls. He then went into consolidation mode for the next eight overs before exploding as the pressure of the chase mounted.
Taylor shared a 94-run stand with Rob Nicol and hit seven sixes in his 42-ball 75, which left New Zealand with 44 runs to get in the last 4.3 overs with six wickets in hand. However, the contest was closed by Steyn's triple strike in the penultimate over.
New Zealand opened the bowling with two spinners after the start was delayed because of rain. But South Africa's openers Richard Levi and Faf du Plessis took 19 runs off Ronnie Hira's second over to inject momentum into the innings.
New Zealand fast bowler Adam Milne then removed both batsmen in consecutive overs, and when Nicol took Hashim Amla's wicket, South Africa were in danger of ceding the early advantage.
But AB de Villiers scored a 30-ball 54 and raised 62 runs in partnership with JP Duminy. A late assault by de Villiers, Farhaan Behardien and Albie Morkel shocked New Zealand as South Africa took 51 runs off the last three overs to end up with 186.