The Best Way To Buy!
IP*Works!
Microsoft .NET ActiveX / VB ASP Delphi C++ Builder C++ Java J2EE Unix / Linux Mac OS X .NET CF
IP*Works! SSL
IP*Works! S/MIME
Microsoft .NET ActiveX / VB ASP Delphi C++ Builder C++ Java J2EE
IP*Works! SSH
Microsoft .NET Java J2EE .NET CF
IP*Works! Zip
IP*Works! EDI/AS2
Microsoft .NET Java / J2EE
IP*Works! SNMP
Microsoft .NET ActiveX / VB Delphi C++ Builder C++ Java J2EE .NET CF
QuickBooks Integrator
E-Payment Integrator
Vital/TSYS Integrator
Microsoft .NET ActiveX / VB ASP Delphi C++ Builder C++ Unix / Linux Mac OS X
Paymentech Integrator
FDMS Integrator
Microsoft .NET ActiveX / VB ASP Delphi C++ Builder C++ Java J2EE .NET CF
USPS Integrator
FedEx Integrator
UPS Integrator
E-Banking Integrator
Microsoft .NET ActiveX / VB ASP Delphi C++ Builder C++ Java J2EE Unix / Linux
PayPal Integrator
Amazon Integrator
Biztalk Adapters
SQL Server SSIS Tasks
Windows Workflow
SharePoint Extensions
3-D Secure MPI
Microsoft .NET ASP Delphi C++ Builder C++ Java / J2EE
"We are currently working with 1000+ ASP.NET developers and I know many are building sophisticated web applications that can benefit from the integration of the IP*Works! suite. "
-- J. Ritter
Properties Methods Events Configuration Settings
The CCSettle component is used to do a Batch Settlement on all transactions that were successfully authorized with the CCECommerce, CCRetail, or CCCharge components. This component may also send Level II and Level III Corporate Purchasing Card data for better interchange rates.
NOTE: What follows is a very short description of the component interfaces. For more information, please consult the help files that come with the respective package.
This component allows for a direct, secure connection to the Vital/TSYS gateway through a standard Internet connection. This component can be integrated into web pages or stand-alone Point Of Sale applications. Because all SSL communications are handled inside the component, any application or web page can be deployed without the need for expensive dedicated SSL servers. The CCSettle component is used to settle all transactions previously authorized by the CCECommerce, CCRetail, or CCCharge component. When a transaction is authorized, money in the customer's account is blocked and tagged for the merchant. However, funds do not actually change hands at this point. When transactions are settled with the CCSettle component the funds are deducted from the customer's account and added to the merchant's. It is essential that the authorized transactions are properly recorded and resent later in a Batch Settlement.
To send a Batch Settlement, first the user must fill out the Merchant properties with the same information contained in the CCCharge Merchant properties.
CCSettle.MerchantBankId = "999995" CCSettle.MerchantCategoryCode = "5999" CCSettle.MerchantName = "test merchant" CCSettle.MerchantNumber = "123456789012" CCSettle.MerchantLocation = "Beverly Hills" CCSettle.MerchantState = "CA" CCSettle.MerchantStoreNumber = "5999" CCSettle.MerchantTerminalNumber = "1515" CCSettle.MerchantZip = "90210"
Additionally, the AgentBankNumber, AgentChainNumber, TerminalId, BatchNumber, and IndustryType must be set. Note that the TerminalId is fundamentally different from the MerchantTerminalNumber. The MerchantTerminalNumber is used to identify a unique terminal (PC, server, whatever) within a merchant location. The TerminalId, also known as the "V Number", is used for point-of-sale tracking.
CCSettle.AgentBankNumber = "000000" CCSettle.AgentChainNumber = "111111" CCSettle.TerminalId = "00000001" CCSettle.BatchNumber = 15 CCSettle.IndustryType = itRetail
At this point, you are ready to add transactions to the batch settlement. Each transaction to be settled must be added to the DetailAggregate array property. First set the DetailRecordCount to the total number of transactions you wish to settle. Each index in the DetailAggregate array property must be set with the XML aggregate returned from the CCRETAIL, CCECOMMERCE, CCCHARGE, or DETAILRECORD component's GetDetailAggregate method.
CCSettle.DetailRecordCount = 1 CCSettle.DetailAggregate[0] = CCRETAIL.GetDetailAggregate()
Finally, call the SendSettlement method.
CCSettle.SendSettlement()
If the transaction is successful, the ResponseCode will contain "GB", which indicates a "Good Batch". You should check that the ResponseNetDeposit and ResponseRecordCount match the BatchNetDeposit and BatchRecordCount properties. If the transaction is not successful and you receive an "RB" ResponseCode (indicating a "Rejected Batch") the component fails with an error. You may inspect the ErrorData. ErrorDataFieldNumber, ErrorRecordType, ErrorSequenceNumber, and ErrorType properties for more information concerning why the batch was rejected.
Thousands of detail records may be settled in the above manner, just by increasing the DetailRecordCount and adding a transaction to each index of the DetailAggregate property. However it is recommended that Batch Settlements be kept relatively small - around 100 transactions or so - to decrease the number of records that must be resent in the event of an error.
To Void a transaction that has been authorized but has not yet been settled, simply do not include it in the batch settlement. The block on the cardholder's account will clear automatically. Credits and forced transactions may be created using the DETAILRECORD component and settled in the same manner.
To add Level II or Level III data to the settled transactions, use the DetailAddendum property and the LEVEL2EXTENSION or LEVEL3EXTENSION components.
Note that the IndustryType from the CCSettle component MUST match the detail record aggregate of EACH transaction that is added to the settlement. You cannot mix industry types in a batch - you must settle a separate batch for each industry type.
/n software suggests that as a matter of good business practices all merchants and third parties that store cardholder data should be aware of the Visa Cardholder Information Security Program (CISP) and the MasterCard Site Data Protection (SDP) program. The purpose of these programs is to help protect the integrity of cardholder information via the use of outside-vendor auditing of systems security and server site security.
The following is the full list of the properties of the component with short descriptions. Click on the links for complete descriptions.
Method List The following is the full list of the methods of the component with short descriptions. Click on the links for complete descriptions. Config Sets or retrieves a component configuration setting. Interrupt Interrupts the current action. Reset Resets all the properties of the entire settlement to their default values. SendSettlement Begins a Batch Settlement transaction with the transaction server. Event List The following is the full list of the events fired by the component with short descriptions. Click on the links for complete descriptions. Connected Fired immediately after a connection completes (or fails). DataPacketIn Fired when receiving a data packet from the transaction server. DataPacketOut Fired when sending a data packet to the transaction server. Disconnected Fired when a connection is closed. Error Information about errors during data delivery. SSLServerAuthentication Fired after the server presents its certificate to the client. SSLStatus Shows the progress of the secure connection. Configuration Settings The following is a list of configuration settings for the component with short descriptions. Click on the links for complete descriptions. AbsoluteTimeout Determines whether timeouts are inactivity timeouts or absolute timeouts. CodePage The system code page used for Unicode to Multibyte translations (Windows/COM only). DeviceCode FirewallData Used to send extra data to the firewall. FirewallListener If true, the component binds to a SOCKS firewall as a server (IPPort only). HTTPVersion The version of HTTP used by the component IfModifiedSince A date determining the maximum age of the desired document. InBufferSize The size in bytes of the incoming queue of the socket. KeepAlive Determines whether the HTTP connection is closed after the completion of the request. LocationNumber Provides additional information on the location of the merchant. MaxLineLength The maximum amount of data to accumulate when no EOL is found. MaxTransferredData The maximum number of incoming bytes to be stored by the component. OpenSSLCADir The path to a directory containing CA certificates. OpenSSLCAFile Name of the file containing the list of CA's trusted by your application. OpenSSLCipherList A string that controls the ciphers to be used by SSL. OpenSSLPrngSeedData The data to seed the pseudo random number generator(PRNG). OutBufferSize The size in bytes of the outgoing queue of the socket. ProxyAuthorization The authorization string to be sent to the proxy server. ProxyPassword A password if Basic authentication is to be used for the proxy. ProxyPort Port for the proxy server (default 80). ProxyServer Name or IP address of a proxy server (optional). ProxyUser A user name if Basic authentication is to be used for the proxy. SSLCipherStrength The minimum cipher strength used for bulk encryption. SSLEnabledProtocols Used to enable/disable the supported security protocols. SSLProvider The name of the security provider to use. SSLSecurityFlags Flags that control certificate verification SocketHandle The handle of the main socket used by the component. UseWinInet If set, the WinInet API is used for retrieving the URL UseWinInetCookies Controls whether to send and accept cookies when making http requests through WinInet UserAgent Information about the user agent (browser). WinsockInfo Identifying information about the loaded Winsock stack (Windows only) WinsockLoaded Loads and unloads Winsock on demand (Windows only) WinsockMaxDatagramSize Size in bytes of the largest UDP datagram that can be sent or received (Windows only) WinsockMaxSockets Maximum number of sockets available to a single process (Windows only) WinsockPath The path to the Winsock DLL used (Windows only) WinsockStatus The status of the Winsock stack (Windows only)
The following is the full list of the methods of the component with short descriptions. Click on the links for complete descriptions.
Event List The following is the full list of the events fired by the component with short descriptions. Click on the links for complete descriptions. Connected Fired immediately after a connection completes (or fails). DataPacketIn Fired when receiving a data packet from the transaction server. DataPacketOut Fired when sending a data packet to the transaction server. Disconnected Fired when a connection is closed. Error Information about errors during data delivery. SSLServerAuthentication Fired after the server presents its certificate to the client. SSLStatus Shows the progress of the secure connection. Configuration Settings The following is a list of configuration settings for the component with short descriptions. Click on the links for complete descriptions. AbsoluteTimeout Determines whether timeouts are inactivity timeouts or absolute timeouts. CodePage The system code page used for Unicode to Multibyte translations (Windows/COM only). DeviceCode FirewallData Used to send extra data to the firewall. FirewallListener If true, the component binds to a SOCKS firewall as a server (IPPort only). HTTPVersion The version of HTTP used by the component IfModifiedSince A date determining the maximum age of the desired document. InBufferSize The size in bytes of the incoming queue of the socket. KeepAlive Determines whether the HTTP connection is closed after the completion of the request. LocationNumber Provides additional information on the location of the merchant. MaxLineLength The maximum amount of data to accumulate when no EOL is found. MaxTransferredData The maximum number of incoming bytes to be stored by the component. OpenSSLCADir The path to a directory containing CA certificates. OpenSSLCAFile Name of the file containing the list of CA's trusted by your application. OpenSSLCipherList A string that controls the ciphers to be used by SSL. OpenSSLPrngSeedData The data to seed the pseudo random number generator(PRNG). OutBufferSize The size in bytes of the outgoing queue of the socket. ProxyAuthorization The authorization string to be sent to the proxy server. ProxyPassword A password if Basic authentication is to be used for the proxy. ProxyPort Port for the proxy server (default 80). ProxyServer Name or IP address of a proxy server (optional). ProxyUser A user name if Basic authentication is to be used for the proxy. SSLCipherStrength The minimum cipher strength used for bulk encryption. SSLEnabledProtocols Used to enable/disable the supported security protocols. SSLProvider The name of the security provider to use. SSLSecurityFlags Flags that control certificate verification SocketHandle The handle of the main socket used by the component. UseWinInet If set, the WinInet API is used for retrieving the URL UseWinInetCookies Controls whether to send and accept cookies when making http requests through WinInet UserAgent Information about the user agent (browser). WinsockInfo Identifying information about the loaded Winsock stack (Windows only) WinsockLoaded Loads and unloads Winsock on demand (Windows only) WinsockMaxDatagramSize Size in bytes of the largest UDP datagram that can be sent or received (Windows only) WinsockMaxSockets Maximum number of sockets available to a single process (Windows only) WinsockPath The path to the Winsock DLL used (Windows only) WinsockStatus The status of the Winsock stack (Windows only)
The following is the full list of the events fired by the component with short descriptions. Click on the links for complete descriptions.
Configuration Settings The following is a list of configuration settings for the component with short descriptions. Click on the links for complete descriptions. AbsoluteTimeout Determines whether timeouts are inactivity timeouts or absolute timeouts. CodePage The system code page used for Unicode to Multibyte translations (Windows/COM only). DeviceCode FirewallData Used to send extra data to the firewall. FirewallListener If true, the component binds to a SOCKS firewall as a server (IPPort only). HTTPVersion The version of HTTP used by the component IfModifiedSince A date determining the maximum age of the desired document. InBufferSize The size in bytes of the incoming queue of the socket. KeepAlive Determines whether the HTTP connection is closed after the completion of the request. LocationNumber Provides additional information on the location of the merchant. MaxLineLength The maximum amount of data to accumulate when no EOL is found. MaxTransferredData The maximum number of incoming bytes to be stored by the component. OpenSSLCADir The path to a directory containing CA certificates. OpenSSLCAFile Name of the file containing the list of CA's trusted by your application. OpenSSLCipherList A string that controls the ciphers to be used by SSL. OpenSSLPrngSeedData The data to seed the pseudo random number generator(PRNG). OutBufferSize The size in bytes of the outgoing queue of the socket. ProxyAuthorization The authorization string to be sent to the proxy server. ProxyPassword A password if Basic authentication is to be used for the proxy. ProxyPort Port for the proxy server (default 80). ProxyServer Name or IP address of a proxy server (optional). ProxyUser A user name if Basic authentication is to be used for the proxy. SSLCipherStrength The minimum cipher strength used for bulk encryption. SSLEnabledProtocols Used to enable/disable the supported security protocols. SSLProvider The name of the security provider to use. SSLSecurityFlags Flags that control certificate verification SocketHandle The handle of the main socket used by the component. UseWinInet If set, the WinInet API is used for retrieving the URL UseWinInetCookies Controls whether to send and accept cookies when making http requests through WinInet UserAgent Information about the user agent (browser). WinsockInfo Identifying information about the loaded Winsock stack (Windows only) WinsockLoaded Loads and unloads Winsock on demand (Windows only) WinsockMaxDatagramSize Size in bytes of the largest UDP datagram that can be sent or received (Windows only) WinsockMaxSockets Maximum number of sockets available to a single process (Windows only) WinsockPath The path to the Winsock DLL used (Windows only) WinsockStatus The status of the Winsock stack (Windows only)
The following is a list of configuration settings for the component with short descriptions. Click on the links for complete descriptions.