Payment plug-ins

A payment plug-in is a self-contained software component that serves as a proxy for a payment back-end system. Payment plug-ins are responsible for payment protocol and protocol data validation.

A payment plug-in follows these steps to validate a payment:

WebSphere Commerce Payments then performs the database operations necessary to record all the financial transactions for a payment plug-in.

Payment plug-ins are simpler and less expensive alternatives to the use of traditional payment cassettes, and offer an easier way to integrate with payment systems.

When a payment plug-in is added to the WebSphere Commerce environment, the foundation of WebSphere Commerce remains intact. The payment plug-in modifies the function of WebSphere Commerce payment processing through interaction with WebSphere Commerce Payments. A plug-in is identified to WebSphere Commerce Payments through a plug-in deployment descriptor (XML file). The deployment descriptor configures the plug-in in WebSphere Commerce and enables the plug-in to work properly.

Although some plug-ins are provided in WebSphere Commerce, a payment plug-in specification is available to enable plug-in writers to develop their own plug-ins for use in a WebSphere Commerce environment. Plug-ins can be simple in nature (serving as a proxy to a payment back-end system) or more complex, such as an interface to an accounting system, or some other system that serves a particular purpose (for example, a gift certificate processing system). Regardless of their complexity, plug-ins can be implemented as lightweight plug-ins.

Payment plug-ins are responsible for implementing the following mandatory Payment APIs. As an option, query-related APIs can also be implemented to extend the plug-in interface.

Plug-in APIs

checkPaymentInstruction()
validatePaymentInstruction()
approve()
reverseApproval()
deposit()
reverseDeposit()
approveAndDeposit() 
getMessage()
credit()
reverseCredit() 

Query-related APIs

getAvailableBalance()
getCredit()
getPayment()