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

BitPay: May fail to make payment when paying too many invoices at once

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.6.0
    • Fix Version/s: 4.1.1, 4.2.0-b1
    • Component/s: Gateways
    • Labels:
      None

      Description

      See http://www.blesta.com/forums/index.php?/topic/5290-bitpay-multi-invoices-issue/

      It may be that attempting to pay multiple invoices. When serialized with their amounts and passed to the gateway, the max length is 100 characters. However, it may fail with fewer characters. We will need to test.

      We may need to update the gateway to limit the length of that field, and simply ignore paying specific invoices that exceed the length. Alternatively, we could display an error that too many invoices are being paid at once, and to select fewer invoices to pay before continuing.

        Activity

        tyson Tyson Phillips (Inactive) created issue -
        Hide
        tyson Tyson Phillips (Inactive) added a comment -

        We should investigate 2 approaches:

        1. If we can display an error from the BitPay gateway after selecting too many invoices, then we should do so
        2. If we attempt to pay for too many invoices, we should truncate the length to 1 fewer invoice than exceeds the total character length of the field (e.g., if 3 invoices will exceed the 100 character limit, only set 2 invoices). In this case, we can apply payments to as many invoices as we could, and the remaining one will be added as a credit, which could be applied automatically to open invoices if Blesta is configured to do so.
        Show
        tyson Tyson Phillips (Inactive) added a comment - We should investigate 2 approaches: If we can display an error from the BitPay gateway after selecting too many invoices, then we should do so If we attempt to pay for too many invoices, we should truncate the length to 1 fewer invoice than exceeds the total character length of the field (e.g., if 3 invoices will exceed the 100 character limit, only set 2 invoices). In this case, we can apply payments to as many invoices as we could, and the remaining one will be added as a credit, which could be applied automatically to open invoices if Blesta is configured to do so.
        tyson Tyson Phillips (Inactive) made changes -
        Field Original Value New Value
        Assignee Jonathan Reissmueller [ jonathan ]
        tyson Tyson Phillips (Inactive) made changes -
        Fix Version/s 4.1.1 [ 11015 ]
        Fix Version/s 4.2.0-b1 [ 11014 ]
        Fix Version/s Short Term [ 10800 ]
        tyson Tyson Phillips (Inactive) made changes -
        Sprint 4.2.0 Sprint 1 [ 44 ]
        tyson Tyson Phillips (Inactive) made changes -
        Rank Ranked higher
        jonathan Jonathan Reissmueller made changes -
        Remaining Estimate 0 minutes [ 0 ]
        Time Spent 29 minutes [ 1740 ]
        Worklog Id 10226 [ 10226 ]
        jonathan Jonathan Reissmueller made changes -
        Time Spent 29 minutes [ 1740 ] 58 minutes [ 3480 ]
        Worklog Id 10229 [ 10229 ]
        Automated transition triggered when Jonathan Reissmueller created a branch in Stash -
        Status Open [ 1 ] In Progress [ 3 ]
        jonathan Jonathan Reissmueller made changes -
        Time Spent 58 minutes [ 3480 ] 1 hour, 39 minutes [ 5940 ]
        Worklog Id 10230 [ 10230 ]
        Hide
        jonathan Jonathan Reissmueller added a comment - - edited

        1. Well an error can be displayed, but it might not be useful info. A generic error could be given, or maybe an error from BitPay about the posData field, but neither tell the customer that they are trying to pay too many invoices.

        2. This could be done. It is a bit strange to choose invoices, and get credit instead of paying for them. But it could be done.

        Show
        jonathan Jonathan Reissmueller added a comment - - edited 1. Well an error can be displayed, but it might not be useful info. A generic error could be given, or maybe an error from BitPay about the posData field, but neither tell the customer that they are trying to pay too many invoices. 2. This could be done. It is a bit strange to choose invoices, and get credit instead of paying for them. But it could be done.
        jonathan Jonathan Reissmueller made changes -
        Time Spent 1 hour, 39 minutes [ 5940 ] 1 hour, 51 minutes [ 6660 ]
        Worklog Id 10231 [ 10231 ]
        jonathan Jonathan Reissmueller made changes -
        Time Spent 1 hour, 51 minutes [ 6660 ] 3 hours, 10 minutes [ 11400 ]
        Worklog Id 10232 [ 10232 ]
        jonathan Jonathan Reissmueller made changes -
        Time Spent 3 hours, 10 minutes [ 11400 ] 4 hours, 10 minutes [ 15000 ]
        Worklog Id 10233 [ 10233 ]
        jonathan Jonathan Reissmueller made changes -
        Time Spent 4 hours, 10 minutes [ 15000 ] 4 hours, 25 minutes [ 15900 ]
        Worklog Id 10236 [ 10236 ]
        jonathan Jonathan Reissmueller made changes -
        Time Spent 4 hours, 25 minutes [ 15900 ] 5 hours, 42 minutes [ 20520 ]
        Worklog Id 10240 [ 10240 ]
        Automated transition triggered when Jonathan Reissmueller created pull request #2 in Stash -
        Status In Progress [ 3 ] In Review [ 5 ]
        Resolution Fixed [ 1 ]
        Automated transition triggered when Tyson Phillips (Inactive) merged pull request #2 in Stash -
        Status In Review [ 5 ] Closed [ 6 ]
        admin Paul Phillips made changes -
        Resolution Fixed [ 1 ]
        Status Closed [ 6 ] Reopened [ 4 ]
        admin Paul Phillips made changes -
        Security Private [ 10000 ]
        admin Paul Phillips made changes -
        Status Reopened [ 4 ] Closed [ 6 ]
        Resolution Fixed [ 1 ]

          People

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

            Dates

            • Created:
              Updated:
              Resolved:
              Fix Release Date:
              27/Sep/17

              Time Tracking

              Estimated:
              Original Estimate - Not Specified
              Not Specified
              Remaining:
              Remaining Estimate - 0 minutes
              0m
              Logged:
              Time Spent - 5 hours, 42 minutes
              5h 42m

                Agile