by BobTabor » May 6th, 2011, 11:59 am
Hi again ... it sounds like it's on s2member's radar, so what I'm suggesting would be a temporary fix (at least, hopefully temporary).
The crux of the issue is that Paypal doesn't treat recurring payments as "first class citizens" in their system like they do one-time purchases. To work around that issue, the software must do an immediate one-time purchase, then secondarily set up a recurring payment. Even if you do that, from experience I can tell you that Paypal Website Payments Pro's fraud filters are hampered by the fact that they can't get at the user's IP address and browser to determine their location, cookie content, etc. I may contact Paypal later today to confirm the order of events here and possible workarounds.
Again, from experience (10 years running a membership site that sells memberships), I can tell you a couple of things ...
(1) You simply can't stop people from stealing your stuff. You can file DCMA take-down notices at Google, limit downloads, stream your content with secure tokens, drip your content ... what have you ... it doesn't matter. If someone wants it bad enough, they'll get at it. I've wasted tens of thousands of dollars ... the movie industry has wasted millions of dollars ... it can't be done. It's a fool's errand.
(2) You don't have to offer monthly recurring for a membership site to work. For the past 10 years I've been offering a 1 year subscription. I've refactored the price over the years based on industry averages, taking the amount I would typically charge monthly and multiplying it by the average number of months before people cancel (6 or 7 last time I heard). So ... you could skip the recurring model all together and just provide one year's worth of access.
(I also offer a Lifetime subscription ... sounds a bit foolhardy and there are occasional challenges, but from experience I know that a rather high percentage of people pay for a membership and never download a single resource. I've done that myself on websites, and I purchase books and put them on my bookshelf and left unread. It's just human nature. Therefore, it all averages out.)
This all clouds the real issue here that you're trying to resolve ... so to comment on that a bit ...
How to set this scheme up ...
(1) Make a payment form for Level 1 and have people purchase / subscribe to that.
(2) After "successful" (???) payment and login, the user would be sent to your "member's home page"
(3) See the "Simple Conditionals" section examples on the "s2Member API / Scripting" tab ... use short codes (see "Simple Conditionals") to show a message and Level 1 people awaiting approval. Explain the process and the reason, and then give them links to pages specifically geared towards Level 1 people (i.e., access to the less secure section of the site).
(4) Upon manual approval, In WordPress' Users tab, find the user and upgrade their Role.
(5) Use additional short codes on that "member's home page" to display different information Level 2 users who've already been approved.
(6) Optionally, on the "s2Member General Options" tab, under the "Page Access Restrictions", set the individual pages that you'll allow Level 1's versus Level 2's.
The only thing with this scheme I'm not sure about is cancellations ... if Paypal sends an IPN that says "User cancelled plan Level 1" and you manually moved them to Level 2, what would happen? Hmm... It would be easy to test I suppose.
Another option ... if someone is willing to pay a year up front, then give them immediate access (Level 3). If they want to pay month-by-month, then they agree to wait a day or so for approval. You can provide immediate access because you would create a "Buy Now" payment form, not a "Recurring Payment" form.