Page 1 of 1

Manually Adding Members W/No Previous Payment Method

PostPosted: April 18th, 2011, 8:53 am
by AMEEKER
I have a list of members who previously paid for annual membership entirely offline. Should I complete the following fields like this:

Paid Subscr. Gateway: [?] PayPal (it's the only choice)
Paid Subscr. ID: [?] none
Custom Value: [?] none
Custom Capabilities: [?] none
Automatic EOT Time: [?] The date that their annual membership expires

What then will be the flow for those who want to renew their membership by paying online? Is there some sort of shortcode for a page that would give them access to their account so that they can choose to renew their membership?

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: April 18th, 2011, 9:58 am
by AMEEKER
So let's say I manually add all of these members who have previously paid with cash or check. How can one of those members then use their S2Member account to pay online without S2Member somehow creating a new account for them (because wouldn't it send them to the registration page after they'd paid)?

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: April 19th, 2011, 12:38 am
by Cristián Lávaque
Hi Ameeker. :)

You can import users one by one in s2Member, or use the Import tool in s2Member Pro if you have it.

It's important to understand that s2Member manages the access to the content, but the payments are processed by PayPal.

If the members have a subscription running with PayPal, then you should add their Subscr. ID values to the accounts in WordPress.

You can use s2Member's modify buttons or pro-forms (in the case of s2Member Pro), which would modify an existing account instead of creating a new one. WP Admin -> s2Member -> PayPal Buttons -> PayPal Subscr. Modification Buttons

Let me know if that helps.

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: April 19th, 2011, 2:13 pm
by AMEEKER
Thanks - that will work. I will just put everyone in as free subscribers and then they can login and purchase the level of membership they would like for the upcoming yet.

Can you describe to me the renewal process, though? I don't see it explained anywhere step by step from the users perspective. Let's say that I'm using a one time non recurring membership payment. At what point are members given the opportunity to renew their memberships for the next year, and does S2M send them a reminder, invoice, anything to help them towards making their next year's payment?

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: April 19th, 2011, 4:40 pm
by Cristián Lávaque
s2Member doesn't send reminders at the moment, but you can use a list server to manage this, I guess. The integration with list servers is explained here WP Admin -> s2Member -> API / List Servers.

Another option would be to get another plugin that'll work as a list server https://wordpress.org/extend/plugins/se ... oresponder

Although I haven't seen an integration between s2Member and such a plugin, you may have a developer help you achieve it. viewforum.php?f=37

Regarding renewals, when adding more time to their membership before their EOT is up, will cause the previous one to end and the new one to start at the time of payment.

This is something we're planning to improve, but in the meantime you can fix it with this trick:

Create this directory and file /wp-content/mu-plugins/s2-hacks.php. Inside the file, add this code. Be sure there are NO spaces or line breaks before or after <?php ?>

* This code is untested, but it should work fine. Please let me know if you have any trouble.

Code: Select all
<?php
add_action 
('ws_plugin__s2member_during_paypal_notify_during_before_subscr_signup_w_update_vars', 'during_before_subscr_signup_w_update_vars');
function during_before_subscr_signup_w_update_vars ($vars = array ())
{
    $GLOBALS['existing_s2_eot_time'] = get_user_option ('s2member_auto_eot_time', $vars['user_id']);
}

add_action ('ws_plugin__s2member_during_paypal_notify_during_subscr_signup_w_update_vars', 'during_subscr_signup_w_update_vars');
function during_subscr_signup_w_update_vars ($vars = array ())
{
    if (($eot_time = get_user_option ('s2member_auto_eot_time', $vars['user_id'])) && $GLOBALS['existing_s2_eot_time'])
        update_user_option ($user_id, 's2member_auto_eot_time', $eot_time + ($GLOBALS['existing_s2_eot_time'] - time ()));
}
?>

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: April 20th, 2011, 11:26 pm
by Jason Caldwell
Sounds like you've got it now.
What you described should work just fine.

AMEEKER wrote:Thanks - that will work. I will just put everyone in as free subscribers and then they can login and purchase the level of membership they would like for the upcoming yet.

Can you describe to me the renewal process, though?

This video might help you. http://www.s2member.com/paypal-modifica ... ons-video/
This Modification process is also detailed in your Dashboard, under:
s2Member -> PayPal Buttons -> Modification Buttons.

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: April 26th, 2011, 9:02 am
by AMEEKER
Hi Jason,

Thanks so much for your help so far. I think I have only a few more questions.

1. The organization says that their membership year runs June to June. Is that what I should put for the EOT in individual's profiles?
2. And, what does that code above do? :-)
3. Let me run through this one last time... I'll put everyone in as free subscribers to start. They'll have their usernames/passwords then, so they can login to user the modification buttons (as an annual recurring button) to choose the membership level they'd like for the upcoming year. Then when their EOT comes around the following June...they can login back in and either upgrade, downgrade, cancel or.. just let their membership renew automatically via PayPal? If June 31 is the EOT, when will PayPal charge them again for the next year's membership?

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: April 26th, 2011, 12:38 pm
by Cristián Lávaque
The code above will add the new term to the time they have remaining, instead of resetting it to the new time of payment. So if you have 30 days left and pay for another year, you'll have 395 days instead of starting the new paid year right then and have just 365 days because the remaining 30 got discarded.

Now, since you have to set your EOT to June, you'll also have to take that into account for the button/form you use, so it adjusts the time left until June and the price, right?

viewtopic.php?f=36&t=1604
http://www.php.net/manual/en/ref.datetime.php

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: April 26th, 2011, 1:36 pm
by AMEEKER
I asked the org, and they said, "If they join after Jan 1, they pay half. Im guessing anyone joining in may would be applied to following years dues."

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: May 3rd, 2011, 2:40 pm
by AMEEKER
If I use the one time payment, non-recurring for new members, how will they then renew their membership at the next year? They will already have an s2member account created, so I wouldn't want them to go through the same checkout process that a completely new user would because that will create a new account.

The same is true if I use a modification - how will users simply renew their subscription if they don't want to change the level?

Re: Manually Adding Members W/No Previous Payment Method

PostPosted: May 3rd, 2011, 8:25 pm
by Cristián Lávaque
If you show the button only to logged in members, then s2Member won't have them create a new account, it'll modify the current one (the one the user is logged in with). If you use the hack I mentioned above, the new period paid will be added to what they had left of the previous one.