amy.damnit;10921458 wrote:One more thought - now wearing my customer hat...
If I go to any e-comemrce site, go to checkout, and I see that the website is re-routed to another site to handle the payment, I am outta there!!!
Whatever solution you implement - and I don't know how this applies to what everyone is talking about - it is my strong advice that you avoid the whole funky URL/re-routing thing.
THAT is why I plan on building a home-grown solution and working directly with the payment gateway (e.g. Authorize.net) - I don't want something that looks like it was built by a teenager.
That is my opinion, of course.
Whatever path you choose, best of luck! 🙂
Amy
An API integration works in the way that you never leave the URL but that downside is you have to:
A: purchase an ssl certificate
B: you are responsible for all security relating to accepting and handling the customers card details
C: any security changes that are made you have to adapt your system (3d secure being one of the most recent)
D: if your server is compromised card details can easily be farmed by simply editing either your payment class, card input file
However it does look pretty and gives you the option of holding customer card details for easier/faster checkout.
A gateway integration uses a simple web form in which all the data is put into hidden inputs (usually with an MD5 hash for security) the user or JS then submits the form and the user it taken to the merchants payment gateway (worldpay.com, paypal.com etc...) they fill in their details on the payment gateways website and a response is triggered which posts data to a specified file/uri on your server which will process the post data and allow you to intemperate if the users payment has been accepted.
From a customers point of view if you are a trusted company paying on the websites URL is comforting however if you are buying off a smaller website/comany that you haven't dealt with before I personally wouldn't feel comfortable giving them my card details directly for payment if i couldn't find substantial information on the company before. However if the payment is handled by a reputable payment gateway where you can research into the gateways history etc... you have a point of contact to address the issue if something goes wrong.
ALOT of large multinational companies/services use payment gateways over API payment integrations many with online turnover in the millions.
I know on the systems I have implemented using a payment gateway over an api defiantly hasn't had a negative impact on the sales figures its all about choosing the right tool for the job.
3D secure: Mastercard and Maestro have recently made it compulsory to authenticate "cardholder not present" transactions via "Mastercard SecureCode" (visa has "Verified by Visa" they are basically a branded up login and password. The user registers their card with their email address when first confronted with the 3d secure interface. From then on every time they use their card they enter their email and their chosen password to verify that they are the person using the card and not someone with a stolen card.
What this means for API integrations with Paypal Website Payments Pro, Authorize.net etc... is that developers had to write a whole new process into the payment system with ALOT more variables. Anyone who doesn't support 3D secure cannot technically process mastercard/maestro and possible now even visa.
In the end, though, I am a perfectionist and I say "Do it right or don't do it at all!" (Of course, my goals may be different than others.)
To be the devils advocate what is right! If at the end of the day, it works for the desired implementation, its secure, manageable and scalable who can criticise how you built/implemented your system.
On the point of web payments pro depending on your desired implementation. On a new project I would start off with a gateway implementation then as the project grew expand to an API integrations (web payments pro) when it feels required. There is also the added financial benefit of a gateway implentation