Uploaded image for project: 'Blesta Core'
  1. Blesta Core
  2. CORE-4439

Domain Manager: Allow domains to be renewed x days in advance of expiry

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 5.1.0
    • Fix Version/s: 5.5.0-b1
    • Component/s: Plugins
    • Labels:
      None

      Description

      As part of CORE-3810 domain renew dates are sync'd with their expiration dates. Under Billing > Domains, we show the registration and expiration dates of domains.

      We want to continue showing the expiration date, but we may need to store the expiration date separate to the renew date, since the renew date is an internal value used to determine when to invoice a service.

      OR - ALTERNATIVELY, this might be better, we allow different types of services to be invoiced at different periods. Perhaps we have a setting to override "Invoice Days Before Renewal" based on the module type. Currently we have module types in the module_types table of "generic" and "registrar". If we could set a different value for the type, like "registrar" we could override this. So if an override is set, when we renew services we would filter somehow on the module type. This could allow us to renew domains on a different schedule than normal services,

      When domains are invoiced, and the invoice is due on the expiration date of the domain, it's more likely that the domain will expire before it is paid. On the other hand if the invoice is due 30 days prior to the domain expiring, then it's more likely to be paid before it expires.

      So, anywhere we show domain listings (Billing > Domains, in the client area, or in the client profile page) we want to show the expiration date, but the renew date may be different.

      The renew date would by sync'd to the expiration date, and then offset by a certain number of days. The number of days should be configurable under Packages > Domain Options > Configuration: General.

      Renew Days Before Expiration
      Same Day
      1 Day
      2 Days
      ...
      90 Days

      Tooltip: When domains are invoiced, the invoice will be due this number of days prior to the domains expiration date.

      As an example, if the domains expiration date is October 31, 2022 and the "Renew Days Before Expiration" is set to 30 then the renew date should be set to October 1, 2022 (Renew Date = Expiration Date - Days).

        Activity

        admin Paul Phillips created issue -
        admin Paul Phillips made changes -
        Field Original Value New Value
        Description As part of CORE-3810 domain renew dates are sync'd with their expiration dates. Under Billing > Domains, we show the registration and expiration dates of domains.

        We want to continue showing the expiration date, but we may need to store the expiration date separate to the renew date, since the renew date is an internal value used to determine when to invoice a service.

        When domains are invoiced, and the invoice is due on the expiration date of the domain, it's more likely that the domain will expire before it is paid. On the other hand if the invoice is due 30 days prior to the domain expiring, then it's more likely to be paid before it expires.

        So, anywhere we show domain listings (Billing > Domains, in the client area, or in the client profile page) we want to show the expiration date, but the renew date may be different.

        The renew date would by sync'd to the expiration date, and then offset by a certain number of days. The number of days should be configurable under Packages > Domain Options > Configuration: General.

        Renew Days Before Expiration
        Same Day
        1 Day
        2 Days
        ...
        90 Days

        Tooltip: When domains are invoiced, the invoice will be due this number of days prior to the domains expiration date.
        As part of CORE-3810 domain renew dates are sync'd with their expiration dates. Under Billing > Domains, we show the registration and expiration dates of domains.

        We want to continue showing the expiration date, but we may need to store the expiration date separate to the renew date, since the renew date is an internal value used to determine when to invoice a service.

        When domains are invoiced, and the invoice is due on the expiration date of the domain, it's more likely that the domain will expire before it is paid. On the other hand if the invoice is due 30 days prior to the domain expiring, then it's more likely to be paid before it expires.

        So, anywhere we show domain listings (Billing > Domains, in the client area, or in the client profile page) we want to show the expiration date, but the renew date may be different.

        The renew date would by sync'd to the expiration date, and then offset by a certain number of days. The number of days should be configurable under Packages > Domain Options > Configuration: General.

        Renew Days Before Expiration
        Same Day
        1 Day
        2 Days
        ...
        90 Days

        Tooltip: When domains are invoiced, the invoice will be due this number of days prior to the domains expiration date.

        As an example, if the domains expiration date is October 31, 2022 and the "Renew Days Before Expiration" is set to 30 then the renew date should be set to October 1, 2022 (Renew Date = Expiration Date - Days).
        admin Paul Phillips made changes -
        Rank Ranked higher
        admin Paul Phillips made changes -
        Rank Ranked lower
        admin Paul Phillips made changes -
        Fix Version/s 5.4.0-b1 [ 11719 ]
        Fix Version/s Short Term [ 10800 ]
        Hide
        admin Paul Phillips added a comment -

        We should consider adding this to 5.4, it's needed.

        Show
        admin Paul Phillips added a comment - We should consider adding this to 5.4, it's needed.
        admin Paul Phillips made changes -
        Description As part of CORE-3810 domain renew dates are sync'd with their expiration dates. Under Billing > Domains, we show the registration and expiration dates of domains.

        We want to continue showing the expiration date, but we may need to store the expiration date separate to the renew date, since the renew date is an internal value used to determine when to invoice a service.

        When domains are invoiced, and the invoice is due on the expiration date of the domain, it's more likely that the domain will expire before it is paid. On the other hand if the invoice is due 30 days prior to the domain expiring, then it's more likely to be paid before it expires.

        So, anywhere we show domain listings (Billing > Domains, in the client area, or in the client profile page) we want to show the expiration date, but the renew date may be different.

        The renew date would by sync'd to the expiration date, and then offset by a certain number of days. The number of days should be configurable under Packages > Domain Options > Configuration: General.

        Renew Days Before Expiration
        Same Day
        1 Day
        2 Days
        ...
        90 Days

        Tooltip: When domains are invoiced, the invoice will be due this number of days prior to the domains expiration date.

        As an example, if the domains expiration date is October 31, 2022 and the "Renew Days Before Expiration" is set to 30 then the renew date should be set to October 1, 2022 (Renew Date = Expiration Date - Days).
        As part of CORE-3810 domain renew dates are sync'd with their expiration dates. Under Billing > Domains, we show the registration and expiration dates of domains.

        We want to continue showing the expiration date, but we may need to store the expiration date separate to the renew date, since the renew date is an internal value used to determine when to invoice a service.

        OR - ALTERNATIVELY, this might be better, we allow different types of services to be invoiced at different periods. Perhaps we have a setting to override "Invoice Days Before Renewal" based on the module type. Currently we have module types in the module_types table of "generic" and "registrar". If we could set a different value for the type, like "registrar" we could override this. So if an override is set, when we renew services we would filter somehow on the module type. This could allow us to renew domains on a different schedule than normal services,

        When domains are invoiced, and the invoice is due on the expiration date of the domain, it's more likely that the domain will expire before it is paid. On the other hand if the invoice is due 30 days prior to the domain expiring, then it's more likely to be paid before it expires.

        So, anywhere we show domain listings (Billing > Domains, in the client area, or in the client profile page) we want to show the expiration date, but the renew date may be different.

        The renew date would by sync'd to the expiration date, and then offset by a certain number of days. The number of days should be configurable under Packages > Domain Options > Configuration: General.

        Renew Days Before Expiration
        Same Day
        1 Day
        2 Days
        ...
        90 Days

        Tooltip: When domains are invoiced, the invoice will be due this number of days prior to the domains expiration date.

        As an example, if the domains expiration date is October 31, 2022 and the "Renew Days Before Expiration" is set to 30 then the renew date should be set to October 1, 2022 (Renew Date = Expiration Date - Days).
        jonathan Jonathan Reissmueller made changes -
        Fix Version/s 5.5.0-b1 [ 11726 ]
        Fix Version/s 5.4.0-b1 [ 11719 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Story Points 5
        jonathan Jonathan Reissmueller made changes -
        Sprint 5.5.0 Sprint 2 [ 154 ]
        jonathan Jonathan Reissmueller made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Epic Link CORE-4304 [ 15830 ]
        jonathan Jonathan Reissmueller made changes -
        Sprint 5.5.0 Sprint 2 [ 154 ] 5.5.0 Sprint 3 [ 155 ]
        abdy Abdy Franco made changes -
        Remaining Estimate 0 minutes [ 0 ]
        Time Spent 4 hours, 32 minutes [ 16320 ]
        Worklog Id 15667 [ 15667 ]
        abdy Abdy Franco made changes -
        Assignee Abdy Franco [ abdy ]
        abdy Abdy Franco made changes -
        Time Spent 4 hours, 32 minutes [ 16320 ] 1 day, 3 hours, 38 minutes [ 41880 ]
        Worklog Id 15671 [ 15671 ]
        abdy Abdy Franco made changes -
        Time Spent 1 day, 3 hours, 38 minutes [ 41880 ] 2 days, 2 hours, 51 minutes [ 67860 ]
        Worklog Id 15672 [ 15672 ]
        abdy Abdy Franco made changes -
        Status Open [ 1 ] In Review [ 5 ]
        Resolution Fixed [ 1 ]
        abdy Abdy Franco made changes -
        Time Spent 2 days, 2 hours, 51 minutes [ 67860 ] 2 days, 4 hours, 38 minutes [ 74280 ]
        Worklog Id 15695 [ 15695 ]
        abdy Abdy Franco made changes -
        Time Spent 2 days, 4 hours, 38 minutes [ 74280 ] 2 days, 5 hours, 25 minutes [ 77100 ]
        Worklog Id 15707 [ 15707 ]
        abdy Abdy Franco made changes -
        Time Spent 2 days, 5 hours, 25 minutes [ 77100 ] 2 days, 6 hours, 12 minutes [ 79920 ]
        Worklog Id 15708 [ 15708 ]
        abdy Abdy Franco made changes -
        Time Spent 2 days, 6 hours, 12 minutes [ 79920 ] 2 days, 5 hours, 25 minutes [ 77100 ]
        Worklog Id 15708 [ 15708 ]
        Worklog Time Spent 47 minutes [ 2820 ]
        jonathan Jonathan Reissmueller made changes -
        Status In Review [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            abdy Abdy Franco
            Reporter:
            admin Paul Phillips
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:
              Fix Release Date:
              29/Jun/22

              Time Tracking

              Estimated:
              Original Estimate - Not Specified
              Not Specified
              Remaining:
              Remaining Estimate - 0 minutes
              0m
              Logged:
              Time Spent - 2 days, 5 hours, 25 minutes
              2d 5h 25m

                Agile