Specification » History » Revision 12
Revision 11 (Soh Keong, 05/09/2012 12:37 PM) → Revision 12/24 (Soh Keong, 05/09/2012 03:28 PM)
h1. Specification
h1. Activity Diagram
Figure 1 showing the process flow from Mexico mall to TNS Payment Gateway Page.
!gw.png!
Figure 2 showing the process flow of TNS Payment Gateway redirect back to Mexico Mall.
!recv.png!
h1. Programming Guide
h2. Resources
h3. SCM
see [[wiki#SCM]]
h3. Classes
* *my.com.eCosway.tns.commons* - CommonConstants
* *my.com.eCosway.tns.model* - Transaction, TransCommon, TransResponse
* *my.com.eCosway.tns.service* - TNSService (interface)
* *my.com.eCosway.tns.service.impl* - TNSServiceImpl (implementation of interface)
* *my.com.eCosway.tns.tnsInterface* - TNSInterfaces (Data Persistence)
* *my.com.eCosway.tns.utils* - SecureHash, URLUtils
* *test.my.com.eCosway.tns.utils* - SecureHashTest, URLUtilsTest (JUnit Test)
h3. properties file
* *jdbc.properties*
# *tns.interface.table.name* - table name of TNS interface
* *log4j.properties*
* *transaction.properties*
# *vpc_Version* - The version of the Virtual Payment Client API being used.
# *vpc_Command* - Indicates the desired operation to be performed.
# *vpc_AccessCode* - Authenticates the merchant on the Payment Server.
# *vpc_Merchant* - The Merchant ID identifies the merchant account against which settlements will be made.
# *vpc_SecureHash* - A secure hash which allows the Virtual Payment Client to authenticate the merchant and check the integrity of the Transaction Request.
# *vpc_SecureHashType* - The type of hash algorithm used to generate the secure hash.
# *vpc_ReturnAuthResponseData* - Specifies whether the authorisation response data must be included in the Transaction Response.
# *tns_url* - Used to redirect user to TNS Payment Page.
h3. Database Table
<pre>
CREATE TABLE ECOS.TNS_INTERFACE (
ORDER_ID VARCHAR(100) NOT NULL,
AMOUNT INTEGER,
TXN_TYPE VARCHAR(20),
MEMBER_ID VARCHAR(20),
ERROR_MESSAGE VARCHAR(255),
RESPONSE_CODE CHARACTER,
RECEIPT_NO VARCHAR(20),
TRANSACTION_NO INTEGER,
AUTHORIZE_ID VARCHAR(6),
CARD_TYPE VARCHAR(2),
TRANSACTION_IDENTIFIER VARCHAR(20),
IS_VALID CHARACTER,
LAST_UPDATED TIMESTAMP,
PRIMARY KEY (ORDER_ID));
</pre>
h3. Integration
<pre>
TNSService service = new TNSServiceImpl();
String response = service.sendToTNS(String orderNo, int amount, String locale,
String returnURL, String transactionType, String shopperRefId);
</pre>
# *orderNo* - The unique order No (1-40 alphanumeric).
# *amount* - The amount of the transaction (1-12 numeric).
# *locale* - Language used on the Payment Server Page (2-5 alphanumeric).
# *returnURL* - Used by Payment Server to redirect the user back to merchant's web site.
# *transactionType* - The Type of Transaction.
# *shopperRefId* - Member ID