hid transaction constructor