As a web developer you are bound to have come across a requirement to implement some form of online payment processing for a site. This can be achieved using any number of third party providers such as Sage or PayPal etc. Although most of these vendors have good and solid APIs, the implementation of said API is a lot less straightforward. In most cases you have to jump through a number of hoops, pay expensive upfront fees and even after all this, the implementation workflow is awful (PayPal I'm looking at you!).