Answers.Body: <p>I think this would require an extension that would add a field to membership types and membership for 'max terms' and then the code/logic would prevent folk purchasing beyond the current cycle</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-08-03T05:40:02.127Z
Answers.LastActivityDate: 2020-08-03T05:40:02.127Z
Answers.UserDisplayName: petednz - fuzion
Answers.Body: <p>You may want to look at the <a href="https://github.com/Skvare/com.skvare.membershipextra" rel="nofollow noreferrer">Membership Extra</a> extension, which will let you prevent people from renewing until, say, 30 days before their current membership end date.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-09-19T08:33:25.957Z
Answers.LastActivityDate: 2021-09-19T08:33:25.957Z
Answers.UserDisplayName: Noah Miller
Body: <p>While testing payment integration with membership renewals, I observed that the membership end date may extend to any point in the future by just purchasing more and more renewals. Any limit set to activityDate (under the config menu "Date Preferences") does not have an effect, since no selection of the specific end date happens during renewal. In my case, just 12 months are added on top of any pre-existing end date.</p>
  
  <p>Is it possible to limit a membership renewal to just the membership period beyond the current one or at least to a maximum new end date? </p>
  
  <p>edit: using CiviCRM 7.11.0 and Wordpress 5.1</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-03-13T13:20:13.653Z
Comments.Text: If you are using online membership, then the option is just to renew for a single period and you only offer the option to pay that amount. The user can still do a second renewal and that would move the end date forward another 12 months which would be the only logical thing to do. Or are you asking for the renewal option not to be available if the end date is more than one membership period away. I wouldn't expect the activity date to have any bearing on that is that is for the range of dates available when you enter a date.
Comments.UserDisplayName: Mick Kahn
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-03-13T13:51:11.083Z
Comments.Text: Indeed, I was thinking of the online use case. Ideally, if a membership got renewed for a second term, additional renewals should only be possible after that term has begun.
Comments.UserDisplayName: Joachim
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-03-13T13:57:56.590Z
Comments.Text: Background (just as a theoretical example): If a membership is currently quite inexpensive, and there are plans to raise the fees (significantly) in the near future for whatever reasons, it is currently possible to kind of lock in the old price for many upcoming years by just purchasing many renewals right now, if a technical limit on the number of renewals of an individual member cannot be applied by CiviCRM.
Comments.UserDisplayName: Joachim
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-03-13T14:19:37.140Z
Comments.Text: OK - deleted my answer which only related to offline.
Comments.UserDisplayName: Mick Kahn
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2019-12-18T19:02:00.323Z
Comments.Text: I was just asked this today from a client who has been using Civi for the past 7 years. Every now and again a member renews by cheque earlier in the year and then renews online because they forgot they had already renewed. This pushes them into the next year membership period and throws off their accounting.
Comments.UserDisplayName: Andrew Wasson
Tags: <civimember>
Title: Is it possible to limit membership renewals to next membership term?
ThreadText: # Is it possible to limit membership renewals to next membership term?
  
  (Asked by: username_0 on 2019-03-13)
  
  While testing payment integration with membership renewals, I observed that the membership end date may extend to any point in the future by just purchasing more and more renewals. Any limit set to activityDate (under the config menu "Date Preferences") does not have an effect, since no selection of the specific end date happens during renewal. In my case, just 12 months are added on top of any pre-existing end date.
  
  Is it possible to limit a membership renewal to just the membership period beyond the current one or at least to a maximum new end date?
  
  edit: using CiviCRM 7.11.0 and Wordpress 5.1
  
  **Tags:** civimember
  
  > **Comments:**
  > **username_1**: If you are using online membership, then the option is just to renew for a single period and you only offer the option to pay that amount. The user can still do a second renewal and that would move the end date forward another 12 months which would be the only logical thing to do. Or are you asking for the renewal option not to be available if the end date is more than one membership period away. I wouldn't expect the activity date to have any bearing on that is that is for the range of dates available when you enter a date.  
  > **username_0**: Indeed, I was thinking of the online use case. Ideally, if a membership got renewed for a second term, additional renewals should only be possible after that term has begun.  
  > **username_0**: Background (just as a theoretical example): If a membership is currently quite inexpensive, and there are plans to raise the fees (significantly) in the near future for whatever reasons, it is currently possible to kind of lock in the old price for many upcoming years by just purchasing many renewals right now, if a technical limit on the number of renewals of an individual member cannot be applied by CiviCRM.  
  > **username_1**: OK - deleted my answer which only related to offline.  
  > **username_2**: I was just asked this today from a client who has been using Civi for the past 7 years. Every now and again a member renews by cheque earlier in the year and then renews online because they forgot they had already renewed. This pushes them into the next year membership period and throws off their accounting.  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_3 on 2020-08-03. Score: 2 | Accepted answer
  
  I think this would require an extension that would add a field to membership types and membership for 'max terms' and then the code/logic would prevent folk purchasing beyond the current cycle
  
  
  ---
  
  ### Answer by username_4 on 2021-09-19. Score: 2
  
  You may want to look at the [Membership Extra](https://github.com/Skvare/com.skvare.membershipextra) extension, which will let you prevent people from renewing until, say, 30 days before their current membership end date.
  
  
  ---
  
  