We have Paypal subscriptions set up with over 40 vendors who pay us monthly, quarterly, annually, etc. The problem is, we can’t find an easy way in Paypal to forecast what payments will be made next month. It seems like an obvious feature that Paypal would/should make available on their site, and maybe it’s already there. We just can’t find it.
Can anyone give some insight on how to do this?
Thanks for the response Dan - I’ll have to have another look at the IPN documentation. It may be a better fit for me than I thought.
Are you strictly a Paypal user, or have you used any other recurring payment APIs like Authorize.net?
IPN sends all the data you’d need, so there’s no need to pull anything yourself.
- subscr_signup notice when a subscription is created
- subscr_payment notice when a payment is completed from a subscription
- subscr_cancel notice when a subscription is canceled
- subscr_eot notice when the subscription period has ended (so if someone cancels a monthly subscription after 7 days, the cancel notice comes immediately, and the end-of-term notice comes 1 month after the payment)
Normal non-subscription IPN notices come if there’s a reversal, dispute or failed payment – with a subscr_id field identifying the related subscription. All the notices have the normal IPN fields (name, e-mail, business, payment gross/net amounts, currency, transaction id, timestamp, status, payer and receiver IDs, fee amount, item name, item number and signature).
When I create any subscription or payment link, the user’s ID in my database is sent as the item number for the payment.
Interesting Dan - I’d like to hear more about how you’ve integrated PayPal with your subscription sites. Instead of IPN, I use a cron job to poll Paypal at intervals looking for changes, and update my database from that.
To the OP: Agree with Dan on this - build your own reporting tool. The most reliable information you can get from Paypal will be the amount of the recurring payment, the schedule they’re on, and the aggregate amount they’ve paid so far. Using the aggregate amount divided by the length of time the account is active will give you some numbers you can use for forecasting the value of current customers and future signups. This is particularly useful for calculating the average value of a customer so you can weigh that against advertising costs.
One thing to remember: If your user changes their credit card info, it’s going to create a new Recurring Profile for them, so a user might have more than one payment profile. Be sure you take that into account when determining the lifetime value of a customer.
Build your own reporting tool, that’s what I do for each new site. Use PayPal IPN to have your script notified of subscription creations and cancellations.