I have seen some unusual activity with a user attempting to upgrade from one plan to another, which resulted in them getting charged 4 times. What would have had to happen for this to occur?
I am waiting to hear back from the user to share what they did, but it is possible the user did something like a page refresh or hit that back button, etc, to possibly have multiple charges? The charges appear to be a few minutes apart each.
The weird thing is, none of these transactions appear in CBSubs > Basket; however, I do see them under CBSubs > Payments
I don't know if this has anything to do with another issue where this user, in a free plan, is not being properly added to a paid usergroup. This is the post about this issue:
www.joomlapolis.com/forum/developer-members-support/247581-cbsubs-removing-member-from-usergroup-upon-upgrading-renewing#341626
UPDATE #1: I was able to find out that the user kept seeing an error message after inputting the credit card info and pressing pay, then getting redirected to the home page. The first attempt seems ot have been saved, so the site would prompt the user to complete the payment. When she did this several times (presumably seeing the same error), Stripe was taking the payment, but it was not coming back to the site as paid. (She doesn't recall what the error message was)
UPDATE #2: I decided to test out what the user experienced and ended up seeing the error message that she was referring to. It is an issue with the Groove Jive setting in the plan configuration. (Plan>Integrations>GroupJive). The error message that appears if someones pay by credit card is
"Class "CB\Plugin\GroupJive\Table\GroupTable" not found".
1. I can confirm that the payment was processed by Stripe
2. I tested again, but this time paying offline, and the GroupJive integration worked once I manually marked the membership paid.
3. As a workaround, I disabled the GroupJive Integration in the plan settings and instead created the Auto Action below, both when the member upgrades and when they are downgraded (refunded). I am not 100% sure I set up the AutoAction properly, but when I had this and tried paying by credit card again, the error did not reappear (likely because the AutoAction did not trigger, so I can't be sure if auto joining GJ is still a problem)
GLOBAL:
Trigger: onCPayUserStateChange
Type: CB GroupJive
User: Automatice
Access: Everybody
CONDITION 1
Field: Value
Custom Value [var3] (plan id for whatever they are purchasing)
Operator: Equal To
Value: [plan id]
CONDITION 2
Field: Value
Custom Value [var2] (Subscription status)
Operator: Equal To
Value: A (Active)
ACTION
Mode: Join Groups
Groups: [Select Group]
So, for now, since the membership drive is live, I have disabled automatically adding people to a specific group and asking them to join themselves instead.