I am offering an annual program and want to automatically withdraw payments from my clients via PayPal. I see how to create a subscription to do this.
However, it charges them one month after they pay the first installment. I really want to bill all of my clients on the 1st of the month for 12 months, to simply the accounting for myself and them.
Is there a way to create an automatic payment on the 1st of every month without asking all of my clients to pay on that specific day?
I called Paypal and they said it would require html coding, but couldn't tell me HOW that might be accomplished for someone like me who doesn't write code.
If you're using the Recurring Payments API you can specify the PROFILESTARTDATE and set it to whatever future date you want. The profile will be become active immediatly, but it won't start until that date, which is when the first payment would be made.
Just keep in mind if somebody signs up on the 2nd of the month you'll basically be giving them a free month.
Related
I am working on one website where i need to add additional charge on the running billing cycle of the user.
Like on start phase i will charge user to 169.99$ per month using paypal pro createrecurringprofile method, but on next month if user required some other things from my website then i need to charge 50$ extra for that particular month.
So is it possible to do something like that, where i can charge user for particular month and the next billing cycle will work like as it on regular phase.
Also is it possible to add discount amount in running billing cycle and for the next month it will work like as it is?
I am currently using Paypal for subscription payments. Mostly it works fine but my problem is this:
If I am away for a week, how do I handle this? People pay mostly for the service the site provides and expect a certain amount of content added every day (or at least a weekly average amount). Therefore people shouldn't have to pay for access to the site during the time it is not being updated.
Previously I added the number of days I was away to the number of days of subscription everyone had remaining. But now there are people whose subscriptions are a few weeks into the future. Which is fine for me, but confused a lot of people.
To further confuse matters, some people pay weekly, some monthly, some annually. There is a 7 day (no Paypal needed) trial. People get their first 2 weeks in a subscription for a token amount. Some people don't pay a subscription and just pay for a week/month/etc as and then they want to.
The one-off payments and the free trial should be simple enough, I can add the days I'm away onto their account and they will know not to pay until it runs out. So it's mostly the subscription people that are the problem.
I see I can suspend payments, but I can't find any details of how this would work. If I imagine I am away from Monday until Thursday, I assume suspending payments for people wouldn't work - if someone's payment is due on Friday, I would have unsuspended the payments by then and their payment will go out as normal. If their payment was due on the Wednesday, the next time a payment will be taken is next Wednesday, so they will miss out on Friday (when I get back) until Wednesday when their next payment is taken. Or maybe suspending payments doesn't work like that.
An ideal situation would be to push user's payment forward until I'm back. I'd lengthen everyone's membership until the Friday and then payments would then start again from then - but I've not found any option to change subscription days.
I could cancel membership payments and then hope everyone signs back up, but I don't like that option.
Have I missed an option or is this one of those impossible situations?
Answering my own question. The answer was very easy.
The best solution I've found is to add extra days to every ones subscription. Then just the recurring payment people, I need to lower their subscription payment. And then put it back to it's original value afterwards.
As a simple example. The subscription is £14 per week. I have 4 days off. Upon return I add 4 days to everyone (or a proportional amount (if they subscribe two days before I return, for example)). Then I make everyone's next subscription payment reduced by £8 (they subscription averages at £2 per day - for 4 days). Then after their reduced payment - make sure it goes back to normal.
Here's my scenario , would love it if someone will tell me if it's possible and how to do it :
I have a customer with active profile for a monthly recurring payment , I now decide to give this customer X amount of days free by delaying his payment due date (not by changing his payment amount) , is it possible? (note that X can be any number)
if so then how? (which API? documentation? example? etc.)
Thank you very much for your help
It's not actually possible. Once a users signs up for a recurring payment, it's set in stone. You can't change the amount they pay, you can't change the frequency of payments, anything.
You can set up a new profile, and cancel the users recurring payment on the old profile, and tell them to pay on the new profile (which will set up a new recurring payment on a new schedule), but that's about it.
It's not very flexible.
You can change your due date. I just did by calling them. It takes two billing cycles for it to be changed. They can help forgive you one time if you call and going to be late. So yes you can change your due date
I called to change my billing date. It takes up to three months and for that period you will be billed on the existing date and the new date. 2 payments will be required. In these days of computerisation this seems to be ridiculous. So will leave it until I have a zero balance, and then change the due date.
I'm working on a site that does non-recurring subscriptions, currently testing it on Paypal Sandbox. Let's say duration is 1 week (t3 = W, p3 = 1). I didn't include src and srt variables in the form. From what little information I have read related to this, a non-recurring subscription counts as a one-off and immediately expires the subscription. I want it to still lapse the duration and subscr_eot be called one week later. The application is run on Java/JSP.
This sounds like it needs to be handled on your side, not on PayPal's.
You receive a payment for your services, and attach an expiration date to that user in your database. He's only allowed to log into your site before his account expires.
So, I now devided the fee into two parts: eg, the one year fee is $10, than I charge $9.95 as the one year trial amount a1, and $0.05 as a non-recurring daily fee (a3) for only one day.
Seems that does it... at least the EOT is not immediately send...
Just have to explain your customers that this awkward payment plan is because of a Paypal peculiarity...
We are using paypal recurring payments programmatically using the Express Checkout APIs.
Based on the docs, it seems that the profile can take up to 24 hours to activate. I'm trying to figure out how to setup the billing start date such that it charges on the day that the profile activates, rather than forcing it to wait up to 24 hours.
Based on the API docs, it seems that I need to pass in the start date at the time of profile creation, which has forced me to do (today + 1 day) to force the 24 hour delay. But then if the profile activates right away and I get an IPN message, i still have to force the customer to wait for that 24 hour period...which doesn't seem very nice.
Although i can do an initamt for an upfront payment, I'm trying to avoid doing it b/c i think that would make me reduce the renewal period (e.g. if it's a 6 month subscription, i would charge 1 month upfront and do a 5 month recurring.), which would be confusing for the consumer.
I'm hoping someone can help me with this.
Docs.
Just wanted to follow-up on this. I spoke with PayPal today to clarify the issue.
They recommended using an initial payment to charge right away and then reducing the subscription term by 1 interval. So if you have a six month payment, then do a 1 month charge immediately, then do a 5 month recurring. Seems sort or ridiculous and partially confusing for the consumer.
They also confirmed that the initial recurring profile step may be delayed up to a day b/c it is run as batches.
Put that together with the fact that the system skips February for end of month payments (they adjust to the first of the month), and you've got yourself a lot of fun times ahead.
Ya it's best to do an initial payment and then subtract one from your interval or put your start interval 1 unit into the future.
Also note that if the initial payment if unable to be charged the API call will fail where as without the initial payment the API call can go through (success response) but when the payment gets charged (up to 24hrs later), it has the chanced to not be successful.
ie. credit card is good so it approves the recurring billing but when it attempts to charge, for some reason it gets rejected.
Make sure you have IPN listeners for recurring_payment_skipped to take account for that.
Simply charge for 6 month instantly and set the recurring payments to start after 6 months from the moment of initial payment.