The Net Tools Company - 800.225.4190
Search: 
Available in: FDMS
FDMSRegister Component [FDMS Integrator V2]

Properties   Methods   Events   Configuration Settings  

The FDMSRegister Component is an tool used to Register and Activate a merchant account with the Datawire VXN. This allows you to send transactions through the Datawire system to the First Data Merchant Services (FDMS) processor. This component is also used to find the appropriate URLs to which authorizations and settlements will be posted.

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 communicates with the Datawire VXN transaction transport network, and allows you to set up your account so that credit card transactions made with the FDMSECOMMERCE, FDMSRETAIL, and FDMSSETTLE Components will pass through Datawire and ultimately reach the First Data Merchant Services (FDMS) transaction processor. Before you can charge a single credit card, you must Register and Activate your FDMS account, and then run a ServiceDiscovery to find acceptable URLs, which you will ultimately use to send credit card authorizations.

The first thing you must do is Register your merchant account. First Data Merchant Services will provide you with a MerchantNumber and a MerchantTerminalNumber, which are required for registering with Datawire. In addition, you will need to set the TransactionNumber with a unique value (the TransactionNumber should be incremented for each transaction you send to the Datawire VXN). The example below also sets the URL to point to the Datawire test server.


  FDMSRegister.MerchantNumber = "000000999990"
  FDMSRegister.MerchantTerminalNumber = "555555"
  FDMSRegister.TransactionNumber = "1" 'any unique number will do.
  FDMSRegister.URL = "https://stagingsupport.datawire.net/staging_expresso/SRS.do"
  FDMSRegister.Register()

If the registration was successful, the DatawireStatus will contain "OK", and the DatawireId will contain the new Id which you must save and send with every subsequent transaction. The PrimaryDiscoveryURL and SecondaryDiscoveryURL properties will also be filled after a successful authorization. These URLs should be saved for later, and used to perform ServiceDiscovery.

After registering, you must immediately Activate the merchant. If you wait too long, your registration will time out, and you will have to contact Datawire to have them reset your account so that you may register again. When activating the merchant, the same properties are required as for the Register method, with the addition of the DatawireId property. Since the call to Register filled the DatawireId property with the correct value, all we need to do now is:


  FDMSRegister.TransactionNumber = 2
  FDMSRegister.Activate()

After registering and activating the account, you may now move on to Service Discovery. The Register method will return both a PrimaryDiscoveryURL and a SecondaryDiscoveryURL. Use these URLs with the ServiceDiscovery method to retrieve a list of valid transaction URLs. For instance:


  FDMSRegister.ServiceDiscovery("https://staging1.datawire.net/sd")

After a successful ServiceDiscovery the DatawireStatus will be "OK". The discovered URLs will be listed in the ServiceProviders array property. At this time, you should Ping each of these URLs and sort them in order of fastest to slowest response time. You will use the URL with the fastest response time to authorize transactions with FDMSRETAIL or FDMSECOMMERCE. If the first URL stops responding, switch to the next URL in the list. The following example shows how to ping each of the ServiceProviders (you must save and sort the results yourself).


  For i = 0 To FDMSRegister.ServiceProvidersCount - 1
    FDMSRegister.Ping(FDMSRegister.ServiceProviders[i])
    Debug.Print(FDMSRegister.ServiceProviders[i] & " = " & FDMSRegister.PingResponseTime)
  Next

You may now use the DatawireId and the Service Provider URLs retrieved by this component to submit transactions using the FDMSECOMMERCE, FDMSRETAIL, and FDMSSETTLE Components.

Property List


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

DatawireIdIdentifies the merchant to the Datawire System.
DatawireReturnCodeContains an error code providing more details about the DatawireStatus received.
DatawireStatusStatus of the communication with Datawire.
MerchantNumberA unique number used to identify the merchant within the FDMS and Datawire systems.
MerchantTerminalNumberUsed to identify a unique terminal within a merchant location.
PingResponseTimeReturned after calling the Ping method.
PrimaryDiscoveryURLURL to use with the ServiceDiscovery method to retrieve a list of service provider URLs.
ProxyAuthSchemeThis property is used to tell the component which type of authorization to perform when connecting to the proxy.
ProxyAutoDetectThis property tells the component whether or not to automatically detect and use proxy system settings, if available.
ProxyPasswordThis property contains a password if authentication is to be used for the proxy.
ProxyPortThis property contains the TCP port for the proxy Server (default 80).
ProxyServerIf a proxy Server is given, then the HTTP request is sent to the proxy instead of the server otherwise specified.
ProxySSLThis property determines when to use SSL for the connection to the proxy.
ProxyUserThis property contains a user name, if authentication is to be used for the proxy.
SecondaryDiscoveryURLURL to use with the ServiceDiscovery method to retrieve a list of service provider URLs.
ServiceProvidersCountThe number of records in the ServiceProviders array.
ServiceProvidersArray containing a list of URLs which may be used to send credit card transactions to.
SSLAcceptServerCertEncodedThe certificate (PEM/base64 encoded).
SSLCertEncodedThe certificate (PEM/base64 encoded).
SSLCertStoreThe name of the certificate store for the client certificate.
SSLCertStorePasswordIf the certificate store is of a type that requires a password, this property is used to specify that password in order to open the certificate store.
SSLCertStoreTypeThe type of certificate store for this certificate.
SSLCertSubjectThe subject of the certificate used for client authentication.
SSLServerCertEncodedThe certificate (PEM/base64 encoded).
TimeoutA timeout for the component.
TransactionNumberUniquely identifies the transaction.
URLLocation 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 further details.

ActivateActivates a merchant account on the Datawire VXN.
ConfigSets or retrieves a configuration setting.
InterruptInterrupts the current action.
PingUsed to find the fastest service provider to use to send credit card transactions.
RegisterRegisters a merchant account on the Datawire VXN.
ResetClears all properties to their default values.
ServiceDiscoveryRetrieves transaction URLs from Datawire.

Event List


The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.

ConnectedFired immediately after a connection completes (or fails).
DisconnectedFired when a connection is closed.
ErrorInformation about errors during data delivery.
SSLServerAuthenticationFired after the server presents its certificate to the client.
SSLStatusShows the progress of the secure connection.
StatusShows 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 further details.

NumRetriesNumber of times to retry registration.
RetryIntervalInterval in seconds to wait between registration retry attempts.
AcceptEncodingUsed to tell the server which types of content encodings the client supports.
AllowHTTPCompressionThis property enables HTTP compression for receiving data.
AuthorizationThe Authorization string to be sent to the server.
EncodeURLIf set to true the URL will be encoded by the component.
GetOn302RedirectIf set to true the component will perform a GET on the new location.
HTTPVersionThe version of HTTP used by the component.
IfModifiedSinceA date determining the maximum age of the desired document.
KeepAliveDetermines whether the HTTP connection is closed after completion of the request.
MaxHeadersInstructs component to save the amount of headers specified that are returned by the server after a Header event has been fired.
MaxHTTPCookiesInstructs component to save the amount of cookies specified that are returned by the server when a SetCookie event is fired.
ProxyAuthorizationThe authorization string to be sent to the proxy server.
ProxyAuthSchemeThe authorization scheme to be used for the proxy.
ProxyPasswordA password if authentication is to be used for the proxy.
ProxyPortPort for the proxy server (default 80).
ProxyServerName or IP address of a proxy server (optional).
ProxyUserA user name if authentication is to be used for the proxy.
TransferredDataLimitThe maximum number of incoming bytes to be stored by the component.
UsePlatformHTTPClientWhether or not to use the platform HTTP client.
UserAgentInformation about the user agent (browser).
UseWinInetIf set, the WinInet API is used for retrieving the URL.
UseWinInetCookiesControls whether to send and accept cookies when making HTTP requests through WinInet.
UseIPv6Whether or not to use IPv6.
MaxLineLengthThe maximum amount of data to accumulate when no EOL is found.
FirewallAutoDetectTells the component whether or not to automatically detect and use firewall system settings, if available.
FirewallHostName or IP address of firewall (optional).
FirewallListenerIf true, the component binds to a SOCKS firewall as a server (IPPort only).
FirewallPasswordPassword to be used if authentication is to be used when connecting through the firewall.
FirewallPortThe TCP port for the FirewallHost;.
FirewallUserA user name if authentication is to be used connecting through a firewall.
FirewallTypeDetermines the type of firewall to connect through.
TcpNoDelayWhether or not to delay when sending packets.
ReuseSSLSessionDetermines if the SSL session is reused.
SSLCipherStrengthThe minimum cipher strength used for bulk encryption.
SSLEnabledProtocolsUsed to enable/disable the supported security protocols.
SSLProviderThe name of the security provider to use.
SSLSecurityFlagsFlags that control certificate verification.
OpenSSLCADirThe path to a directory containing CA certificates.
OpenSSLCAFileName of the file containing the list of CA's trusted by your application.
OpenSSLCipherListA string that controls the ciphers to be used by SSL.
OpenSSLPrngSeedDataThe data to seed the pseudo random number generator (PRNG).
AbsoluteTimeoutDetermines whether timeouts are inactivity timeouts or absolute timeouts.
FirewallDataUsed to send extra data to the firewall.
InBufferSizeThe size in bytes of the incoming queue of the socket.
OutBufferSizeThe size in bytes of the outgoing queue of the socket.
CodePageThe system code page used for Unicode to Multibyte translations.
| About | Privacy Policy | Terms of Use |
© Copyright 2012 /n software inc.