Real-Time Account Validation
Validate is a bank account verification service that authorizes the status of a bank account using the routing and account numbers associated with an EFT or check. These preauthorization checks occur automatically for subscribing merchants and require no additional request fields.
Validate consults proprietary databases and services to check for the following:
- Bad routing numbers (i.e., blacklisted TRN)
- Invalid checksums (i.e., check-digit algorithm failures)
- Does the account exist?
- Is the account open and valid?
The response to a transaction request indicates if the account is open and valid, closed, NSF, or one of the other conditions listed in the table below. Charges are only assessed for transactions involving participating banks (most Tier I and II banks participate, but some local banks and smaller credit unions may not). Transactions that do not receive a definitive response may then be checked against the national negative check database. Note that the status of the account may change between the bank’s report and settlement.
Validate transactions yield up to four additional response fields (see below). The most important field is
preauth_result, which indicates the result of the verification.
POS indicates a positive response from the verification service and
NEG indicates a negative response.
UNK indicates that nothing is known about the account (for various reasons). The following fields may display in the transaction response when performing Validate transactions. NOTE: The first field listed is for legacy SOAP API transactions and the second field listed is for REST API transactions.
preauth_results: The value in this field may cause a transaction to be declined, depending upon the setup. Potential values for this field include the following:
preauth_desc- This field displays the current state of the account as provided by the verifying agent.
pg_preauth_neg_report- This field indicates negative database responses and normally contains the negative report details and (usually) the name and phone number of the reporting entity.
Forte returns the following values in the result and description fields listed above. Sandbox normally generates a
POS result for any account (as participating banks are not actually consulted). The test account numbers below may be used on Sandbox (with any valid ABA number) to force the indicated response.
|Result||Description||Test Account #|
||P71:LOW RISK APPROVAL||99971|
||P73:MEDIUM RISK APPROVAL||99973|
||P80:PREAUTH VENDOR BUSY||99980|
||P90:PREAUTH VENDOR UNAVAIL||99990|
||P91:PREAUTH VENDOR ERROR||99991|
||P92:PREAUTH SERVER UNAVAIL||99992|
Approval and Validate
Validate only runs for
verify transactions (AGI transaction types
26). Transactions with a
NEG result are declined. Those with
POS results are not declined but may be subject to other checks. If the merchant only uses
preauth_result value may be used for decisioning rather than simply declining all
NEG responses, .
Authorization and Validate
Unlike Validate+, Validate does not allow merchants to configure approve/decline decisioning in their merchant configurations. If the final response is positive,
UNK, or the account is not found, the transaction will be APPROVED in all cases. If the final response has negative reports, the transaction will be DECLINED in all cases.