Add ID generator and validation