Project

General

Profile

Specification » History » Version 10

Soh Keong, 07/05/2012 04:37 PM

1 1 Soh Keong
h1. Specification
2 2 Soh Keong
3
h1. Activity Diagram
4
5
Figure 1 showing the process flow from Russia mall to Uniteller Payment Gateway Page.
6
!Uniteller_GW.png!
7
8
h1. Programming Guide
9
10
h2. Resources
11
12
h3. SCM
13
14
see [[wiki#SCM]]
15
16
h3. Classes
17
18
* *main.java.com.ecosway.constants*          - CommonConstants, EMoneyType, Language, MeanType
19
* *main.java.com.ecosway.model*              - Common, PaymentResponse, Personal, Uniteller
20
* *main.java.com.ecosway.service*            - AuthorizationRequestService
21
* *main.java.com.ecosway.service.impl*       - AuthorizationRequestServiceImpl
22
* *main.java.com.ecosway.unitellerInterface* - UnitellerInterface
23
* *main.java.com.ecosway.utils*              - PropertiesUtils, SignatureUtils
24
* *ru.uniteller.type*                        - SOAPStruct_Helper, SOAPStruct
25 7 Soh Keong
* *ru.uniteller.wsdl*                        - Uniteller, UnitellerLocator, UnitellerSoapBindingStub, UnitellerSoapPort, UnitellerSoapPortProxy
26 3 Soh Keong
27
h3. properties file
28
29
* *application.properties*
30
31
   # *shop.id*       - The e-shop identifier in the Uniteller system.
32
   # *login.id*      - The login assigned to the Merchant during the account creation in the Uniteller system.
33
   # *shop.password* - The password assigned to the Merchant during the account creation in the Uniteller system.
34
   # *uniteller.url* - As an address of the payment page of the payment gateway.
35
   # *uniteller.interface.table.name* - Table Name of Uniteller Interface.
36
37 1 Soh Keong
h3. Database Table
38 3 Soh Keong
39
<pre>
40
CREATE TABLE ECOS.UNITELLER_INTERFACE (
41 8 Soh Keong
	ORDER_ID VARCHAR(18) NOT NULL, 
42 3 Soh Keong
	CHARGE_AMT DECIMAL(15,2), 
43 10 Soh Keong
	TRX_TYPE VARCHAR(20) NOT NULL, 
44
	SHOPPER_REF_NO INTEGER NOT NULL, 
45 3 Soh Keong
	COMMENT VARCHAR(255),
46 8 Soh Keong
	ERROR_MESSAGE VARCHAR(255), 
47 3 Soh Keong
	CURRENCY VARCHAR(3),
48
	ORDER_STATUS VARCHAR(100),
49 10 Soh Keong
	IS_VALID CHARACTER NOT NULL, 
50 9 Soh Keong
	LOCAL_DATETIME TIMESTAMP,
51 10 Soh Keong
	DATETIME TIMESTAMP NOT NULL,
52 1 Soh Keong
	MODIFY_DATETIME TIMESTAMP, 
53 10 Soh Keong
	PRIMARY KEY (ORDER_ID));
54 1 Soh Keong
</pre>
55
56 3 Soh Keong
h3. Integration
57
58 8 Soh Keong
There are total 2 methods (getURL & updateStatusByOrderNo).
59 3 Soh Keong
60
*Get Uniteller URL*
61 1 Soh Keong
62 6 Soh Keong
<pre>
63 3 Soh Keong
main.java.com.ecosway.service.AuthorizationRequestService service = new main.java.com.ecosway.service.impl.AuthorizationRequestServiceImpl();
64
65
String URL = service.getURL(Connection conn, String trxType, String orderNumber,
66 8 Soh Keong
			String currency, double amount, String urlReturn, int lifeTime, 
67
                        int shopperRefNo, MeanType meanType, EMoneyType eMoneyType, 
68
                        Language language, String comment, main.java.com.ecosway.model.Personal personal);
69 3 Soh Keong
</pre>
70
71
# *conn*            - Database connection.
72
# *trxType*         - The Type of Transaction.
73
# *orderNumber*     - The unique order Number.
74 8 Soh Keong
# *currency*        - The currency of the order expressed as an ISO 4217 alpha code. (Value: main.java.com.ecosway.constants.CommonConstants.CURRENCY_)
75 3 Soh Keong
# *amount*          - The purchase amount in the currency.
76
# *urlReturn*       - Page URL the Purchaser must be returned to when a transaction is performed in the Uniteller system.
77 4 Soh Keong
# *lifeTime*        - The form (page) lifetime in seconds, staring from the moment it was displayed.
78
# *shopperRefNo*    - Member ID.
79
# *meanType*        - The credit card payment system. (Value: main.java.com.ecosway.constants.MeanType)
80
# *eMoneyType*      - The type of electronic currency type. (Value: main.java.com.ecosway.constants.EMoneyType)
81
# *language*        - The interface language code of the payment page. (Value: main.java.com.ecosway.constants.Language)
82
# *comment*         - Payment comments.
83
# *personal*        - firstName, lastName, middleName, email, phone, address, country, state, city and zip.
84 6 Soh Keong
85
*Get Server Call Back Status*
86
87
<pre>
88 1 Soh Keong
main.java.com.ecosway.service.AuthorizationRequestService service = new main.java.com.ecosway.service.impl.AuthorizationRequestServiceImpl();
89 6 Soh Keong
90 9 Soh Keong
void service.updateStatusByOrderNo(Connection conn, String status, String orderNo, java.util.Date localDateTime);
91 6 Soh Keong
</pre>
92
93
# *conn*    - Database connection.
94 1 Soh Keong
# *status*  - javax.servlet.http.HttpServletRequest.getParameter("Status").
95 6 Soh Keong
# *orderNo* - javax.servlet.http.HttpServletRequest.getParameter("Order_ID")
96 9 Soh Keong
# *localDateTime* - Russia payment date and time.