Hi Nadya,
You could have it either way, If the user was required to enter a account number before his order would be processed, and the user did not yet have an account, you could have a link that when clicked would allow the user to establish his account at that point. This way people who enter the site only out of curiousity would not need to set up an account and your system would not be required to carry the cost of a dead account.
If you have the user enter account info before entering the shopping cart app, then you could pass the account number as a hidden variable from HTML to HTML until checkout. Then the account number could be entered into all transaction created and own by the user.
Either way would work fine. Also, when a user received has account number, the account number could become the username part of a MS SQL authentication. The user could be setup with the account number as the username, and some default password for initial login. The user should be forced to change the password upon his first login.
There are lot of way to do it.
LelandJ