So I'm trying to implement a payment solution for my website and after quite a bit of research, I'm still lacking a complete solution. I'm running Laravel 5.0 and need general shopping cart payment functionality. I thought I would post this to try to create a reference to help others that may be having this issue. I got as far as getting test transactions into the Paypal sandbox and that's where the brick wall has seemed to come in, but a complete overview would be helpful. I’ll list my issues that I need to overcome in order to issues some run into.
Issues needing to be resolved to complete the payment solution implementation
My biggest issue with what I've seen has been receiving the
notification of successful payment processing back, but I'll walk
through what I've seen thus far. I'm not sure how to set up a listener or other methods of detecting a correct payment processing
Dealing with Credit Card information when I’m trying to avoid it
for the time being – I’d like that to be done on the gateway website
Potentially kicking off some of the calls to these APIs in Laravel
when the user checks out
I’m trying to move items to my server, but the development is being
done locally which creates an added issue
The options
There’s simply Paypal
I’ve taken the basic form implementation as far as getting payments into Paypal, but I can’t seem to get payments out. I’ve tried the returnURL and that doesn’t seem to work
I do not necessarily like this option because it seems to be leaving a lot of information in the form that would seem to be better kept private on the server
I’d like to use something complete on git but I seem to find the documentation incomplete
https://github.com/thephpleague/omnipay-paypal
--Not sure how to implement this in laravel
https://github.com/ignited/laravel-omnipay
--doesn’t appear to be being used
https://github.com/net-shell/laravel-paypal
https://github.com/anouarabdsslm/laravel-paypalpayment
--The card information is not intuitive here as that’s what going to
paypal’s supposed to manage
It would be nice to use Paypal express but I don’t see a ton of resources specifically for that.
There's Aimeos.
I don't necessarily feel safe with manually implementing the vsrf
protection and it doesn't seem to offer that much more on the payment
front than
I’m open to others that are complete and charge similar fees to Paypal
Stripe doesn’t work for me. I’m not doing a basic subscription
Any complete thoughts would be greatly appreciated as documentation left short has caused issues in this case. Thanks!
This PayPal PHP SDK will make all of the PayPal classic API calls very quick and easy for you. It's available on Packagist/Composer and can be applied to Laravel very easily.
It supports Express Checkout, Payments Pro, Invoicing, Transaction Search, Transaction Details, Refunds, etc.
This is done in Laravel 4, but I had begun this "PayPal Glass" project a while back to show how the class library / sdk can essentially replicate everything you can do within a PayPal account. Here it is running on my local test server.
So yeah, that SDK should be able to handle everything you need to do with PayPal inside a Laravel project.
Related
I've been working on a secure shopping cart and checkout for a website. I'm using PayPal, and I'd read that PCI requirements aren't as much of an issue if we don't store card data on our site, so if possible I'd like to avoid that.
HTML buttons seemed like a promising option, but upon further investigation, it seems like maintaining control of active user sessions may not be possible. Below are my sources that seem to confirm this.
PayPal button return url usage
delete session variables when session id is known but not able to start session
PayPal payments pro is mentioned in the second post, but I'm wondering if it or anything else meets my 2 design constraints as they're implications for the implementation don't seem to gel very well.
If they are losing session data when returned from PayPal with a standard button then they have something else going wrong. That should not be happening.
That said, if you're comfortable working with APIs I always recommend Express Checkout and Payments Pro.
If you prefer REST APIs you can use that for PayPal payments and direct credit card payments.
If you prefer NVP / SOAP you can use the Classic API.
In any case, keeping session data alive won't be an issue, and as you mentioned, as long as you aren't storing any credit card data on your server in log files, in the database, or anywhere then you won't have to worry about PCI compliance.
I'm working on a Magento marketplace where the client would like to use paypal delayed chain as payment method. Here Client will hold the vendors payment for 15 days and then execute payments. The scenario is Client don't want to hold payments for highly credible vendors. He wants to pay them right away. But in delayed chain, we can't execute payments based on vendors. When the time comes to pay vendors, all vendors will be paid at once based on transaction id or pay-key which used to create payment.
I need to implement this scenario in Magento. Does anyone have solution on this potential issue?
After digging deep about this issue, I found that paypal doesn't support what I asked from their API or the API is still isn't matured to accommodate the need. So we went with another solution to overcome this problem. Solution is not efficient but it's the only working solution as of now.
We have to go with checkout by vendor, so that we can execute payment based on vendor since each order is associated with a vendor.
I use intuit merchant services - customers pay me with credit card after I send them an email with a link to pay, and everything works with no problem. However, my problem is that the link webpage structure is very outdated and some customers have told me that it doesn't look trustworthy, which I have to agree.
Is there any solution to this, like creating a user interface or a app that I can actually have developed to make this links a little bit more to look like my website so customers don't feel they ever left my website?
Thanks.
You should be careful with this idea. I am not a legal professional and am in no way attempting to give legal advice, but doing what you are suggesting can be illegal in some cases. Some sites disguise their payment screens in a similar way for malicious purposes in a manner called phishing, and there may be little legal differentiation between doing so with good or ill intent.
I don't think this is possible but here is what you actually can do:
Ask your Payment-Website about an API, then you might be able to change the layout.
Inform your customers about the situation and that they will be redirected of whatever you do.
Get a SSL-Cert for your website.
Find another way to receive payments in a trustworthy way
Perhaps someone using PayPal can advise me on the best way to implement the following situation.
I'm developing a website for a non-profit organization and right now we are already setup w/ PayPal and have a "Donate" button on the main page. The website has audio samples and we would like to provide the option for the user to buy the full audio via PayPay. This is nontraditional (at least to me) in the sense that we are providing the purchased audio files for download immediately after payment.
Also, note that there is a lot of Audio files and, if not too difficult, we would like to keep track of sales on each item purchased.
How should I design/implement this situation, while using PayPal.
(On a separate note, in the future I would like to keep track of Users and "who purchases which items", so that in case something "bad" happened during the audio download, the user would have the chance to re-retrieve the downloaded item.)
Technology: ASP.NET 4 (MVC 3)
You may want to look into Paypal Express Checkout that verifies using Paypal's IPN.
This is a long answer and it is best that I point you in the direction of the above and ask that you look up the documentation itself.
Things to keep in mind:
There are more checkout methods aside from Paypal's Express Checkout, don't get these mixed up when you are looking through the documentation.
Some of the Paypal ASP.NET code examples were out of date when I last implemented this (about 3 weeks ago)
This tutorial was quite valuable when I was going through this process.
Code: http://blog.wekeroad.com/2008/10/11/mvcstore-part-22
Video: http://www.asp.net/mvc/videos/mvc-1/aspnet-mvc-storefront/aspnet-mvc-storefront-part-22-restructuring-rerouting-and-paypal
See this post in reference to the check-out process workflow. The main idea is that you will need to verify values using Paypal's IPN. Here is the documentation.
In it's simplest form::
You're going to need to assign order id's of some sort to each transaction.
If the payment for the order is not-confirmed (your default state), do not allow download of the mp3.
If the payment for the order is confirmed, allow download of the mp3.
Keep track of all this information and more in your database and create an Admin section of your app that allows you to view / edit details of all orders.
Does anybody knows how exactly can OpenERP's Events Organisation module be integrated with a website for event registration? Basically, a registration form on a website should be able to send information to the module, but I have no experience with this, neither with OpenERP or its web integration, but we would like to implement it. For instance, the module information says that it helps on getting the payments -the registration process should charge participants' credit cards- but it doesn't says anything on what exactly that means and how should it be done.
Any help is greatly appreciated!
Thanks.
If you just want to manage event registrations as part of your web site, I think OpenERP is probably overkill. It's a full ERP system for running your business, so there's a lot to learn.
However, if you want to try it out, I suggest you start by getting a trial subscription and reading through the guided tour. I haven't tried the events module, so I can't tell you how useful it is.
To integrate OpenERP with your web site, you would probably make XML-RPC calls from your web server to the OpenERP server. See the developer book for details.