Project

General

Profile

Actions

Specification

Activity Diagram

Figure 1 showing the process flow from Russia mall to Uniteller Payment Gateway Page.
Uniteller_GW

Figure 2 showing Uniteller send Payment status to Mall
Payment Result

Programming Guide

Resources

SCM

see wiki

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

properties file

  • application.properties
    1. shop.id - The e-shop identifier in the Uniteller system.
    2. login.id - The login assigned to the Merchant during the account creation in the Uniteller system.
    3. shop.password - The password assigned to the Merchant during the account creation in the Uniteller system.
    4. uniteller.url - As an address of the payment page of the payment gateway.
    5. uniteller.interface.table.name - Table Name of Uniteller Interface.
    6. end.point.url - As an address of the authorization result request.
    7. mean.type - Credit Card Payment Type.
    8. emoney.type - Electronic Currency Type.
    9. english - Authorization results request param.
    10. delegate.url - JSP or servlet to delegate to Mall

JSP or servlet delegate to Mall

  1. put UnitellerUpdateStatus.jsp into JBOSS_DEPLOY/rustore.war/ru/
  2. to get order id from the jsp or servlet
     String orderId = request.getParameter("orderId");
    

Database Table

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 TIMESTAMP NOT NULL,
    MODIFY_DATETIME TIMESTAMP, 
    PRIMARY KEY (ORDER_ID));

Integration

There are total 2 methods (getURL & updateStatusByOrderNo).

Get Uniteller URL

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, Language language, String comment,
            main.java.com.ecosway.model.Personal personal);
  1. conn - Database connection.
  2. trxType - The Type of Transaction.
  3. orderNumber - The unique order Number.
  4. currency - The currency of the order expressed as an ISO 4217 alpha code. (Value: main.java.com.ecosway.constants.CommonConstants.CURRENCY_)
  5. amount - The purchase amount in the currency.
  6. urlReturn - Page URL the Purchaser must be returned to when a transaction is performed in the Uniteller system.
  7. lifeTime - The form (page) lifetime in seconds, staring from the moment it was displayed.
  8. shopperRefNo - Member ID.
  9. language - The interface language code of the payment page. (Value: main.java.com.ecosway.constants.Language)
  10. comment - Payment comments.
  11. personal - firstName, lastName, middleName, email, phone, address, country, state, city and zip.

Get Server Call Back Status

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);
  1. conn - Database connection.
  2. status - javax.servlet.http.HttpServletRequest.getParameter("Status").
  3. orderNo - javax.servlet.http.HttpServletRequest.getParameter("Order_ID")
  4. localDateTime - Russia payment date and time.
main.java.com.ecosway.service.AuthorizationRequestService service = new main.java.com.ecosway.service.impl.AuthorizationRequestServiceImpl();

void service.updateFromGetResultRequest(Connection conn, String orderNo, java.util.Date localDateTime);
  1. conn - Database connection.
  2. orderNo - javax.servlet.http.HttpServletRequest.getParameter("Order_ID")
  3. localDateTime - Russia payment date and time.

Updated by Soh Keong about 12 years ago ยท 19 revisions