Uploaded image for project: 'CiviCRM'
  1. CiviCRM
  2. CRM-12284

Line item line_total and financial_item status are incorrect when completing pay-later event registration with multiple participants

    Details

    • Type: Bug
    • Status: Done/Fixed
    • Priority: Major
    • Resolution: Fixed/Completed
    • Affects Version/s: 4.3.0
    • Fix Version/s: 4.3.1
    • Labels:
      None

      Description

      There are somewhat different bugs based on how pay-later payment is recorded.
      A. Steps to recreate:
      1. Configure sample event to allow Pay Later and Register Multiple Participants
      2. Register 2 participants using pay later (online event registration)
      3. Edit primary participant's contribution record and set status to Completed

      Bugs -

      • Notice: Undefined index: 1 in CRM_Event_Form_EventFees::setDefaultValues() (line 103 of /Users/dgg/git/crm_v4.3/CRM/Event/Form/EventFees.php).
        UPDATE: I also had a 'Discount by Date' fee for the event, which seems to be the cause of this notice. When I repeated the test w/o the discount, all other bugs were present but I didn't get this notice.
      • financial_item.status for primary participant is correctly updated to Paid (1) . But financial_item.status for additional participant remains Unpaid (3).
      • An entity_financial_trxn linked to the primary participant financial_item is inserted when the payment is completed with amount = the total of both participant fees. This seems wrong because it's linked to a financial_item that only has the primary participant fee as the amount. Do we need this additional row in entity_financial_trxn??

      -------------------------------
      B. Steps to recreate:
      1. Configure sample event to allow Pay Later
      2. Register participant using pay later (online event registration)
      3. Edit participant record, set participant status to 'Registered', check 'Record Payment' and set payment status to Completed. Click Save.

      Bugs -

      • financial_item.status for primary participant is correctly updated to Paid (1) . But financial_item.status for additional participant remains Unpaid (3).
      • line_item.line_total for primary participant is updated to be the total of BOTH participant fees which is wrong (this doesn't happen with method A above)
      • An entity_financial_trxn linked to the primary participant financial_item is inserted when the payment is completed with amount = the total of both participant fees. This seems wrong because it's linked to a financial_item that only has the primary participant fee as the amount. Do we need this additional row in entity_financial_trxn??

        Attachments

          Activity

            People

            • Assignee:
              pradeep.nayak Pradeep Nayak
              Reporter:
              dgg David Greenberg
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: