Managing payments in LemonStand
1 | published by Aleksey B. on Monday, October 05, 2009
This is a short overview of LemonStand's payment management features. We will include support for many payment gateways out of the box and support for other gateways can be developed and added in the future. We have developed a universal payment framework which allows you to work with different payment gateways in a similar way from the end users point of view.
Front-end payment forms
The core concept of LemonStand is its flexibility. This is true for any page, including the payment forms. Each payment module installed into the application, creates a simple partial (a code snippet) which can be modified to fit into the website design. The default payment form partial contains simple, semantic HTML code. There are no special programming features, so you can completely rework the default payment form, leaving only input element names unchanged.

Back-end payment forms
In LemonStand it is possible to pay any unpaid order from the administration area. If an order is unpaid, there is a Pay button in the Order Preview page, which leads to the Pay page. Due to the unique form management framework integrated into LemonStand, all back-end forms look consistent, even if payment modules are provided by third-party companies.

Payment history
LemonStand logs payment attempts of each order. On the Order Preview page there is the Payment Attempts tab, which displays a list of payment attempts along with the payment gateway message and color-coded status. The payment modules framework provides all the tools needed for logging payment attempts for payment module developers.

If you click on a log record, LemonStand will show you a popup with detailed information about the selected payment attempt. Specifically, it will show you the payment attempt status, payment gateway response fields, a list of fields sent to the payment gateways by LemonStand, and raw response text from the payment gateway.

Of course, payment module developers should take care about stripping sensitive payment information from the request and response data before saving it to the log. All payment related information is encrypted by LemonStand automatically before saving into the database.



