Search: 
Available in: FDMS
FDMSECommerce Component [IBiz FDMS Integrator V1]

Properties   Methods   Events   Configuration Settings  

The FCMSECommerce component is an advanced tool used to authorize credit cards in both Mail Order (Direct Marketing) and eCommerce environments, where the customer is ordering products or services via the telephone or Internet. This component makes authorizing these types of transactions very easy.

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.

Remarks

This component connects to the First Data Merchant Services (FDMS) processor, by way of the Datawire VXN transaction transport network. Transactions originating with these components go through Datawire, to the FDMS processor where the transaction is authorized. The result is then returned back through Datawire and received by the component. 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 FDMSECommerce component makes authorizing Card-Not-Present Mail Order and E-Commerce transactions very easy by adding an additional layer of abstraction between the programmer and the protocol. There is no need to deal with raw sockets, SSL handshakes, or data packet formatting. The steps to setting up the component and authorizing a transaction are outlined below:

First, you must register and activate your account with Datawire. Datawire will provide you with a MerchantNumber and MerchantTerminalNumber, but you'll need to use the FDMSREGISTER component to activate the merchant and receive a DatawireId. Once you acquire the DatawireId and receive your transaction URLs through Service Discovery, you may begin to authorize transactions.

To authorize a credit card, set the MerchantNumber and MerchantTerminalNumber with the values supplied by FDMS and Datawire, and the DatawireId with the value retrieved by the FDMSREGISTER component after activating your merchant account. Set the URL property with one of the URLs you retrieved during Service Discovery.

   
  FDMSECommerce.MerchantNumber = "000000999990"     'Supplied by FDMS/Datawire
  FDMSECommerce.MerchantTerminalNumber = "555555"   'Supplied by FDMS/Datawire
  FDMSECommerce.DatawireId = "0000B47FFFFFFFFFFFFF"
 'Retrieved with the FDMSREGISTER component.

Then, set the customer's credit card information, as well as his address and zip code (The address and zip code will be checked by the FDMS processor to make sure it matches the customer's billing address).

   
  FDMSECommerce.CardNumber = "4444333322221111"
  FDMSECommerce.CardCVVData = "999"
  FDMSECommerce.CardExpMonth = 9
  FDMSECommerce.CardExpYear = 2020
  FDMSECommerce.CustomerAddress = "123 Nowhere Ln."
  FDMSECommerce.CustomerZip = "90210"

Next, set properties that contain details about the transaction. The TransactionNumber should be incremented for every transaction you authorize. The TransactionAmount must be set, and it should contain the amount your charging, with an implied decimal point. (ie: $1.00 is "100"). The TransactionType depends on whether this transaction is taking place over the phone, the Internet, or whether it's a Recurring or Installment payment.

   
  FDMSECommerce.TransactionNumber = 1
  FDMSECommerce.TransactionAmount = "100"
  FDMSECommerce.TransactionType = ttECommerce

Finally, submit the transaction by calling the Authorize method. When the component receives a response, the result of the authorization will be displayed in several Response properties. The DatawireResponseStatus and DatawireReturnCode indicate if there were any errors passing the transaction through the Datawire VXN system. These two properties alone do not indicate a successful transaction, they only tell whether or not there were any problems transporting the authorization request and response through the Datawire system. If the transaction was successfully authorized by FDMS, then the ResponseCaptureFlag will be True, and the ResponseApprovalCode will contain an approval code.

In addition, the ResponseAVS property will indicate whether the customer's billing address on file with his credit card company matches the information presented in the CustomerAddress and CustomerZip properties. The remaining properties provide additional information about the transaction.

Once an authorization request is approved, the money in the customer's account is blocked and tagged for the merchant. This transaction must go through the Batch Settlement process in order for the blocked money to be transferred to the merchant account. This is done by passing the xml aggregate returned from the GetDetailAggregate method to the FDMSSETTLE component. Usually, a Batch Settlement of all authorized transactions is done at the end of each business day.

/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.

Property List


The following is the full list of the properties of the component with short descriptions. Click on the links for complete descriptions.

CardCVVData Three digit security code on back of card (optional).
CardExpMonth Expiration month of the credit card specified in CardNumber.
CardExpYear Expiration year of the credit card specified in CardNumber.
CardNumber Customer's credit card number for this transaction.
CustomerAddress The customer's billing address.
CustomerZip Customer's zip code (or postal code if outside of the USA).
DatawireId Identifies the merchant to the Datawire System.
DatawireResponseStatus Status of the communication with Datawire.
DatawireReturnCode Contains an error code providing more details about the DatawireResponseStatus received.
FirewallHost Name or IP address of firewall (optional).
FirewallPassword A password if authentication is to be used when connecting through the firewall.
FirewallPort Port of the firewall to connect to.
FirewallType Determines the type of firewall to connect through.
FirewallUser A user name if authentication is to be used connecting through a firewall.
MerchantNumber A unique number used to identify the merchant within the FDMS and Datawire systems.
MerchantTerminalNumber Used to identify a unique terminal within a merchant location.
PurchaseIdentifier Optional purchase order number assigned by the merchant.
ResponseACI Returned Authorization Characteristics Indicator contains CPS qualification status.
ResponseAVS Contains the Address Verification System result code.
ResponseApprovalCode Contains an authorization code when a transaction has been approved.
ResponseCVV Contains the returned CVV result code if it was requested.
ResponseCaptureFlag Indicates whether the authorization was successful, and whether it can be settled.
ResponseCommercialCard Indicates whether the credit card charged is a corporate commercial card.
ResponseTransactionDate Local transaction date returned from the server in MMDDYY format.
ResponseTransactionId Contains the Visa Transaction Identifier or MasterCard Reference Number.
ResponseValidationCode This optional field contain information generated by the card issuer.
SSLAcceptServerCert Instructs the component to unconditionally accept the server certificate that matches the supplied certificate.
SSLCertEncoded The SSL certificate (PEM/base64 encoded).
SSLCertStore The name of the certificate store for the client certificate.
SSLCertStorePassword The password for the certificate store (if any).
SSLCertStoreType The type of certificate store for the client certificate.
SSLCertSubject The subject of the certificate used for client authentication.
SSLServerCert The server certificate for the last established connection.
SSLServerCertStatus The verification status of the server certificate for the last established connection.
Timeout A timeout for the component.
TransactionAmount Purchase amount to be authorized.
TransactionNumber Uniquely identifies the transaction.
TransactionType Specifies the type of transaction to process.
URL Location of the Datawire server to which transactions are sent.

Method List


The following is the full list of the methods of the component with short descriptions. Click on the links for complete descriptions.

Authorize Sends an authorization request.
Config Sets or retrieves a component configuration setting.
GetDetailAggregate Returns an aggregate containing details of this transaction, which is then used for settlement.
Interrupt Interrupts the current action.
PreAuthorize Runs pre-authorization checks on the customer's credit card data.
Reset Clears all properties to their default values.

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).
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.
Status Shows the progress of the FDMS/Datawire connection.

Configuration Settings


The following is a list of configuration settings for the component with short descriptions. Click on the links for complete descriptions.

ACI Requested Authorization Characteristics Indicator (ACI)
AbsoluteTimeout Determines whether timeouts are inactivity timeouts or absolute timeouts.
ClientTimeout Indicates timeout client application will wait for response.
CodePage The system code page used for Unicode to Multibyte translations (Windows/COM only).
CurrencyCode Currency Code for this transaction.
ECI Electronic Commerce Indicator
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.
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)

| About | Privacy Policy | Terms of Use |
© Copyright 2008 /n software inc.