Solved

Automated Paypal Payments through ASP.NET site

Posted on 2013-12-19
8
349 Views
Last Modified: 2016-03-24
Hi all,

We are looking at setting the site up as follows;

1. the user registers and will get 30 days of the login free, however they will be required to give their paypal details to set up the monthly fee.

2. once setup the user will have access to a login on the site.

3. if the user cancels the direct debit from paypal, we want to be able to detect this and lock the users login.

Now the questions I have are as follows;

1. Once a user has registered, I assume we will pass the information on the montly fee to paypal through a widget or something. (so would send the start date as being 30 days post the signup date to give the 30 days free). I cannot find documentation or example on this. Is this possible/easy to setup?

2. How can anyone recommend that we detect automatically if a payment is not received?

Thanks in advance.

Matt.
0
Comment
Question by:flynny
  • 4
  • 4
8 Comments
 
LVL 11

Expert Comment

by:Andrew Angell
ID: 39731123
There are lots of options for setting this sort of thing up.  The important question before we go down that path, though, is how important is it to you that you can accept credit cards directly to create the profiles without the buyer needing a PayPal account?
0
 

Author Comment

by:flynny
ID: 39731183
That would be ideal I suppose. I was looking down the route rather than something like sage pay due to the costs and contracts involved.

I suppose this way they would not then need a paypal account? Would this complicate the process or increase cost?
0
 
LVL 11

Expert Comment

by:Andrew Angell
ID: 39731194
Yes, if you want to handle credit cards directly you'll need Payments Pro, which is $30/mo, and then also Recurring Billing, which I believe is another $15 or $20/mo.  This will give you the most freedom to build checkout forms directly into your website however you want.

If you want to allow people to sign up with or without a credit card but you don't want to pay that much you can go with Enhanced Recurring Payments for Payments Standard.  This is $20/mo and works just like Payments Standard, so you would just add a basic HTML PayPal button to your page but then the checkout would allow people to pay whether they had a PayPal account or not.  

If you want something completely free you can go with Payments Standard Subscriptions or Express Checkout and Recurring Payments API's, but then customers would have to have (or create) a PayPal account in order to create the subscription profile.
0
 

Author Comment

by:flynny
ID: 39731444
Hi,

to begin with I think we will go with the free version.

Ok, so in this case I woudl run the process as ;

1. the customer signs up and their details are added to the db.

2. we then ask them to signin/signup to paypal.

3. we then send across the reoccurring payment info to paypal.

4. the login is created once confirmed back

How then can we automatically check if the user has paid on renewal? i assume its possible to do this check and lock the account if the payment is due?
0
Why You Should Analyze Threat Actor TTPs

After years of analyzing threat actor behavior, it’s become clear that at any given time there are specific tactics, techniques, and procedures (TTPs) that are particularly prevalent. By analyzing and understanding these TTPs, you can dramatically enhance your security program.

 
LVL 11

Accepted Solution

by:
Andrew Angell earned 500 total points
ID: 39731550
I was change that a little bit.  

1)  Customer signs up using PayPal Express Checkout API.  (You could use Payments Standard if you want to keep it more simple, but since you're working with .NET I assume you prefer web services..??)

2)  Use IPN (Instant Payment Notification) to update your database with the new account/login details based on the status of the payment.  This way you can handle e-checks or any other type of pending payment that clears later correctly.  You will also get IPN's for things like completed payments, failed payments, canceled profiles, etc. so you can handle it all automatically in real-time.
0
 

Author Comment

by:flynny
ID: 39731701
Hi angelleye,

thanks for all your help by the way :)

OK, so by setting up and using an IPN, Paypal would send a message to my server when the monthly payment is processed (am I reading this correctly).

So effectively I can catch this request and set the db field (maybe set an expiry date to be the next month) if the payment is successful?

We could also have an error field where we catch a declined or deleted payment to give feedback on why the account is locked?
0
 
LVL 11

Expert Comment

by:Andrew Angell
ID: 39733049
Yes, exactly.  IPN notifications will be triggered for any event like that so you can update your database, send out email notifications, hit 3rd party web services, etc. in real-time.
0
 

Author Closing Comment

by:flynny
ID: 39778658
many thanks for this.
0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

This article describes relatively difficult and non-obvious issues that are likely to arise when creating COM class in Visual Studio and deploying it by professional MSI-authoring tools. It is assumed that the reader is already familiar with the cla…
Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…

746 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now