This is a review for the Fontis DPS Magento Extension which is very widely used in New Zealand for credit card transactions. As a member of the Auckland Magento Users group I find I am often talking to people about the extension, and even more often wondering about how it could be made better. In this review I’ll be looking primarily at the DPS PxPay functionality, the PxPost functionality is becoming increasingly hard to access here in New Zealand, as banks are becoming more wary of credit card fraud. If you follow my blog, you’ll know I’m doubtful of the future of on-site credit card processing, I think eventually, for usability and security reasons, large credit card payment providers will host most of the transactions.
On to the review. Firstly, let me preface this review with this: the Fontis DPS extension is very widely used, and it does a perfectly adequate job of taking credit card payments in New Zealand. Out of the box this extension works very well, with minimal issues (unless you use Magento version 1.4 – but we’ll cover that soon).
With that said though I think there are three key areas of improvement or that deserve clarification.
Things I Didn’t Like
The user experience when a transaction fails is really not very pleasant. A failed transaction (for something as simple as a fat-finger typo on the expiry date) will see you kicked back to the Magento store, on a sparse, uninformative failure page. Worse still, if you still want to buy then you have to go to the cart and start over again. Let’s hope you chose not to checkout as a Guest!
Not one to moan about a problem and not offer a feasible solution, in the case of the failed transaction I firstly need to acknowledge that DPS could help by doing more basic data entry checking themselves, instead of outright failing the transaction. But if we have to work within the constraints then we could make things easier for the user in two ways:
- Remember their details and drop them on to a failure page that can shortcut them through to a later part of checkout
- Show a useful error message (the result of which can be decoded from the DPS failure url) like “Sorry the expiry date you entered on the DPS website was invalid, please click here to proceed to checkout again.”
This would require that the complete integration prescribed by DPS was undertaken, which in the current Fontis extension is not the case. Until then the customer will not get useful error messages, and as a result the usability improvements won’t be possible.
Another thing I didn’t like very much with the PxPay integration is the lack of refund automation. I understand this is a DPS limitation more than it is an extension limitation, so I’ll make this more of a clarification point than a complaint. Some payment providers allow you to programmatically cancel and refund (sometimes partially) the credit card transaction from within Magento. This saves the burden of then logging in to the payment gateway website to initiate the refund and keep the store in-sync with your gateway. With DPS this is not possible, so when using DPS for your Magento payment provider, you will have to remember to firstly issue the credit in Magento, and then head over to DPS to actually refund the money.
This same limitation applies to the ‘Authorize then capture’ style of credit card payment, where you reserve the card funds first, then sometime later (e.g. when you know you have the product available) charge the credit card and ship the goods. It is not supported in the API for PxPay, and so unavailable through Magento in the usual Invoice to charge the card paradigm.
The last issue is the admin created orders cannot be charged to a card. This again is a limitation of the DPS API as much as it is a problem with the extension. The extension doesn’t currently allow you to use a credit card (that you took over the phone for example) to pay for an order. As with refunds, you have to log in to DPS and process the payment through a virtual terminal.
I would like to see this changed to the same sort of redirect flow a customer experiences, when making payment. The only issue I see with this is that DPS may incorrectly characterize the multiple-cards-one-IP -address access pattern as fraud, but surely that could be dealt with so that store admins can have a seamless backend order process.
DPS, Magento and version 1.4
I’ve been testing the Fontis DPS extension on version 1.4 and have found a couple of issues with it. The most annoying is that the notion of enabled is ignored in the new version, so that even if PxPost is disabled, it will show up during customer checkout. There is a fix for that described on the Magento forums, thanks to fellow MageBase contributor, Robert.
That’s my review complete, the summary for those that skim read is: the extension works, but it could work better and it could work great if DPS also improved their PxPay API – c’mon guys it’s the 2000’s now! I’d be very interested to hear from other DPS and Magento users on this subject, let me know how you find the extension for day-to-day use.
Originally published on magebase.com. Copyright © 2010 Magebase - All Rights Reserved.