Paypal Workaround for accepting installment payments
Please note that due to recent changes in Paypal, this workaround can no longer be used.
At this time we are not planning to add installment payment solutions to OptimizeMember as our current integration is not able to process those payments. We may add this in a future update but is not on our short term product roadmap.
Installment payments are not currently a feature built into OptimizeMember, but we do have a workaround.
Here is how to setup the 3 payments for 3 months access (you can manually change the access to be longer by editing the user and changing the EOT setting).
1. Go to "OptimizeMember > PayPal Pro Forms"
2. Select the pro form for the membership level you would like to use.
3. Generate the shortcode and copy it into a text editor such as notepad.
4. You'll need to change the rrt="" to rrt="2" (initial payment plus 2 recurring payments - so rrt="" should equal the total number of payments minus one. So if you want 3 payments, set this to rrt="2" and if you want 6 payments then set it to rrt="5")
5. If you do not have a PayPal Pro account this will still work, but you'll need to change the part of the shortcode that looks like: accept="paypal,visa,mastercard,amex,discover,maestro,solo"
to just accept="paypal" - since you wouldn't have Paypal Pro in this case, the credit card fields won't work anyways. You also do not need an SSL with only the PayPal option (since you won't be taking credit cards on your site).
**Please note that the rrt setting cannot be less than 2**
** If you do not set the rrt setting correctly your customers will either be overcharged or undercharged. The rrt number is the number of payments AFTER the first payment. So if you want 3 payments total, then it needs to be set to "2" in order for it to function properly. **
If you notice below all the Pro Form options there is a section titled "Shortcode Attributes ( Explained). You'll see this there:
rrt="" Recurring Times ( i.e. a fixed number of installments ). Only valid w/ Membership Level Access. When unspecified, any recurring charges will remain ongoing until cancelled, or until payments start failing. If this is set to 1 or higher the regular recurring charges will only continue for X billing cycles, depending on what you specify. This is only valid when rr="1" for recurring "Subscriptions".
:: Very Important Note ::
Please note that a fixed number of installments, also means a fixed period of access. If a Customer's billing is monthly, and you set rrt="2", billing will continue for only 3 monthly installments. After that, billing would stop, and their access to the site would be revoked as well ( based on your EOT Behavior setting under: optimizeMember -> PayPal Options ).
If you need to add a package to the button, that can be added by using the ccaps="" field. Just type the package name exactly how it appears when you created it, and if you need more than 1, just put a comma between them with no spaces.
So for no packages, and only a level just leave it alone.
For one package only it will look like this:
For two packages it would look like:
We suggest putting the Pro Form on its own page such as a "checkout" page. Then, you can use an OptimizePress Live Editor "Button" element, and then use the URL of the checkout page there to link to it. Users will then fill out the form, pay at paypal.com and then will get an email with their login details.
Very Important Step to make sure your users don't lose access:
The last step here in order to avoid the customer from being downgraded automatically after the last payment, would be to completely disable the Automatic End of Term (EOT) settings by going to "OptimizeMember > PayPal Options > Automatic EOT Settings" and turning this off.
Please note that in doing this, you will have to manually adjust user accounts when there are any subscription cancellations, or refunds as disabling the EOT settings prevents OptimizeMember from automatically downgrading the customer after these actions occur.
Important note: Paypal Button Shortcodes do not always work well for this because in some cases the rrt="2" is not carried over to Paypal. We are looking into this issue as it seems Paypal may have made some changes on their end that is not recognizing the rrt="2" variable in some cases.