PayPal Recurring Payment Problems - NEED FIXES

Discussion in 'Payments processing' started by rickbraddyllc, Mar 14, 2010.

  1. rickbraddyllc

    rickbraddyllc New Member

    Joined:
    Jan 27, 2009
    Messages:
    20
    Hi,

    Just want to say that overall I am very satisfied with the power and flexibility of AMember Pro; however, the PayPal recurring payment plug-in needs some work...

    1. Recurring PayPal Subscription Cancellation By User Doesn't Expire Product

    When a PayPal user cancels their subscription within PayPal itself, an "IPN" message is sent with a "txn_type" of "subscr_cancel" to AMember. AMember then processes this cancellation request; however, it does not EXPIRE the product. Instead, the product's expiration date remains set to a bogus "RECURRING" end date of 12/31/2012.

    This results in the user continuing to have access to our product through 12/31/2012! This has been reported before and needs to be a top priority for AMember Support to fix:

    http://www.amember.com/forum/showthread.php?t=11826&highlight=paypal expire

    I am dismayed at having to go this deep into AMember's own code to track down this kind of very basic problem that should've been uncovered and fixed by AMember's own QA team during product testing.

    With as many customers using PayPal for recurring billing these day, one would think this would be important enough to fix right (and fast).

    2. "finish_waiting_payment" - Not Called for Recurring Payments

    I was directed by AMember Support to use a "finish_waiting_payment" plug-in my "site.inc.php" file to detect billing events, so I can properly integrate AMember payment completions with Post Affiliate Pro (a 3rd party affiliate system). This seems reasonable enough; however, in looking through the PayPal_r plug-in, the recurring billing does NOT call finish_waiting_payment() after an actual payment is made on the "subscr_payment" event (it only calls FWP for the "subscr_signup" event).

    It seems clear from these two basic problems that this PayPal recurring plug-in needs some work and a lot more testing by AMember, so its customers don't have to finish the development for AMember (which is what I feel like I am now doing!)

    Am I the only one having these kinds of issues with the AMember PayPal recurring plug-in?

    This is URGENT. Our site is going live in 3 days and this is critical to fix right.

    Meanwhile, I suppose I'll have to start working on my own fix...
  2. rickbraddyllc

    rickbraddyllc New Member

    Joined:
    Jan 27, 2009
    Messages:
    20
    Close to having fixes available

    I have coded up two fixes for these issues.

    1. Calculate final product expiration date when user cancels trial or subscription from PayPal (PayPal IPN "subscr_cancel" event).

    2. Call FWP function upon notification by PayPal that a payment has taken place (PayPal IPN "subscr_payment" event).

    Will review with Alex, then test them on our site and make the fixes available (or recommend AMember do so), so everyone can make use of these PayPal recurring subscription fixes.

    Rick
  3. alexander

    alexander Administrator Staff Member

    Joined:
    Jan 8, 2003
    Messages:
    6,279
    Hi,
    1. First issue exists only for new paypal profiles and will be fixed in next version. It is tested now.
    2. FWP already called on subscr_payment event.
    It is called from $db->add_payment($newp); (line 580 of paypal_r.inc.php)
  4. rickbraddyllc

    rickbraddyllc New Member

    Joined:
    Jan 27, 2009
    Messages:
    20
    Alex,

    We need the fix today. Can you please make it available?

    Thanks
    Rick
  5. rickbraddyllc

    rickbraddyllc New Member

    Joined:
    Jan 27, 2009
    Messages:
    20
    AMember Support Failure!

    Your Support is failing us!

    This is not PayPal's fault for making changes to their site. This is AMember's responsibility to its customers to make timely fixes available to ensure proper operation with PayPal.

    Are we going to get the fix today or are we forced to develop our own workaround??

    UPDATE: Got a quick email with a proposed fix from Alex. Apparently there was some miscommunication, so all is now well...
  6. alexander

    alexander Administrator Staff Member

    Joined:
    Jan 8, 2003
    Messages:
    6,279
    Rick,
    Sorry for our stuff reply in helpdesk.
    I didn't see ticket from you and based on your past messages in this thread I though that you do not need help.
    I sent fixed file in helpdesk.
    New version with fixed plugin will be released in next few days As soon as we will be 100% sure that it working correctly.
    In regards to fault, this modification in paypal's key functionality was never anounced, and it is still not officially confirmed.
  7. rickbraddyllc

    rickbraddyllc New Member

    Joined:
    Jan 27, 2009
    Messages:
    20
    Alex,

    As I indicated in email, this issue is NOT fixed. When a trial is started, it is still setting the product end date to December 31, 2012 (because it's also a recurring subscription).

    Then, when I click on the "Cancel" subscription link inside PayPal site, it cancels the trial and sends the IPN event "subscr_cancel" event to AMember, as evidenced in the payments table. The existing paypal_r plugin DOES set the product status to "CANCELLED" properly; however, the trial end date is wrong - it is still set to December 31, 2012.

    The code I sent to you today is required to properly set the product's expire_date value. This value must either be set to the end of the trial period (if a trial is in-progress) or the end of the sign-up period (if no trial), or the end of the last paid subscription period (if past the trial period).

    Thanks
    Rick
  8. alexander

    alexander Administrator Staff Member

    Joined:
    Jan 8, 2003
    Messages:
    6,279
    This has been fixed and I sent updated file in helpdesk. Let's continue in helpdesk ok? Your ticekt is assigned to me personally.
  9. rickbraddyllc

    rickbraddyllc New Member

    Joined:
    Jan 27, 2009
    Messages:
    20
    I can confirm that the latest fix by AMember now works as expected (and is much simpler and better than my complex workaround solution proposed above).

    Thank you for the fix, Alex!

    This case is closed for us.

    Rick
  10. vshah01

    vshah01 New Member

    Joined:
    Mar 10, 2010
    Messages:
    15
    Hi Alex...

    Can you please look at ticket ZDM-24688-746 in relation to new paypal profiel fix... thanx
  11. alexander

    alexander Administrator Staff Member

    Joined:
    Jan 8, 2003
    Messages:
    6,279
    vshah01,

    I sent you fixed paypal plugin.

Share This Page