Answers.Body: <p>You could include the joining fee in the membership fee, and then give an automatic discount (joining fee amount) for renewals (requires testing).</p>
  
  <p>Or, some custom code could be written to remove the joining fee field/amount if the user is a member.</p>
  
  <p>In both these scenarios the user will need to be logged in.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-11T23:39:23.147Z
Answers.Text: Would this approach also work in the backend for offline signups and renewals? (I'm also keen to not make things too complex for the admin volunteers who process them manually.) Is custom code the only option I have rather than using any built-in features?
Answers.UserDisplayName: Andrew Thompson
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-12T14:12:51.497Z
Answers.Text: Please do some testing of the discount method (front end and back end) and let us know how you get on. If that doesn't work, custom code is likely to be needed (I can't think of another out-of-the-box method of doing this).
Answers.UserDisplayName: Sanjay Jain
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-11T22:28:03.730Z
Answers.LastActivityDate: 2015-10-12T13:52:55.730Z
Answers.LastEditDate: 2015-10-12T13:52:55.730Z
Answers.UserDisplayName: Sanjay Jain
Answers.Body: <p>I think Sanjay is pointing you in a useful direction. Take a look at <a href="https://civicrm.org/extensions/cividiscount" rel="nofollow">CiviDiscount</a> which allows you to set discounts for memberships with conditions such as - if you have Membership Type or Status. </p>
  
  <p>I think CiviDiscounts can also work with negative discounts if it makes sense to apply that to the 'new' membership, rather than applying it to the renewals. But recommend you give it a try.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-12T13:29:12.030Z
Answers.Text: I forgot about negative discounts - yes they do work (last time I tried). So the answer is actually very simple. Just charge a negative discount to anyone who's not a member!
Answers.UserDisplayName: Sanjay Jain
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-12T13:50:27.360Z
Answers.Text: Hmm - you can't apply an automatic discount to someone who's not a member, discounts are for existing members.
Answers.UserDisplayName: Sanjay Jain
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-12T21:08:22.063Z
Answers.Text: That's correct, the automatic discount can't be applied to non-members only. Unless it's possible with the advanced filter--but I haven't been able to look at that yet. Actually I'm having trouble getting the automatic discounts to work at all, it looks like possibly the "Automatic discount for Membership Statuses" field is not being saved when the discount is edited.
Answers.UserDisplayName: Andrew Thompson
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-14T11:48:12.143Z
Answers.Text: Andrew - Try your testing on demo.civicrm.org - If you have problems with Automatic Discounts, ask a question here and/or report a bug at issue/civicrm.org
Answers.UserDisplayName: Sanjay Jain
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-14T23:01:28.470Z
Answers.Text: Good to have it pointed out that this Extension is on the demo site. Perhaps we need a bit more explanation on the demo sites that some Extensions are enabled by default. (not that people read documentation!)
Answers.UserDisplayName: petednz - fuzion
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-16T00:17:13.407Z
Answers.Text: The bug I mentioned appears to be fixed already in Github. I downloaded the latest CiviDiscount from there and installed it, and automatic discounts are now working. But from a quick test there is an issue for me: only one automatic discount is applied (I need two, one negative for the joining fee and one for the 50% half-year discount). And so far I've only seen it work in the frontend. I couldn't see it have any effect in the backend i.e. the membership amounts weren't being calculated with an automatic discount applied.
Answers.UserDisplayName: Andrew Thompson
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2015-10-12T01:31:28.543Z
Answers.LastActivityDate: 2015-10-12T19:44:23.503Z
Answers.LastEditDate: 2015-10-12T19:44:23.503Z
Answers.UserDisplayName: petednz - fuzion
Body: <p>I’m looking for an elegant way of implementing a joining fee for new members. The joining fee is different for each membership type and is payable in addition to the normal annual membership fee. After the first year the member should be able to renew at the normal rate, preferably without an administrator needing to change anything. The CMS is Joomla.</p>
  
  <p>Some of the suggestions that I’ve seen (<a href="https://forum.civicrm.org/index.php?topic=29226.msg125372#msg125372" rel="nofollow">https://forum.civicrm.org/index.php?topic=29226.msg125372#msg125372</a> and <a href="https://forum.civicrm.org/index.php?topic=27362.msg121121#msg121121" rel="nofollow">https://forum.civicrm.org/index.php?topic=27362.msg121121#msg121121</a>) involve the use of different sign-up and renewal contribution pages, with each using a different price set. I’ve tried that but the “(Not Xyz User, or want to do this for a different person?)” link can turn a renewal page into a new member signup page. (The organisation has valid use for renewing for someone else, e.g. other household members, so disabling this for everyone wouldn’t be a good idea, if that’s even possible.)</p>
  
  <p>Other info that may be relevant:</p>
  
  <ul>
  <li>At present the organisation’s rules require new member applications to be in writing  &amp; signed, so at least for now I will probably need to prevent online signups altogether</li>
  <li>The membership period is fixed (1 January to 31 December); a 50% discount applies to the membership fee—but not the joining fee—from 1 July to 31 December.</li>
  <li>If a member does not pay the membership for a whole year and wants to re-join then the joining fee is payable again.</li>
  </ul>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2015-10-11T20:57:53.327Z
Comments.Text: Hi Andrew - is the "Joining Fee' really a one-time only Fee. if i stop paying my membership fee for 5 years, and then start paying again, do i need to pay the Joining Fee a second time?
Comments.UserDisplayName: petednz - fuzion
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2015-10-11T21:12:57.313Z
Comments.Text: Good point. In fact the joining fee would be payable a second time if the membership is not paid for 1 year.
Comments.UserDisplayName: Andrew Thompson
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-03-11T22:26:23.307Z
Comments.Text: Did you get this sorted out? I'm looking for a similar "elegant" solution. Thanks!
Comments.UserDisplayName: Richard Bothwell
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-03-11T23:26:07.437Z
Comments.Text: What is not 'elegant' about the answer by myself (bounced off Sanjay's) about using negative discounts given that the multiple discount issue (which may not be an issue for you anyhow) has also been resolved i believe per https://civicrm.stackexchange.com/questions/27253/multiple-automatic-discounts-for-memberships
Comments.UserDisplayName: petednz - fuzion
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-03-16T05:14:14.147Z
Comments.Text: Richard I can't add anything at the moment. I didn't find a solution at the time other than having to program an extension (which may not be necessary now) and I set it aside for the time being.
Comments.UserDisplayName: Andrew Thompson
Tags: <civimember><contributions>
Title: Joining fee for new memberships
ThreadText: # Joining fee for new memberships
  
  (Asked by: username_0 on 2015-10-11)
  
  I’m looking for an elegant way of implementing a joining fee for new members. The joining fee is different for each membership type and is payable in addition to the normal annual membership fee. After the first year the member should be able to renew at the normal rate, preferably without an administrator needing to change anything. The CMS is Joomla.
  
  Some of the suggestions that I’ve seen (<https://forum.civicrm.org/index.php?topic=29226.msg125372#msg125372> and <https://forum.civicrm.org/index.php?topic=27362.msg121121#msg121121>) involve the use of different sign-up and renewal contribution pages, with each using a different price set. I’ve tried that but the “(Not Xyz User, or want to do this for a different person?)” link can turn a renewal page into a new member signup page. (The organisation has valid use for renewing for someone else, e.g. other household members, so disabling this for everyone wouldn’t be a good idea, if that’s even possible.)
  
  Other info that may be relevant:
  
  * At present the organisation’s rules require new member applications to be in writing & signed, so at least for now I will probably need to prevent online signups altogether
  * The membership period is fixed (1 January to 31 December); a 50% discount applies to the membership fee—but not the joining fee—from 1 July to 31 December.
  * If a member does not pay the membership for a whole year and wants to re-join then the joining fee is payable again.
  
  **Tags:** civimember, contributions
  
  > **Comments:**
  > **username_1**: Hi Andrew - is the "Joining Fee' really a one-time only Fee. if i stop paying my membership fee for 5 years, and then start paying again, do i need to pay the Joining Fee a second time?  
  > **username_0**: Good point. In fact the joining fee would be payable a second time if the membership is not paid for 1 year.  
  > **username_2**: Did you get this sorted out? I'm looking for a similar "elegant" solution. Thanks!  
  > **username_1**: What is not 'elegant' about the answer by myself (bounced off Sanjay's) about using negative discounts given that the multiple discount issue (which may not be an issue for you anyhow) has also been resolved i believe per https://civicrm.stackexchange.com/questions/27253/multiple-automatic-discounts-for-memberships  
  > **username_0**: Richard I can't add anything at the moment. I didn't find a solution at the time other than having to program an extension (which may not be necessary now) and I set it aside for the time being.  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_3 on 2015-10-11. Score: 4
  
  You could include the joining fee in the membership fee, and then give an automatic discount (joining fee amount) for renewals (requires testing).
  
  Or, some custom code could be written to remove the joining fee field/amount if the user is a member.
  
  In both these scenarios the user will need to be logged in.
  
  > **Comments:**
  > **username_0**: Would this approach also work in the backend for offline signups and renewals? (I'm also keen to not make things too complex for the admin volunteers who process them manually.) Is custom code the only option I have rather than using any built-in features?  
  > **username_3**: Please do some testing of the discount method (front end and back end) and let us know how you get on. If that doesn't work, custom code is likely to be needed (I can't think of another out-of-the-box method of doing this).  
  
  ---
  
  ### Answer by username_1 on 2015-10-12. Score: 3
  
  I think Sanjay is pointing you in a useful direction. Take a look at [CiviDiscount](https://civicrm.org/extensions/cividiscount) which allows you to set discounts for memberships with conditions such as - if you have Membership Type or Status.
  
  I think CiviDiscounts can also work with negative discounts if it makes sense to apply that to the 'new' membership, rather than applying it to the renewals. But recommend you give it a try.
  
  > **Comments:**
  > **username_3**: I forgot about negative discounts - yes they do work (last time I tried). So the answer is actually very simple. Just charge a negative discount to anyone who's not a member!  
  > **username_3**: Hmm - you can't apply an automatic discount to someone who's not a member, discounts are for existing members.  
  > **username_0**: That's correct, the automatic discount can't be applied to non-members only. Unless it's possible with the advanced filter--but I haven't been able to look at that yet. Actually I'm having trouble getting the automatic discounts to work at all, it looks like possibly the "Automatic discount for Membership Statuses" field is not being saved when the discount is edited.  
  > **username_3**: Andrew - Try your testing on demo.civicrm.org - If you have problems with Automatic Discounts, ask a question here and/or report a bug at issue/civicrm.org  
  > **username_1**: Good to have it pointed out that this Extension is on the demo site. Perhaps we need a bit more explanation on the demo sites that some Extensions are enabled by default. (not that people read documentation!)  
  > **username_0**: The bug I mentioned appears to be fixed already in Github. I downloaded the latest CiviDiscount from there and installed it, and automatic discounts are now working. But from a quick test there is an issue for me: only one automatic discount is applied (I need two, one negative for the joining fee and one for the 50% half-year discount). And so far I've only seen it work in the frontend. I couldn't see it have any effect in the backend i.e. the membership amounts weren't being calculated with an automatic discount applied.  
  
  ---
  
  