The GlobalDebit component is used to authorize debit card transactions with the Global Payments system, using the Global Transport Direct API. This component is supported in the Retail and Restaurant environments, and allows for simple, direct, secure communication to the Global Transport gateway through a standard Internet connection. This component can be integrated into Point Of Sale applications. Because all TLS/SSL communications are handled inside the component, any application can be deployed without the need for expensive dedicated TLS/SSL servers.
The GlobalDebit component contains a subset of the GlobalCharge component's functionality. It only authorizes debit card transactions in the Retail and Restaurant industries. It cannot be used for eCommerce accounts. This component provides a much simpler interface for processing debit cards (and only debit cards), but otherwise works much like the GlobalCharge component.
First, set the UserId and Password with your login information. If you're submitting test transactions and are using a test account, set the Server to the certification URL ("https://certapia.globalpay.com").
Next, set the MagneticStripe field with Track 2 data read off the card. PIN-based Debit card transactions cannot be manually entered, and are always card-present transactions. Sending Track 1 data in the MagneticStripe property will result in a failed transaction. You must also set the KSN and EncryptedPIN properties with data retrieved from the PIN pad after the customer enters their PIN.
The result of the authorization request will be stored in the Response property. The Code field will contain the status of the request and the Text field will contain the human-readable response message. The contents of the Response should be logged after a successful transaction.
Debit card transactions are instant funds transfers. There is no block placed on the debit card, funds are immediately removed and sent to the merchant. Therefore, there is no ability to capture, void, or reverse debit transactions. You must use the Refund method to return funds to a customer's card. When performing a Refund, the MagneticStripe, EncryptedPIN, and KSN are required in addition to the PNRef parameter, which identifies the transaction you're issuing a refund for.
The following is the full list of the properties of the component with short descriptions. Click on the links for further details.
|Card||Contains the customer's credit card information.|
|CashBack||Optional cash back amount to return to the customer.|
|CustomerName||The cardholder's name as it appears on the card.|
|EncryptedPIN||DUKPT DES encrypted pin block, retrieved from a PIN pad.|
|InvoiceNumber||Optional invoice tracking number.|
|KSN||Clear-text Key Serial Number retrieved from a PIN pad.|
|Password||Password for authentication with the Global Payments Server .|
|Proxy||A set of properties related to proxy access.|
|RegisterNumber||A number that uniquely identifies the register or computer on which the transaction was performed.|
|Response||Contains the response to an EBT transaction.|
|Server||Global Payments transaction server.|
|SSLAcceptServerCert||Instructs the component to unconditionally accept the server certificate that matches the supplied certificate.|
|SSLCert||The certificate to be used during SSL negotiation.|
|SSLServerCert||The server certificate for the last established connection.|
|Timeout||A timeout for the component.|
|TransactionAmount||Amount to be charged from (or refunded to) the card.|
|UserId||UserId for authentication with the Global Payments Server .|
The following is the full list of the methods of the component with short descriptions. Click on the links for further details.
|Config||Sets or retrieves a configuration setting .|
|Interrupt||Interrupt the current method.|
|Refund||Refunds a previous transaction.|
|Reset||Clears all properties to their default values.|
|Sale||Sends a Sale transaction to the host.|
The following is the full list of the events fired by the component with short descriptions. Click on the links for further details.
|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 Global Payments connection.|
The following is a list of configuration settings for the component with short descriptions. Click on the links for further details.
|PINCapable||Indicates if the POS device is capable of accepting PINs.|
|ContactOnly||Indicates if the POS device is only able to accept chip inserted EMV transactions.|
|EMVCapable||Indicates whether the Point of Sale is EMV enabled.|
|EMVData||The EMV data returned from a Pin Pad after reading an EMV card.|
|ResponseEMVData||The response EMV data.|
|EMVEntryDataSource||The EMV Data Entry Source (DES).|
|RawRequest||Returns the request sent to the server for debugging purposes.|
|RawResponse||Returns the response received from the server for debugging purposes.|
|ConnectionTimeout||Sets a separate timeout value for establishing a connection.|
|FirewallAutoDetect||Tells the component whether or not to automatically detect and use firewall system settings, if available.|
|FirewallHost||Name or IP address of firewall (optional).|
|FirewallPassword||Password to be used if authentication is to be used when connecting through the firewall.|
|FirewallPort||The TCP port for the FirewallHost;.|
|FirewallType||Determines the type of firewall to connect through.|
|FirewallUser||A user name if authentication is to be used connecting through a firewall.|
|KeepAliveTime||The inactivity time in milliseconds before a TCP keep-alive packet is sent.|
|KeepAliveInterval||The retry interval, in milliseconds, to be used when a TCP keep-alive packet is sent and no response is received.|
|Linger||When set to True, connections are terminated gracefully.|
|LingerTime||Time in seconds to have the connection linger.|
|LocalHost||The name of the local host through which connections are initiated or accepted.|
|LocalPort||The port in the local host where the component binds.|
|MaxLineLength||The maximum amount of data to accumulate when no EOL is found.|
|MaxTransferRate||The transfer rate limit in bytes per second.|
|ProxyExceptionsList||A semicolon separated list of hosts and IPs to bypass when using a proxy.|
|TCPKeepAlive||Determines whether or not the keep alive socket option is enabled.|
|UseIPv6||Whether to use IPv6.|
|TcpNoDelay||Whether or not to delay when sending packets.|
|CACertFilePaths||The paths to CA certificate files when using Mono on Unix/Linux.|
|ReuseSSLSession||Determines if the SSL session is reused.|
|SSLCipherStrength||The minimum cipher strength used for bulk encryption.|
|SSLEnabledProtocols||Used to enable/disable the supported security protocols.|
|SSLIncludeCertChain||Whether the entire certificate chain is included in the SSLServerAuthentication event.|
|SSLProvider||The name of the security provider to use.|
|SSLSecurityFlags||Flags that control certificate verification.|
|SSLEnabledCipherSuites||The cipher suite to be used in an SSL negotiation.|
|TLS12SignatureAlgorithms||Defines the allowed TLS 1.2 signature algorithms when UseInternalSecurityAPI is True.|
|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).|
|AbsoluteTimeout||Determines whether timeouts are inactivity timeouts or absolute timeouts.|
|FirewallData||Used to send extra data to the firewall.|
|InBufferSize||The size in bytes of the incoming queue of the socket.|
|OutBufferSize||The size in bytes of the outgoing queue of the socket.|
|CodePage||The system code page used for Unicode to Multibyte translations.|