Advanced Membership Plans

Additional settings available to Sheep App users

James Scholes avatar
Written by James Scholes
Updated over a week ago

If your organisation is using the Sheep Self-Service App (SheepApp) to process member sign up and renewal, there are additional settings which can be configured via the "Edit JSON" button in Settings. The additional settings are in JSON format. Below is a summary of what options are available, and the correct format to use for each.

Conditions

For organisations with many different membership plans, filters can be applied to allow a potential member to narrow down the plans available to them. These are reflected by Conditions. An example is provided below

{
  conditions: {
    type: 'My Plan Type',
    location: 'UK only'
  }
}

This would be reflected in SheepApp as two Options. An example selection page might look like this:

Additional Fields

If you wish to capture additional information during sign up, you can add Additional Fields to the Membership Plan. Each field must conform to the following format:

{
  label: 'A Suitable Label',
  field: 'unique_field_name',
  description: 'A longer description of the field',
  formType: 'text',
  required: true
}

required can be true  or false
formType can be one of the following:

  • text (normal text entry box)

  • email (adds email validation in supported browsers)

  • tel (for telephone numbers)

  • number (restricts entry to numeric characters)

  • date (restricts entry and provides a date picker in supported browsers)

  • textarea (larger text box for longer responses)

  • checkbox (provides a simple yes/no toggle)

  • person_record (see below)

The person_record formType is a special type that is designed for linked or family memberships. A typical example might be:

{
  label: 'Child',
  field: 'child',
  description: 'Please give details for your child',
  formType: 'person_record',
  required: true,
  dobRequired: true
}

The above entry would create several input boxes for the linked member: First Name, Last Name, Email, Date of Birth

Desired information to be captured post-payment

In some cases, there may be information your organisation would like to capture, but which should not prevent a new member completing the sign-up process. This might be to ask for Areas of Interest, or consent to sign up to a default mailing list.

{
  interestsOnFinish: true,
giftAidOnFinish: true,
  consentOnFinish: 'c001',
}

If interestsOnFinish is set to true , the new member will be prompted to select their interests from a list of checkboxes (configured in Settings).
If giftAidOnFinish is set to true , the new member will be prompted to submit a Gift Aid declaration before continuing.
If consentOnFinish is set to a valid consent ID, the new member will be prompted to opt in to the consent in question.

Hiding a membership plan from self service

For membership plans that are no longer in use you should deactivate the plan. However sometimes you may have active plans which you do not wish be available for public self service in SheepApp. For these set the notSelfService field to true  (if the field is missing or false  the membership will be shown).

{
  notSelfService: true
}

Example Advanced Membership Config

{
  conditions: {
    type: 'My Plan Type',
    location: 'UK Only'
  },
  additional_fields: [
    {
      label: 'Child',
      field: 'child',
      description: 'Please give details for your child',
      formType: 'person_record',
      required: true,
      dobRequired: true
    },
    {
      label: 'Additional Requirement',
      field: 'additional_requirement',
      description: 'Please give details of your additional requirement',
      formType: 'textarea',
      required: true
    },
    {
      label: 'Optional Field',
      field: 'optional_field',
      description: 'Optionally please give more details',
      formType: 'text',
      required: false
    }
  ],
  interestsOnFinish: true
}

Did this answer your question?