Police Lt. Col. Teerayut Maiplaeng said the 32-year-old taxi driver confessed that he pulled a 12-inch machete from his trunk and repeatedly slashed Troy Lee Pilkington, who allegedly got out of the taxi and refused to pay a 51 baht ($1.60) fare.
Video footage from a surveillance camera captured part of the altercation, which took place Saturday on Bangkok's busy Sukhumvit Road. The footage shows the taxi driver swinging a machete as the other man flails his arms and tries to grab the driver. The two men then move out of the camera's view. Seconds later, the sword-wielding driver reappears in the frame as he flees the scene.
Pilkington, 51, worked for the American machinery company Caterpillar Inc. and had lived in Thailand for at least three years, Teerayut said.
The taxi driver, Chidchai Utmacha, told investigators that Pilkington accused him of rigging the taxi's meter and then stormed out of the cab while they sat in traffic. He claimed the American threw a cup of coffee at him when he asked for the money, after which he pulled the knife from his trunk and chased after Pilkington.
Police identified the driver from the video footage and arrested him at his house on Sunday.
Chidchai is facing charges of murder and carrying a weapon in public without reasonable cause.