I am implementing PayPal HTML buttons on my website, and I want to know what would be the best practice for registering customers to use my website. Should I have users fill out information before they pay and validate their accounts once a payment is made? Or should I have them create an account after a payment is verified? Also, at what stage should I input any associated data from the customers into my database? Thank you for any tips/suggestions!
Edit: My website is an online software website where users will pay a monthly fee to have log in and software access.
To me, payment should always be the last action of the user cause if anything else goes wrong, you don't want to have to undo the payment. So let the user navigate your website anonymously if he wants. Then, when he wants to buy something, ask him to log (if he already has an account) or register (if he does not have the account), and then he can process the payment on paypal once he is authenticated.
You will send his information to the database when he submits his account registration. If his submissions fails for some reason (missing field or whatever), he will have to do again until it works.
Not sure that answers your question. Of course, that seems the most logical way to me, but there might be some cases where you want to do things differently (which I do not see right now)
Related
Well, I was wondering if it is possible to automatically logins the user in paypal everytime they checks out?
Given the scenario a new user registers in my site.
New User->Logins to paypal->get permissions(etc..)->approve->gets back to my site
So, everytime the user checks-out it automatically logins in paypal.
I would like to link his paypal account to his profile in my site thus easier check out
I saw the documents but it is just too much for me to comprehend.
It sounds like you are referring to reference transactions. With PayPal you can create a billing agreement, and you would save the billing agreement ID to the local user record in your database.
In the future when they are logged in and checking out on your site you can pull the billing agreement ID and pass that into a reference transaction request to PayPal. This will immediately process the new payment without any approval necessary, so you can simply display the order complete page to the user.
Their experience would be choosing their saved payment method, clicking to buy, and the complete page would show up immediately. No checkout forms or login (other than logging in to your site) necessary.
Depending on whether you're working with the Classic API or REST the specific calls would be different, but "reference transactions" and "billing agreements" are the terms you're looking for.
We've integrated Paypal on website of client for accepting payments.
All is fine.
But client wants to be able to pay users of his website back if they have earned some bounces/scores etc.
By now we have implemented such system:
If user of website should get paid - admin of website gets notification about it in admin panel
Admin looks manually at data of client and decides whether he pays or not (pressing approve or deny button)
It looks so:
Client is not satisfied with such system, saying it will get tedious and boring business when he gets many users (unlikely, but this is not the point).
I wonder. Is it possible somehow to automatise this process? He would like only to press "Approve" button and user should be paid immediately.
At first I've thought about using the same code that I use for accepting payments:
But when I accept payments, I use address of created shop. Usual users of paypal don't have shops. Well, this is all pretty confusing.
Any links or advice are appreciated. Because I'm not sure whether such thing is possible or good at all or perhaps I should say client that it can't be done.
Thanks in advance.
You can send a payment programatically using MassPay or Adaptive Payments (Implicit Payments). Either of these methods is a little more advanced, and you have to make an API call to the PayPal server.
MassPay has some restrictions US or CANADA business accounts only.
AdaptivePayments requires the account to go through an application process on http://developer.paypal.com and http://apps.paypal.com
I am integrating PayPal Express Checkout API into a digital goods/services website. I worked out all the technical stuff, but now I have a theoretical question - when the transaction is done and I get a confirmation from PayPal, what is the best way to store that acknowledgement from paypal, and credit my user's account?
The ConfirmPayment() function in the paypal library returns from paypal with an associative array, including a transaction ID, and acknowledgement that I have the user's money in my business account.
So my plan is, store that transaction ID as a unique value in a SQL table, so if the user for example reloads the confirmation page, which would then re-call ConfirmPayment($token), my PHP script won't just credit their account a second time, because the SQL table will return a unique ID error.
How are smart programmers integrating this last payment confirmation into the rest of their application?
THANKS.
I would do it like so:
Keep a full log of all the messages your receive from Paypal. Just the RAW data should be fine. Then beyond that point don't need that much traceability. If anything ever happens you can check the log. This should really never happen, if you need to look at this log a lot to resolve any issues you have a different kind of problem. This is why my suggestion is: don't put too much time into it, but make sure you have traceability (albeit a very crude one).
If the user reloads the confirmation page, Paypal will not send you another message. Keep in mind that you should only accept transactions that Paypal has verified. The user should not be able to validate his own transactions by bypassing Paypal.
I want to achieve something like this
http://depositfiles.com/en/gold/payment.php
I have normal users signed up. I want them to upgrade to premium user. Once a person pays, how do I know which user he was signed in ? How do i force the user to login first before being able to click the paypal button and make payment ? Otherwise, I would receive money, but wouldn't know which user to mark as "PAID" in my database.
when you click on the paypal button, it redirects you to the paypal page where you can login and pay.
I also want to accept Visa and Mastercards, is it doable through paypal using the same method ?
Paypal's information can be found here:
Part 1
You can create a subscribe button for each type of subscription you want and use the HTML variables in Part 2 to enable you to know what type of product and what user is included in the invoice.
This needs a lot more details than you currently provide. What language have you written your website in? Static HTML? Ruby? PHP? How does PayPal's payment system work?
normally the way it will work is that your site will pass information to paypal (http://paypal.sourceforge.net/ is one toolkit that seems to be made for php, thought I've never used it so I can't really promise its not abandonware).
once the paypal transaction is completed successfully, control is passed back to your site. you can then set the user's flag in your database as a premium user.
as far as I can tell, you tell paypal to handle payments for you, and the user picks a funding source in paypal. if you want to have visa/mastercard separately handled from paypal you'll need another payment gateway to handle it, like mirapay or something else.
I am selling stuff from here:
http://foundationletters.com/buy-master-mind-products/
One of the things on sale is a subscription to a specific website.
As you can see, I have connected e-junkie to my authorize.net account.
Let's say that I already have pre-generated accounts. In other words, I have logins and passwords that I am selling. I need to be able to convey them one at a time to every person that buys the product.
How do I do this?
I am sorry for such an open ended question. I prefer to not do much PHP / MySQL programming. Perhaps I can just have the person download a program that will automatically connect to a remote txt file from which it will grab an account?
But still i would need a placeholder, I would need to know which accounts are taken and which are not?
Please help if you have e-commerce experience selling "information" rather than physical merchandise using ecommerce with authorize.net
I think if I understand your question correctly, you want to be able to give people access to information/data (in this case, login credentials) upon completion of a transfer of funds (a sale), correct?
This is similar to a software license activation model wherein software vendor sells a license to use their software, the purchaser is given access to use the software by way of an activation key, product code etc. When done via. the Web, typically the seller, upon verifying payment from the buyer, makes the information available on the resulting Web page (usually called a receipt page). This is where the seller displays the sensitive data to the buyer. Customarily, on this page the seller will include a message such as "please print for your records". Additionally, it's very useful to allow the buyer to visit the Ecommerce site again at a later point to re-access the purchased information (if by chance they lost it).
Since you are selling "accounts", what your software could do (after payment is verified):
Generate a new username/password combination and store the credentials in whatever system depends on them to authenticate the customer later.
Display the credentials on the resulting Web page for the customer.
(optionally) Create an association in your database between the new "credentials" record and the new "order" record (not sure of your db schema, but using these names in place of actual entity names).
Hope this helps!
-aj