Resuming the day at 35-1, New Zealand lost nine wickets for 83 runs in just 39 overs to be dismissed for 118 in its second innings.
Herath finished with 6-43 and with his 5-65 in New Zealand's first innings collected a haul of 11-108.
Herath's previous 10-wicket test haul came earlier this year against England, also at Galle.