The One Page Checkout.

Over the last three weeks I have been developing a onepage checkout for Magento for our client. Today I am happy that the biggest problem seems to possibilly be done. I just placed an order with it and got a sucess page.

The Requirements:

  • Card Storage Capability
  • Verification of Card CV2 on using stored card
  • Add new Card
  • Integration with SagePay

The Problems

  • Shipping Methods are not availible
  • Format of data for Sage Pay
  • Built in Card Form not sutible for workign with payment storage
  • PCI-DSS as we’ll store the card information.
  • Magento fighting with us.

The strategy taken was to load each block from the standard one page checkout into the new single page one page checkout and display those all at the same time. Then for processing the order just reuse the built in continue button function calls. This of course did have its own unique set of issues.

For example, the saving of the payment sees the card number as being empty when we use a stored one so we need to get around that. Not to forget we can display the full card information either. So have to overwrite the checks on the card form to allow partly submitted form (display CV2 request but not main form).

I think today we will finally be able to call this project complete.

2 responses to “The One Page Checkout.”

  1. Did you ever have a problem with the checkout link being dead? I am also using OnePage checkout through magento for a client and when credit card info is put in and you click on “checkout” nothing happens. It’s like the link is dead.

    Did you ever come across this problem at all?


    • If by checkout link you mean the button to complete the order, yes.

      Most of the time it was because shipping had failed miserablly.
      Download Firebug and watch whats being called.

      Should be a call to saveShipping – even if its not displayed on the page you need to trigger it. When this fails, the order doesnt save completely and unless you put some code in to notify of the failure, it’ll just seem to be doing nothing.

Leave a Reply

Your email address will not be published. Required fields are marked *