Wal-Mart Stores has vowed to pay more than US$33m in back wages to thousands of employees because it paid too little in overtime, according to the US Labor Department.