add auto generate customer types function