I'm working on a redesign of a website that has a bit of a complicated registration requirement and I just can't get my head around how best to design the necessary forms/pages.

For context, the existing website lets registered users/companies (interchangeable) post classified ads, and anonymous users can then send enquiries to the owner of the ad.

The new requirement is that a "Company" may have multiple employees/users, similar to the scenario in this question.

The existing registration workflow is:

  1. User goes to the sign-up page, and enters their company's details + their own name
  2. Next screen, in a multi-line text input they enter one or more email addresses to be the recipients of enquiries to their ads (usually at least one of these addresses will be their own, but I guess it's possible for none of them to be)
  3. They optionally enter another email address to sign-up for the newsletter, which may or may not be one of the addresses already entered above
  4. Confirm T&C's
  5. Finally, enter a username and password. They can login once the admin approves them and sends them a confirmation email.

The client would prefer that each of these email addresses should potentially be -- but not necessarily -- it's own user-account, grouped as employees of that company.

Also, in addition to the recipients of ad enquiries and newsletters, they want another user to receive invoice related emails.

So far, I figured I will ask the registering user to first enter their company details with the necessary checks to ensure that Company has not already been registered, but then what?

Is it even appropriate for a user to register someone else on their behalf?

I'll be ever so grateful if somebody would describe a process/workflow that once implemented as forms/webpages would be intuitive for the user.

2 Answers 2


I'm not sure about a user signing up "other users" for an application. Maybe you can send a registration link to a page (that could require a secret/unique registration code) to the other users to sign up.

Let's break this down.

  1. First user (the main one, let's call her the "admin user") signs up with her company details and agrees to T&C and all that good stuff).

  2. Once you detect that it's a company, give them a registration code and also a unique link that this admin user can share with her coworkers/employees(via email or IM or whatever).

  3. The advantage here is that, it's easier for them to share this with their team. For example, they might have a Active Directory group for these members that will use the app. So they can just email the group. Even if they have to email individual members, their email client (Outlook or GMail or whatever) will have their email addresses pop up in auto complete when the admin user starts typing them up. They probably will not have to type the entire email address as they would if they had to do it on the site. This could add up if there are 5 or more users. As you can imagine, it just makes the link easier and faster to share. Even little things count.

  4. By doing this, you're getting the individuals a chance to sign up themselves and not have somebody do it for them without their permission.

  5. Another benefit is analytics you can gain with the unique code (what users used the code when they signed up, when they signed up, etc.) but it should not be a factor at all in this discussion. Something to think about though.

Hope that helps.

  • Gave you an upvote, that's pretty much what I've done in the past with some embellishments.
    – Ian
    Commented Oct 26, 2012 at 18:41

I've done what Girish in another answer has done, so gave him my vote. I've also allowed the user to enter free form email addresses as you have, but my product was a collaborative app which was based around teams.

I mention all this because with the ability to request other users to join we did the following:

1) make it unobtrusive for the new user to join. I.e. don't ask for 35 bits of info when they log in, don't ask them anything, let them sign in, perhaps set a visible display name and let them use the system. You need to grip them first, any resistance will be resented.

2) Some users on the list may already have accounts. Find a way to deal with that.

3) Let the initial user monitor which of his colleagues have accepted the invitation. If you're just signing them up for marketing purposes, then this isn't required, but if it's collaborative then it really helps.

4) Don't annoy people. Make it clear that a person X has requested that they join for reason Y (have user X enter this preferably).

On 4, I have a vicious tendency to eviscerate anyone who sends me an eCard. The reason being I don't like my email address being handed out to marketeers.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.