Direct Payment Integrator V6 - Online Help
Direct Payment Integrator V6
Questions / Feedback?

GlobalBenefit Class

Properties   Methods   Events   Configuration Settings   Errors  

The GlobalBenefit component is used to authorize Electronic Benefits Transfer (EBT) 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. An EBT transaction is similar to a Debit transaction, using a PIN and Key Sequence Number (KSN), but is used for Food Stamp or Cash Benefit programs.

Class Name

InPayDirect_GlobalBenefit

Procedural Interface

 inpaydirect_globalbenefit_open();
 inpaydirect_globalbenefit_close($res);
 inpaydirect_globalbenefit_register_callback($res, $id, $function);
 inpaydirect_globalbenefit_get_last_error($res);
 inpaydirect_globalbenefit_get_last_error_code($res);
 inpaydirect_globalbenefit_set($res, $id, $index, $value);
 inpaydirect_globalbenefit_get($res, $id, $index);
 inpaydirect_globalbenefit_do_balanceinquiry($res);
 inpaydirect_globalbenefit_do_config($res, $configurationstring);
 inpaydirect_globalbenefit_do_interrupt($res);
 inpaydirect_globalbenefit_do_refund($res, $pnref);
 inpaydirect_globalbenefit_do_reset($res);
 inpaydirect_globalbenefit_do_sale($res);
 inpaydirect_globalbenefit_do_vouchersale($res, $authcode, $vouchernumber);

Remarks

An EBT Card (also known as Cash Benefit Card or Food Stamp Card) works similar to a bank debit card. EBT is a special application of electronic funds transfer (EFT), or debit card technology, which takes money directly from one account and transfers it to another (credit cards, by comparison, simply record a sale for payment later).

There are just a few steps to setting up the class and sending transactions. First, set the UserId and Password, making sure that EBT transactions are allowed for your login credentials. If you're submitting test transaction and are using a test account, set the Server to the certification URL ("https://certapia.globalpay.com").

To send a transaction under normal circumstances, Track2 data should be read from the EBT card and placed in the CardMagneticStripe property. The CardEntryDataSource property should be set to edsMagneticStripe, and the EncryptedPIN and KSN properties should be filled with the encrypted PIN and key sequence number returned from your PIN pad. If the card reader is unable to read the magnetic stripe, card info may be manually added in the CardNumber, CardExpMonth, and CardExpYear properties, (and set the CardEntryDataSource property to edsManuallyEntered), but only for Food Stamp Transactions. Cash Benefit transactions may not be manually keyed.

Now simply set the TransactionAmount and call the Sale method to charge the card. You may also Refund funds back to the card (Food Stamp BenefitType only), as well as send a BalanceInquiry. Voice authorizations for Food Stamp transactions may be sent using the VoucherSale method.

The status of any of the above transactions will be stored in the ResponseCode property, with human-readable text appearing in ResponseText. Like the GlobalCharge class, there are several other Response properties which will contain data that should be logged.

EBT regulations require that all customer receipts include the last 4 digits of the CardNumber and the ResponseTransactionId, as well as the available balance for the account accessed. Balances are returned in the ResponseFoodStampBalance and ResponseCashBenefitsBalance properties.

EBT 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 EBT transactions. You must use the Refund method to return funds to a customer's card - but only for Food Stamp transactions. Cash Benefit Refund transactions are not allowed. Unlike the GlobalCharge class's Refund method, the CardMagneticStripe, EncryptedPIN, and KSN are required in addition to the PNRef parameter, which identifies the transaction you're issuing a refund for.

Property List


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

BenefitTypeIndicates whether the EBT card is a Food Stamps card or Cash Benefits card.
CardCVVDataThree digit security code on back of card (optional).
CardCVVPresenceIndicates the presence of the card verification value.
CardEntryDataSourceThis property contains a 1-character code identifying the source of the customer data.
CardExpMonthExpiration month of the credit card specified in Number .
CardExpYearExpiration year of the credit card specified in Number .
CardMagneticStripeTrack data read off of the card's magnetic stripe.
CardNumberCustomer's credit card number for the transaction.
CashBackOptional cash back amount to return to the customer.
CustomerNameThe cardholder's name as it appears on the card.
EncryptedPINDUKPT DES encrypted pin block, retrieved from a PIN pad.
InvoiceNumberOptional invoice tracking number.
KSNClear-text Key Serial Number retrieved from a PIN pad.
PasswordPassword for authentication with the Global Payments Server .
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.
RegisterNumberA number that uniquely identifies the register or computer on which the transaction was performed.
ResponseCashBenefitsBalanceBalance of cash benefit funds available on the EBT card.
ResponseFoodStampBalanceBalance of food stamp funds available on the EBT card.
ResponseApprovalCodeContains the transaction authorization code from the card issuer.
ResponseBatchNumberThe number of the batch this transaction is currently contained in.
ResponseCardTypeIndicates the card type or payment method.
ResponseCodeContains the transaction result code from the Global Transport Gateway.
ResponseHostCodeAction code returned by Global Payments.
ResponseMessageContains a human-readable response message concerning the processed transaction.
ResponseMessageDetailContains a formatted response message concerning the processed transaction.
ResponsePNRefContains a number which uniquely identifies the transaction in the Global Transport system.
ResponseDataContains the raw response data from the Global Payments host.
ResponseMerchantCodeMerchant Id code which must be printed on all receipts.
ResponseInvoiceNumberContains the same invoice number for the transaction that was originally sent in the request to the Global Transport Gateway.
ServerGlobal Payments transaction server.
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.
TransactionAmountAmount to be charged from (or refunded to) the card.
UserIdUserId for authentication with the Global Payments Server .

Method List


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

BalanceInquiryRetrieves the current balances of Food Stamp and Cash Benefit accounts on an EBT card.
ConfigSets or retrieves a configuration setting .
InterruptInterrupt the current method.
RefundSubmits a food stamp credit transaction, returning funds to an EBT card.
ResetClears all properties to their default values.
SaleSubmits a sale transaction for an Electronic Benefits (EBT) card.
VoucherSaleUsed to clear (force) a food stamp voucher that was previously voice-authorized.

Event List


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

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 Global Payments connection.

Configuration Settings


The following is a list of configuration settings for the class with short descriptions. Click on the links for further details.

RawRequestReturns the request sent to the server for debugging purposes.
RawResponseReturns the response received from the server for debugging purposes.
ConnectionTimeoutSets a separate timeout value for establishing a connection.
FirewallAutoDetectTells the component whether or not to automatically detect and use firewall system settings, if available.
FirewallHostName or IP address of firewall (optional).
FirewallPasswordPassword to be used if authentication is to be used when connecting through the firewall.
FirewallPortThe TCP port for the FirewallHost;.
FirewallTypeDetermines the type of firewall to connect through.
FirewallUserA user name if authentication is to be used connecting through a firewall.
KeepAliveTimeThe inactivity time in milliseconds before a TCP keep-alive packet is sent.
KeepAliveIntervalThe retry interval, in milliseconds, to be used when a TCP keep-alive packet is sent and no response is received.
LingerWhen set to True, connections are terminated gracefully.
LingerTimeTime in seconds to have the connection linger.
LocalHostThe name of the local host through which connections are initiated or accepted.
LocalPortThe TCP port in the local host where the component binds.
MaxLineLengthThe maximum amount of data to accumulate when no EOL is found.
MaxTransferRateThe transfer rate limit in bytes per second.
RecordLengthThe length of received data records.
TCPKeepAliveDetermines whether or not the keep alive socket option is enabled.
UseIPv6Whether to use IPv6.
TcpNoDelayWhether or not to delay when sending packets.
TLS12SignatureAlgorithmsDefines the allowed TLS 1.2 signature algorithms when UseManagedSecurityAPI is True.
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.

 
 
Copyright (c) 2017 /n software inc. - All rights reserved.
Build 6.0.6240.0