DOC

TCP_IP Overview

By Doris Ford,2014-09-11 10:06
15 views 0
TCP_IP Overview

    Connecting to Chase

    Paymentech Solutions

    With TCP/IP

    For Online Transactions

    And Batch File Processing

    Using TCP Manager Server Ports

    Version 1.3

    4 Northeastern Blvd., Salem, NH 03079-1952

    Table of Contents

    Version 1.3 ......................................................................................................... 1

    Overview ............................................................................................................ 3

    Establishing a Connection for Online Transaction Processing .............................. 3

    How Access to Chase Paymentech Solutions Online Systems Work ....................................... 3

    Making the Initial Connection for Online Transaction Processing ......................................... 4

    Using a Connection for Online Transaction Processing ............................................................ 4

    Closing a Connection Used for Online Transaction Processing ............................................... 5

    Merchant Initiated Close ................................................................................................................... 5

    Chase Paymentech Solutions Initiated Close ...................................................................................... 6

    Establishing a Connection for Batch File Processing ............................................ 6

    How Access to Chase Paymentech Solutions Batch Systems Work ........................................ 6

    Making the Initial Connection for Batch File Processing ......................................................... 7

    Closing a Connection Used for Batch File Processing ............................................................... 7

    Merchant Initiated Close ................................................................................................................... 7

    Chase Paymentech Solutions Initiated Close ...................................................................................... 8

    Standard Function Calls for TCP Communications ............................................... 9

? Chase Paymentech Solutions 2005 - All rights reserved Version 1.3

    10/11/05

     Page 2

    This document contains confidential and proprietary information of Chase Paymentech Solutions, L.P. No disclosure or duplication of any portion of these materials may be made without the express written consent of Chase Paymentech Solutions. These materials must be used solely for the operation of Chase Paymentech Solutions programs and for no other use.

    4 Northeastern Blvd., Salem, NH 03079-1952

Overview

    The first section of this document provides information toward establishing, using, and terminating an “Online Transaction” connection to Chase Paymentech Solutions by using TCP/IP, socket to socket protocol (i.e. Berkeley Socket API). For each Transaction request that is transmitted to

    Chase Paymentech Solutions, a Transaction response is sent in return. Please refer to the

    document Online Processing Technical Specification for the proper format of these two records.

    The second section of this document provides information toward establishing, using, and terminating a “Batch File” connection to Chase Paymentech Solutions by using TCP/IP, socket to socket protocol (i.e. Berkeley Socket API). For each Batch File that is transmitted to Chase

    Paymentech Solutions, a Batch Reply File is available for retrieval. Please refer to the document Payment Processing XXX-Byte Technical Specification for details for the proper format of these

    two files.

Establishing a Connection for Online Transaction Processing

How Access to Chase Paymentech Solutions Online Systems Work

    Chase Paymentech Solutions secures access to its processing systems via merchant IP addresses down to the Chase Paymentech Solutions socket (IP address and port) level. All IP addresses that will access Chase Paymentech Solutions systems must be configured for a specific port.

    Two additional values are defined in this configuration. The first is the “Maximum Number of Connections” an IP address can have to a defined port. Chase Paymentech Solutions default for this value is 2. The second is “Maximum Number of Attempts” an IP address can try to connect to a valid port before Chase Paymentech Solutions will disconnect the connection with the oldest last message sent time stamp to allow a new connection to be established. Chase Paymentech Solutions default for this value is 8.

    Take for example, a merchant IP address of 1.2.3.4 configured for port 9876 with 2 Maximum Number of Connections, and 8 Maximum Number of Attempts. If the merchant’s application using the defined IP address has two established connections to port 9876, and then the application attempts to establish a third connection to this same port, using the same IP address, ththe connection with the oldest last message sent time stamp will be disconnected on the 9 thattempt to connect. That is, on the 9 3-way packet sequence (please see “Making the Initial

    Connection” section of this document), the connection with the oldest last message sent time stamp of the two established connections will be disconnected, allowing the new request to establish a valid connection.

? Chase Paymentech Solutions 2005 - All rights reserved Version 1.3

    10/11/05

     Page 3

This document contains confidential and proprietary information of Chase Paymentech Solutions, L.P. No disclosure or duplication of any portion of these materials may be made without the express written consent of Chase Paymentech Solutions. These materials must be used solely for the operation of Chase Paymentech Solutions programs and for no other use.

    4 Northeastern Blvd., Salem, NH 03079-1952

Making the Initial Connection for Online Transaction Processing

    When making a connection to a port at Chase Paymentech Solutions, please ensure the proper 3-way packet sequence (commonly referred to as a handshake) is used as described below:

1) The merchant’s application sends a Syn to the Chase Paymentech Solutions port

2) Chase Paymentech Solutions application responds with a Syn Ack

3) The merchant’s application responds with an Ack

    At this point, the Chase Paymentech Solutions application will verify the merchant’s IP address and Maximum Number of Connections. If the IP is a known address for the port, and the Merchant’s Maximum Number of Connections is not yet filled, the connection will be established.

    If the verification of either part fails, Chase Paymentech Solutions will send a FIN to the merchant’s application and no connection will be established. If the merchant’s application attempts to send an online transaction at this point, Chase Paymentech Solutions will respond with a RST and no transaction response record will be sent.

    Once a connection is established, it should remain open at all times. The only time a socket should be closed is when application issues are experienced or for scheduled maintenance.

LINGER and KEEP ALIVE options should be turned off.

    Please Note: if Chase Paymentech Solutions does not respond with a Syn Ack (#2 above), the merchant’s application should send no more than one Syn every 15 to 20 seconds. After 20

    failed attempts, the merchant should escalate to Chase Paymentech Solutions Operations group for resolution.

Using a Connection for Online Transaction Processing

    Once a connection is made, it will be used for multiple transaction requests and their corresponding responses.

    The merchant’s application should handle asynchronous messaging for multi tasking of transactions. The merchant application should not send a request and wait for the response

    before sending another request.

    Transaction responses are returned as soon as they are available, thus, responses may or may not be returned in the order in which they were sent. Merchants should use unique fields (e.g. the Merchant Order Number or Merchant Echo field) to match requests with responses. ? Chase Paymentech Solutions 2005 - All rights reserved Version 1.3

    10/11/05

     Page 4

This document contains confidential and proprietary information of Chase Paymentech Solutions, L.P. No disclosure or duplication of any portion of these materials may be made without the express written consent of Chase Paymentech Solutions. These materials must be used solely for the operation of Chase Paymentech Solutions programs and for no other use.

    4 Northeastern Blvd., Salem, NH 03079-1952

    Chase Paymentech Solutions does support a Heartbeat option that can be used to verify application-to-application connectivity. Please see the Heatbeat Application for Online

    Authorization Connections document for details.

    Chase Paymentech Solutions default response time for all online transactions is 20 seconds. If Chase Paymentech Solutions has not received a response from a boundary system (e.g. issuing banks, debit networks, etc.)

    response reason code “000” will be returned in the transaction response record. Merchants’ application time out values should be greater than 20 seconds.

Chase Paymentech Solutions application expects a Carriage Return (CR) at the end of every thonline transaction. If a CR is not received by the 768 byte, the connection will be dropped. If

    Chase Paymentech Solutions cannot interpret the format being received, a reply record will be sent beginning with “T1”. If the merchant’s application is expecting a reply format beginning with “T1”, the response reason code will be “225”.

Please note: Chase Paymentech Solutions will not certify a merchant/submitter application that

    opens and closes the port connection for every online transaction. This practice is not efficient, is more time consuming, and is not a good use of resources for either host systems’ applications.

Closing a Connection Used for Online Transaction Processing

Merchant Initiated Close

    When closing a connection to a port at Chase Paymentech Solutions, please ensure the proper 4-way packet sequence (commonly referred to as a handshake) is used as described below:

     1) The merchant’s application sends a Fin Ack to the Chase Paymentech Solutions port

2) Chase Paymentech Solutions application responds with an Ack

3) Chase Paymentech Solutions application sends a Fin Ack to the merchant’s port

    4) The merchant’s application completes the close by sending an Ack to Chase Paymentech Solutions port and the connection is disconnected

? Chase Paymentech Solutions 2005 - All rights reserved Version 1.3

    10/11/05

     Page 5

This document contains confidential and proprietary information of Chase Paymentech Solutions, L.P. No disclosure or duplication of any portion of these materials may be made without the express written consent of Chase Paymentech Solutions. These materials must be used solely for the operation of Chase Paymentech Solutions programs and for no other use.

    4 Northeastern Blvd., Salem, NH 03079-1952

Chase Paymentech Solutions Initiated Close

    When Chase Paymentech Solutions closes a connection to a port at Chase Paymentech Solutions, a 4-way packet sequence (commonly referred to as a handshake) is used as described below:

    1) Chase Paymentech Solutions application sends a Fin Ack to the merchant's port

2) The merchant’s application responds with an Ack

3) The merchant’s application sends a Fin Ack to Chase Paymentech Solutions port

    4) Chase Paymentech Solutions completes the close by sending an Ack to the merchant’s port and the connection is disconnected

    Please note: If the merchant’s application does not respond to Chase Paymentech Solutions Fin Ack (#1 above) the port will still be considered “closed” on Chase Paymentech Solutions side.

Establishing a Connection for Batch File Processing

How Access to Chase Paymentech Solutions Batch Systems Work

    Chase Paymentech Solutions secures access to its processing systems via merchant IP addresses down to the Chase Paymentech Solutions socket (IP address and port) level. All IP addresses that will access Chase Paymentech Solutions systems must be configured for a specific port.

    Two additional values are defined in this configuration. The first is the “Maximum Number of Connections” an IP address can have to a defined port. Chase Paymentech Solutions default for

    this value is 1. The second is “Maximum Number of Attempts” an IP address can try to connect to a valid port before Chase Paymentech Solutions will disconnect the least used connection to allow a new connection to be established. Chase Paymentech Solutions default for this value is 8.

Items to Note:

    Merchants should be very cautious when attempting to make a second connection to a given batch port. The established connection will be disconnected even if a batch file is in the process of being transmitted.

    If the merchant application will have a timer for “loss of connection”, it should be no shorter than two minutes in duration.

? Chase Paymentech Solutions 2005 - All rights reserved Version 1.3

    10/11/05

     Page 6

This document contains confidential and proprietary information of Chase Paymentech Solutions, L.P. No disclosure or duplication of any portion of these materials may be made without the express written consent of Chase Paymentech Solutions. These materials must be used solely for the operation of Chase Paymentech Solutions programs and for no other use.

    4 Northeastern Blvd., Salem, NH 03079-1952

    The reply file should be received in full by the merchant’s application before any merchant backend databases are updated.

Making the Initial Connection for Batch File Processing

    When making a connection to a port at Chase Paymentech Solutions, please ensure the proper 3-way packet sequence (commonly referred to as a handshake) is used as described below:

1) The merchant’s application sends a Syn to the Chase Paymentech Solutions port

2) Chase Paymentech Solutions application responds with a Syn Ack

3) The merchant’s application responds with an Ack

At this point, the Chase Paymentech Solutions application will verify the merchant’s IP address

    and Maximum Number of Connections. If the IP is a known address for the port, and the Merchant’s Maximum Number of Connections is not yet filled, the connection will be established.

    If the verification of either part fails, Chase Paymentech Solutions will send a FIN to the merchant’s application and no connection will be established. If the merchant’s application attempts to send a batch file at this point, Chase Paymentech Solutions will respond with a RST and no file will be received or processed by Chase Paymentech Solutions.

    Once a connection is established, it should remain open for the duration of the file transmission. The port connection should be closed once the file transmission has been completed.

    Please Note: if Chase Paymentech Solutions does not respond with a Syn Ack (#2 above), the merchant’s application should send no more than one Syn every 15 to 20 seconds. After 20 failed attempts, the merchant should escalate to Chase Paymentech Solutions Operations group for resolution.

Closing a Connection Used for Batch File Processing

Merchant Initiated Close

    When closing a connection to a port at Chase Paymentech Solutions, please ensure the proper 4-way packet sequence (commonly referred to as a handshake) is used as described below:

     1) The merchant’s application sends a Fin Ack to the Chase Paymentech Solutions port

2) Chase Paymentech Solutions application responds with an Ack

3) Chase Paymentech Solutions application sends a Fin Ack to the merchant’s port

    ? Chase Paymentech Solutions 2005 - All rights reserved Version 1.3

    10/11/05

     Page 7

This document contains confidential and proprietary information of Chase Paymentech Solutions, L.P. No disclosure or duplication of any portion of these materials may be made without the express written consent of Chase Paymentech Solutions. These materials must be used solely for the operation of Chase Paymentech Solutions programs and for no other use.

    4 Northeastern Blvd., Salem, NH 03079-1952

    4) The merchant’s application completes the close by sending an Ack to Chase Paymentech Solutions port and the connection is disconnected

Chase Paymentech Solutions Initiated Close

    When Chase Paymentech Solutions closes a connection to a port at Chase Paymentech Solutions, a 4-way packet sequence (commonly referred to as a handshake) is used as described below:

    1) Chase Paymentech Solutions application sends a Fin Ack to the merchant's port

2) The merchant’s application responds with an Ack

3) The merchant’s application sends a Fin Ack to Chase Paymentech Solutions port

    4) Chase Paymentech Solutions completes the close by sending an Ack to the merchant’s port and the connection is disconnected

    Please note: If the merchant’s application does not respond to Chase Paymentech Solutions Fin Ack (#1 above) the port will still be considered “closed” on Chase Paymentech Solutions side.

    ? Chase Paymentech Solutions 2005 - All rights reserved Version 1.3

    10/11/05

     Page 8

This document contains confidential and proprietary information of Chase Paymentech Solutions, L.P. No disclosure or duplication of any portion of these materials may be made without the express written consent of Chase Paymentech Solutions. These materials must be used solely for the operation of Chase Paymentech Solutions programs and for no other use.

    4 Northeastern Blvd., Salem, NH 03079-1952

    Standard Function Calls for TCP Communications

     Client Server

     socket socket

    bind bind (Optional)

     listen Connection established connect accept

    A write function

    or Data a read function The corresponding read function on the new socket or the corresponding write function on the new socket

     close

     shutdown on the new socket

     close on the new socket

     close on the original socket ? Chase Paymentech Solutions 2005 - All rights reserved Version 1.3 10/11/05

     Page 9

This document contains confidential and proprietary information of Chase Paymentech Solutions, L.P. No disclosure or duplication of any portion of these materials may be made without the express written consent of Chase Paymentech Solutions. These materials must be used solely for the operation of Chase Paymentech Solutions programs and for no other use.

Report this document

For any questions or suggestions please email
cust-service@docsford.com