Specification » History » Revision 11
Revision 10 (Soh Keong, 07/05/2012 04:37 PM) → Revision 11/19 (Soh Keong, 07/05/2012 04:53 PM)
h1. Specification h1. Activity Diagram Figure 1 showing the process flow from Russia mall to Uniteller Payment Gateway Page. !Uniteller_GW.png! h1. Programming Guide h2. Resources h3. SCM see [[wiki#SCM]] h3. Classes * *main.java.com.ecosway.constants* - CommonConstants, EMoneyType, Language, MeanType * *main.java.com.ecosway.model* - Common, PaymentResponse, Personal, Uniteller * *main.java.com.ecosway.service* - AuthorizationRequestService * *main.java.com.ecosway.service.impl* - AuthorizationRequestServiceImpl * *main.java.com.ecosway.unitellerInterface* - UnitellerInterface * *main.java.com.ecosway.utils* - PropertiesUtils, SignatureUtils * *ru.uniteller.type* - SOAPStruct_Helper, SOAPStruct * *ru.uniteller.wsdl* - Uniteller, UnitellerLocator, UnitellerSoapBindingStub, UnitellerSoapPort, UnitellerSoapPortProxy h3. properties file * *application.properties* # *shop.id* - The e-shop identifier in the Uniteller system. # *login.id* - The login assigned to the Merchant during the account creation in the Uniteller system. # *shop.password* - The password assigned to the Merchant during the account creation in the Uniteller system. # *uniteller.url* - As an address of the payment page of the payment gateway. # *uniteller.interface.table.name* - Table Name of Uniteller Interface. h3. Database Table <pre> CREATE TABLE ECOS.UNITELLER_INTERFACE ( ORDER_ID VARCHAR(18) NOT NULL, CHARGE_AMT DECIMAL(15,2), TRX_TYPE VARCHAR(20) NOT NULL, SHOPPER_REF_NO INTEGER NOT NULL, COMMENT VARCHAR(255), ERROR_MESSAGE VARCHAR(255), CURRENCY VARCHAR(3), ORDER_STATUS VARCHAR(100), IS_VALID CHARACTER NOT NULL, LOCAL_DATETIME TIMESTAMP, CREATE_DATETIME DATETIME TIMESTAMP NOT NULL, MODIFY_DATETIME TIMESTAMP, PRIMARY KEY (ORDER_ID)); </pre> h3. Integration There are total 2 methods (getURL & updateStatusByOrderNo). *Get Uniteller URL* <pre> main.java.com.ecosway.service.AuthorizationRequestService service = new main.java.com.ecosway.service.impl.AuthorizationRequestServiceImpl(); String URL = service.getURL(Connection conn, String trxType, String orderNumber, String currency, double amount, String urlReturn, int lifeTime, int shopperRefNo, MeanType meanType, EMoneyType eMoneyType, Language language, String comment, main.java.com.ecosway.model.Personal personal); </pre> # *conn* - Database connection. # *trxType* - The Type of Transaction. # *orderNumber* - The unique order Number. # *currency* - The currency of the order expressed as an ISO 4217 alpha code. (Value: main.java.com.ecosway.constants.CommonConstants.CURRENCY_) # *amount* - The purchase amount in the currency. # *urlReturn* - Page URL the Purchaser must be returned to when a transaction is performed in the Uniteller system. # *lifeTime* - The form (page) lifetime in seconds, staring from the moment it was displayed. # *shopperRefNo* - Member ID. # *meanType* - The credit card payment system. (Value: main.java.com.ecosway.constants.MeanType) # *eMoneyType* - The type of electronic currency type. (Value: main.java.com.ecosway.constants.EMoneyType) # *language* - The interface language code of the payment page. (Value: main.java.com.ecosway.constants.Language) # *comment* - Payment comments. # *personal* - firstName, lastName, middleName, email, phone, address, country, state, city and zip. *Get Server Call Back Status* <pre> main.java.com.ecosway.service.AuthorizationRequestService service = new main.java.com.ecosway.service.impl.AuthorizationRequestServiceImpl(); void service.updateStatusByOrderNo(Connection conn, String status, String orderNo, java.util.Date localDateTime); </pre> # *conn* - Database connection. # *status* - javax.servlet.http.HttpServletRequest.getParameter("Status"). # *orderNo* - javax.servlet.http.HttpServletRequest.getParameter("Order_ID") # *localDateTime* - Russia payment date and time.