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

Void unpaid invoices when cancelling a service

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.4.0
    • Fix Version/s: 4.0.0-b2
    • Component/s: None
    • Labels:
      None

      Description

      Void unpaid invoices when cancelling a service.

      If there are any discount line items on the invoice (e.g. coupons), then the TOTAL of the invoice after the service item(s) are removed MAY not match the EXPECTED TOTAL, as those line items MAY not be removed.

      For each non-closed, non-pastdue invoice that the service being cancelled appears on

      • If the invoice has no other line items (besides those matching the service ID):
        • Void the invoice
      • Else:
        • Unapply payments on the invoice
        • Remove the line items matching the service ID from the invoice
        • Reapply payments to the invoice

      This requires a company/client group setting, enabled by default called Update Open Invoices on Service Cancellation.

        Issue Links

          Activity

          admin Paul Phillips created issue -
          cody Cody Phillips (Inactive) made changes -
          Field Original Value New Value
          Issue Type Task [ 3 ] New Feature [ 2 ]
          cody Cody Phillips (Inactive) made changes -
          Link This issue is blocked by CORE-1479 [ CORE-1479 ]
          cody Cody Phillips (Inactive) made changes -
          Rank Ranked higher
          cody Cody Phillips (Inactive) made changes -
          Description Consider the following circumstance:

          A client gets an invoice for renewal, it's not yet due. The client logs into their account and cancels the service. The invoice remains.

          Instead, if there is an invoice that is not yet due when a service is cancelled, create an in house credit and apply it to the invoice in question for the amount of the service.

          If this is the only service listed on the invoice, the invoice should be closed. If other services or line items exist on the invoice, those amounts will remain due.

          If the invoice is past due no action should be taken.
          Consider the following circumstance:

          A client gets an invoice for renewal, it's not yet due. The client logs into their account and cancels the service. The invoice remains.

          -Instead, if there is an invoice that is not yet due when a service is cancelled, create an in house credit and apply it to the invoice in question for the amount of the service.-

          -If this is the only service listed on the invoice, the invoice should be closed. If other services or line items exist on the invoice, those amounts will remain due.-

          -If the invoice is past due no action should be taken.-

          This requires adding a new setting to control what happens with unpaid invoices when a service is cancelled.

          - *Void the invoice*, and take the remaining line items and add them to a new invoice.
          - Take any payments applied to the old invoice and apply them to the new invoice.
          cody Cody Phillips (Inactive) made changes -
          Summary When cancelling a service with an invoice not yet due, apply an in house credit to adjust. Void unpaid invoices when cancelling a service
          cody Cody Phillips (Inactive) made changes -
          Description Consider the following circumstance:

          A client gets an invoice for renewal, it's not yet due. The client logs into their account and cancels the service. The invoice remains.

          -Instead, if there is an invoice that is not yet due when a service is cancelled, create an in house credit and apply it to the invoice in question for the amount of the service.-

          -If this is the only service listed on the invoice, the invoice should be closed. If other services or line items exist on the invoice, those amounts will remain due.-

          -If the invoice is past due no action should be taken.-

          This requires adding a new setting to control what happens with unpaid invoices when a service is cancelled.

          - *Void the invoice*, and take the remaining line items and add them to a new invoice.
          - Take any payments applied to the old invoice and apply them to the new invoice.
          Void unpaid invoices when cancelling a service.

          {quote}
          If there are any discount line items on the invoice (e.g. coupons), then the TOTAL of the invoice after the service item(s) are removed MAY not match the EXPECTED TOTAL, as those line items MAY not be removed.
          {quote}


          For each *non-closed*, *non-pastdue* invoice that the service being cancelled appears on
          - If the invoice has no other line items (besides those matching the service ID):
          -- Void the invoice
          - Else:
          -- Unapply payments on the invoice
          -- Remove the line items matching the service ID from the invoice
          -- Reapply payments to the invoice


          This requires a company/client group setting, enabled by default called *Update Open Invoices on Service Cancellation*.
          cody Cody Phillips (Inactive) made changes -
          Story Points 5
          cody Cody Phillips (Inactive) made changes -
          Sprint 4.0.0 Sprint 6 [ 24 ]
          cody Cody Phillips (Inactive) made changes -
          Fix Version/s 4.0.0 [ 10603 ]
          tyson Tyson Phillips (Inactive) made changes -
          Link This issue relates to CORE-2200 [ CORE-2200 ]
          Automated transition triggered when Tyson Phillips (Inactive) created a branch in Stash -
          Status Open [ 1 ] In Progress [ 3 ]
          cody Cody Phillips (Inactive) made changes -
          Assignee Cody Phillips [ cody ] Tyson Phillips [ tyson ]
          tyson Tyson Phillips (Inactive) made changes -
          Sprint 4.0.0 Sprint 6 [ 24 ] 4.0.0 Sprint 7 [ 25 ]
          tyson Tyson Phillips (Inactive) made changes -
          Sprint 4.0.0 Sprint 7 [ 25 ] 4.0.0 Sprint 8 [ 26 ]
          tyson Tyson Phillips (Inactive) made changes -
          Sprint 4.0.0 Sprint 8 [ 26 ] 4.0.0 Sprint 7 [ 25 ]
          tyson Tyson Phillips (Inactive) made changes -
          Rank Ranked lower
          tyson Tyson Phillips (Inactive) made changes -
          Sprint 4.0.0 Sprint 7 [ 25 ] 4.0.0 Sprint 7, 4.0.0 Sprint 8 [ 25, 26 ]
          tyson Tyson Phillips (Inactive) made changes -
          Rank Ranked higher
          tyson Tyson Phillips (Inactive) made changes -
          Sprint 4.0.0 Sprint 7, 4.0.0 Sprint 8 [ 25, 26 ] 4.0.0 Sprint 7, 4.0.0 Sprint 8, 4.0.0 Sprint 9 [ 25, 26, 27 ]
          admin Paul Phillips made changes -
          Fix Version/s 4.0.0-b2 [ 11001 ]
          Fix Version/s 4.0.0-b1 [ 10603 ]
          tyson Tyson Phillips (Inactive) made changes -
          Sprint 4.0.0 Sprint 7, 4.0.0 Sprint 8, 4.0.0 Sprint 9 [ 25, 26, 27 ] 4.0.0 Sprint 7, 4.0.0 Sprint 8, 4.0.0 Sprint 9, 4.0.0 Sprint 10 [ 25, 26, 27, 28 ]
          Automated transition triggered when Tyson Phillips (Inactive) created pull request #196 in Stash -
          Status In Progress [ 3 ] In Review [ 5 ]
          Resolution Fixed [ 1 ]
          Automated transition triggered when Tyson Phillips (Inactive) merged pull request #196 in Stash -
          Status In Review [ 5 ] Closed [ 6 ]

            People

            • Assignee:
              tyson Tyson Phillips (Inactive)
              Reporter:
              admin Paul Phillips
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:
                Fix Release Date:
                20/Oct/16

                Agile