The cart does not allow outside registration - the manager creates the accounts by using add customer in admin. He needs their tax id but he is not given that information so that he can enter it when he creates the account.

So he wants to prevent the customer from checking out unless they provide that tax id number.

I see two places where this might be easiest to do. One would be on the checkout payment page - just like terms and conditions. If there is no tax id, then the buyer gets an error message telling him to provide the tax id in the edit account section (he actually would prefer them redirected to that page but I don't see how to do that right off hand and then you have to have messaging in a second place to show what is needed)

I also thought about it being a function of logging in. During login, their account is checked for the presence of the taxid and if there is none, then the buyer gets redirected to the edit account page and told to provide the tax id.

My question is are there other scenarios that would be simpler and in general what's the easier way to get to do this (in the code)?