I've built an Ecommerce site in Silverstripe and I'm new to this, sorry if I ask something silly. I'm just wondering how do I implement payment gateways to the Ecommerce site in Silverstripe? Do you have any good tutorials that I can follow?
Thank you very much. By the way I'm choosing DPS as the gateway.
Any recommendations for me to start this would be appreciated.
You may want to start by looking at the Payment module for SilverStripe.
http://www.silverstripe.org/payment-module/
https://github.com/silverstripe-labs/silverstripe-payment
In my opinion payment gateway these days provides so much facilities that all we need to do is to redirect user to the payment gateway with certain attributes like amount,curreency and some other attributes being required by the gateway.
once payment is authorized payment gateway redirect user back to your page.Now almost all payment gateway work in two ways
Synchronized call
ASynchronized call
in the second method you have to provide some entry point to the gateway where it will send you the all required information about payment.
Once you have everything all you need is to do final checkout process for the user.Beside the silverstripe payment module i will suggest you to go through DPS documentation as they might have shown some samples how you can communicate with them and what they expect from you in the request what its structure should be and what they will send back once user done with payment,response structure etc.
I tend to follow this approach once we decide the payment gateway go through there documentation set up a test account with them and than start playing around.
Related
I'm building website that is able to sell and buy product inside the website.
Users can post product and buy product from others.
Only remain thing is to integrate with payment gateway.
I'm going to use stripe for payment gateway.
Is it possible to do that with stripe?
Which is the best way to implement this?
The website was built in Laravel 5.4.
Yes, you can use Stripe for that. Taking advantage of Laravel Cashier. They've already implemented some logic that you can reuse.
Second, you want to pay 'sellers', yes, Stripe does that. Please check Stripe COnnect, which is great for exactly what you are trying to do.
Link: https://stripe.com/connect
This link shows specifically how to charge the user and keep some fees: https://stripe.com/docs/recipes/store-builder
If you follow all the documentation from Cashier, you are good to go.
Link: https://laravel.com/docs/5.4/billing
I use payment via paypal and I need the customer to enter secure payment information on my webpage.
After reading tutorials, I need to set action to paypal => "https://www.paypal.com/cgi-bin/webscr" and the customer to complete their data on paypal website.
Is it possible to have customers enter card data on my own website? Can you offer any advice or manuals on how to implement this?
Thanks. Sorry for my English
Is it possible to have customers enter card data on my own website?
Yes it's possible. Is it advisable? Not if you don't have to.
If you are passing the user to PayPal to complete payment, there is absolutely no reason for you to collect the CC data on your own website. All you do is add to the customer's risk as well as your own (since there are certain legal ramifications if you screw something up).
If what you are asking is how can you do the entire process on your own site, then that's a different answer and a pretty involved one. PayPal has options for this with different plans and each of those options has plenty of documentation on how to setup and configure the process.
As #butlerblog mentioned, there are different levels of integration for ecommerce. If you truly want to stay away from paypal but are considering your other options for third party integration, you can check this site to start getting an idea of how involved with ecommerce you want to get.
Interested to know if (a) this is possible, and (b) whether any of you have successfully implemented the functionality. The wiki page repeatedly refers to "Currently, by default, Magento supports purchasing items with recurring profiles only for the PayPal payment system and only through the Express Checkout method." - I'm not sure if that's because there are no payment other methods currently implementing the Interface, or because they've hardcoded the architecture such that it will only work with Paypal.
To test this, I've created a payment method that stubs out the Mage_Payment_Model_Recurring_Profile_MethodInterface methods, and that payment option is now presented when I go through checkout with a Nominal product (i.e. product with a recurring profile) and the order is placed successfully. However it doesn't appear in the list of Sales>Recurring Profiles or Customer's Billing Agreements. I guess they will be populated by the stubbed-out methods.
I suspect that the fields in Mage_Payment_Model_Recurring_Profile are setup to mirror those required by Paypal, so it may take some mapping to translate those into another payment gateway's requirements, but that should be achievable theoretically, possibly using a model override.
Sorry for the rambling question, but I'm keen to hear your experiences since the framework seems to support it on first investigation.
Which country are you in? With some adaption of the RBS WorldPay module you can use RBS FuturePay which is geared around repeat payments. I only had to use the module to take two 50-50 payments, however, the FuturePay technical support was brilliant and the Phoenix WorldPay module is not bad either (as starting points go). Getting it to integrate into Magento's Recurring Payments profile is not something I needed to get to work, however, you could put some other form for people to cancel an order.
I have a database where you can select articles etc, users have an account, it's all in mysql and php (i guess you don't need that code).
What i was wondering was how to write a script that allows users to pay online for the articles they selected?
It doesn't need to be any code, just ideas / hints / tips / ... (that are doable in PHP or something similar)
Thanks in advance!!
-Samuel
You have to do that through a service that collects money, such as paypal or a bank.
You make an account there, and they will provide the necessary files and documentation to do that.
Usually it will mean
when the user wants to pay, you redirect them to a specific page in the payment site
you host an IPN (Instant Payment Notification) file where that site will contact you when he receives a payment
I've done some paypal coding before and it is easy to set up, suggest that you should search for payment gateway that, i've work with ipay88.com before its one of payment gateway at my place.
Usually if you setup the paypal for the business transaction you will need to register as merchant account and they will charge you per transaction, same goes with payment gateway.
It is a very broad question. But basically you need to integrate some payment module, such as paypal. Look at their website, where there are tutorials on how to get it working with php.
got a question and I hope this is right place to ask :).. don’t quite understand how payment works in magento.
client goes to checkout and lets say wants to pay as a guest, so provides address etc. and finally gets to payment methods. Then I want clients to pay thru credit card. Already have module installed for gateway (bank?) of my choice. At that point I would expect users to be redirected to 3rd party page (bank hosted) where they giving all the details, only after being returned to my magento site with appropriate message.
In magento however it seems like they need to provide cc numbers and details on magento checkout page. I don’t understand if I (or the payment module I installed) need to transfer then all the credit card details to bank? I would have to have checkout page on ssl connection and static ip right?
The thing is I want to avoid touching CC numbers at any point and would love to have it done by a bank page. I like the idea of magento interface all the way without redirecting to another page though, the only problem is not sure if would be able to set it all up properly.
If anyone could explain to me possible options, what is the common way to do it and how the whole process works that would be very much appreciated.
I did my research and looked all over google and various forums still need someones help though. Please let me know if some parts of my question are not quite clear, will try to better explain if necessary.
Had to develop a payment module for DPS in NZ some time back. How this works is, you go to pay on the site and the payment module php code runs that sends off the details to an acquiring institutions payment website who process the transaction for you with the bank. In my case as I recall it was DPS NZ via some soap calls. The Soap calls contained details such as the total cost, the currency, the merchant number to identify who you are paying. The acquiring institution (DPS in this case) then takes your credit card number and expiry date and do the processing. Then, again via some soap calls back to your own magento website you get redirected back with the error code - success, etc.
DPS use soap I think, but other payment websites may use other protocols to work. The other possibility is that your credit card acquiring page could be hosted on your website and you accept the credit card numbers and do all the processing within magento to the acquirer.
In short, the process is controlled by the payment module itself. If you want to see more detail, have a look at the payment module tutorials that are available and also the comments in the magento forums. You can also look at the paypal module code.
The default architecture that Magento payment modules use involves the customer interfacing with the module and the module talking to your payment gateway behind the scenes.
Basically the customer inputs all his data (CC and all) and hits the payment button at which point certain functions are run in the chosen payment module. What these functions do is entirely up to how the payment gateway works. if the gateway talks via XML they send/receive XML, if it needs SOAP then they use SOAP and so on and so forth. This in fact is the gist of building a new payment module. Open an existing one, check out which functions are called, get rid of the code in there and substitute with your own that will talk to your particular bank/gateway.
Of course some gateways have an alternate way of operating where you send the customer to their pages, he gives them his CC data and he is promptly returned to your site. This way you don't need to worry about handling credit card data, but unfortunately the process of implementing this in Magento is somewhat more involved.
If you need to use a certain gateway then you should first check whether a payment module for it already exists. if not you can download a similar payment module, dissect it and modify it to run your code where appropriate.