I’m very new to CiviCRM. I’m testing it with a Drupal 7 install. Can someone give me advice what is the best way to achieve my requirements, which are:

• Users signup for a membership account

o membership types: organisation ordinary, organisation associate, organisation affiliate, organisation friend, individual associate, affiliate individual, individual friend.

o Different data will need to be collected for organisations and individuals.

o Membership levels pricing are different.

o During this process the user will enter a username/password to allow them to login to Drupal once membership has been approved.

• The application has to be accepted by the board of directors.

• User pays for membership

• Once payment has been accepted user can sign into the site.

Memberships lasts for a year, resubscribing doesn’t need to be approved.

Any help would be great. Thanks

  • thanks for your messages. I’m slowly becoming familiar with CiviCRM and realising its potential. I have tried to use both Webforms and Profiles to create members / accounts with different outcomes. Use a webform as a membership signup: • I don’t think it’s possible to include a registration form - without going to some length. Not too much of than issue as this can come after account approval. • Once membership status has been approved how do I forward payment link and signup page to the user? The second approach is to attach Profile to the Drupal Core registration form: • Can I expose members
    – Ben
    Commented Apr 23, 2018 at 11:33

2 Answers 2


A tweak to Jon's answer since you specify that

• Once payment has been accepted user can sign into the site.

You can set the Profile up to create the User account when the contact submits the payment form - but this will result in the User being created even if payment fails. An alternative is to use Drupal Rules (as Jon suggests) so that the User Record is only created once a contact is given a specified Membership status (eg New or Current) and hence will not get a login for Pending membership.

However in general there is no 'problem' with giving someone a user account before they become a member, so long as 'authenticated' gets no permission. You can then use the CiviCRM Memb Synch module to set the user 'role' based on membership type and status - which is something you probably want to be doing to remove permissions (ie Roles) once a Membership expires.


In an effort to Answer questions that Ben added in another Answer.

Once membership status has been approved how do I forward payment link and signup page to the user?

To fwd emails about payments you can either do this via Scheduled Reminders, or, depending on what you are using to 'trigger' the process, via CiviRules, or simply by manually emailing from the contact record using a template which includes the checksum

(re attaching Profile to the Drupal Core registration form) Can I expose membership types from CiviCRM? Or do I have to add this through the content type in Drupal Core?

No you can't add Membership fields as part of the User profile - it needs to be done either as a Contribution Page or as a Webform (which still requires you to create a Contribution page before you can set up the webform).

  • 1
    To add to this - if you use CiviRules, I would recommend my Fast Action Links extension to add an "Approve" button to your search results. Pressing "Approve" can trigger a CiviRule to: a) send an email, b) remove them from an "Applicants" group, c) whatever else needs to happen when someone is approved. This is a more sophisticated setup though; start with the basics as Pete describes! Commented Apr 23, 2018 at 19:57
  • Just jumping back onto Civi. Thanks everyone for the input. It helped.
    – Ben
    Commented Jul 12, 2018 at 5:07

Create two forms - an application form and a payment form.

The application form can be a Profile or (better) a Webform with CiviCRM integration. Place contacts in an "Applicants" group. Include user registration on the form.

Have the reviewers manually approve someone by sending them an email and removing them from the applicants group, and direct them to the payment form.

Depending on your Drupal experience, you may want to tighten up the workflow with Rules.

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.