
507 S.E.2d 629 (1998)
28 Va. App. 571
John Percy LEE, Sr.
v.
COMMONWEALTH of Virginia.
Record No. 2432-97-3.
Court of Appeals of Virginia, Salem.
December 8, 1998.
*630 Wayne D. Inge, Roanoke, for appellant.
John H. McLees, Jr., Assistant Attorney General (Mark L. Earley, Attorney General, on brief), for appellee.
Present: COLEMAN, BUMGARDNER and LEMONS, JJ.
BUMGARDNER, Judge.
John Percy Lee, Sr. appeals his conviction by a jury of two counts of forgery, two counts of uttering and two counts of misdemeanor false pretenses. He argues that the trial court erred when it admitted the testimony of an employee of the company that issued the forged checks. The only issue is whether the employee, a fraud investigator, had sufficient personal knowledge of the company's business records and procedures to be able to testify that the checks were not authorized. We conclude that the testimony was proper, and we affirm the convictions.
On appeal, we view the evidence in the light most favorable to the Commonwealth and grant to it all reasonable inferences fairly deducible therefrom. See Higginbotham v. Commonwealth, 216 Va. 349, 352, 218 S.E.2d 534, 537 (1975).
Com Data is a company that provides trucking companies with a secure method to *631 pay their drivers' expenses. A trucking company establishes an account with Com Data and receives special blank checks and coded numbers, known as the express codes. The trucking company distributes checks with express codes on them to a driver. When a driver needs to pay for something while on the road, he completes the check for the amount of money needed and negotiates it to the provider. The provider calls Com Data to obtain confirmation that the check will be honored. The provider gives the Com Data operator the express code number from the check. The operator enters the express code into the company's computer, and if the computer recognizes it as a valid number, the computer randomly generates another number, known as the authorization number. The computer does not generate an authorization number unless it receives a valid express code, and the authorization number generated is unique to the particular transaction. The Com Data operator gives the authorization number to the provider who enters it on the face of the check. The provider then negotiates the check like any other.
The check passes through normal bank clearing channels until it gets to Com Data's bank. Before honoring the check, the bank sends it to Bank-Recon, a division of Com Data. Bank-Recon gives final approval to the bank for payment after making computer images of the checks and entering data from them into the computer system. Bank-Recon maintains these computer records which list all checks that have been authorized and the codes associated with the checks.
The evidence shows that the defendant negotiated the checks in question at two convenience stores. The cashiers, who cashed the checks, testified that the defendant completed the checks, made telephone calls to obtain authorization numbers, entered them on the checks, and negotiated the checks receiving value for them. All entries on the checks were written by the defendant. One cashier said that the "com checks" were unusual at that store, and the other cashier was unfamiliar with them.
The Commonwealth called Trenton Bateman as a witness to explain the Com Data records and procedure for approving checks. Bateman was a fraud investigator with Com Data, having worked for the company for two years. He began as a telephone operator who received calls from providers requesting approval to cash checks, and he issued authorization numbers to them. He became a supervisor of other telephone operators and then a fraud investigator. As part of his investigative duties he had access to all of Com Data's computer records including those for which Bank-Recon was custodian. Bateman investigated the two checks cashed by the defendant.
Bateman testified that the express codes on both checks were invalid because they had letters in them and valid express codes contained only numbers. Authorization numbers were never issued by Com Data's computers without valid express codes. Further, according to Com Data's records the authorization numbers on the checks had not been issued by Com Data.
Bateman's investigation mainly consisted of accessing the company's computer records. Bateman explained that he entered the express code that had been written on the face of each questioned check. He further explained that when a proper express code was entered into the company's computer, the computer would display the number of registered checks associated with that code. However, when Bateman entered the express codes from the checks tendered by the defendant, the computer revealed "invalid express code." He testified that response indicated to him that the check had not been authorized by Com Data.
The defendant's argument on appeal is that the trial court erred in admitting Bateman's testimony that Com Data had not authorized the two checks the defendant cashed. The defendant argues this testimony was inadmissible because Bateman was not qualified to testify about company records and procedures. He argues that Bateman's testimony was unreliable because he did not have sufficient personal knowledge to testify that the checks were not authorized. We disagree.
*632 Business records are admitted as an exception to the hearsay rule because they have a guarantee of trustworthiness and reliability. The business must keep the records in the normal course of its business and make them contemporaneously with the event that generates them. The people who prepare them and for whom they are prepared must rely upon the records in the transaction of the business. See Automatic Sprinkler Corp. v. Coley & Petersen, Inc., 219 Va. 781, 793, 250 S.E.2d 765, 773 (1979) (payroll records admissible because prepared and relied upon in the regular course of business); Frye v. Commonwealth, 231 Va. 370, 387, 345 S.E.2d 267, 279-80 (1986); Kettler & Scott, Inc. v. Earth Tech. Cos., Inc., 248 Va. 450, 457, 449 S.E.2d 782, 785 (1994).
Bateman explained how Com Data compiled its computer records and how it generated records of the authorization codes contemporaneously with the transaction. He explained that the company compiled the computer records as part of Com Data's routine procedure to authorize checks and it relied on that data in the regular course of its business. Bateman had access to all Com Data's records as its fraud investigator, and he could retrieve the data as necessary for his investigations. These computer records qualify as business records.
The next issue is whether Bateman was a proper person to testify about Com Data's business records and to authenticate them. These records are admissible under the business records exception even though Bateman did not make the computer entries nor was he the custodian of Com Data's company records. Although Bateman was not a custodian of the records, he was an employee who had knowledge of how Com Data's records were compiled and maintained, and he had access to those records as an integral part of his responsibilities as a fraud investigator for his employer.
In Sparks v. Commonwealth, 24 Va. App. 279, 482 S.E.2d 69 (1997), bank documents were properly authenticated by a bank vice-president even though she was not the custodian or supervisor of the custodian of the records. The trial court admitted the documents after determining the vice-president possessed knowledge of and had access to the records. See id. at 283-84, 482 S.E.2d at 71. This case is controlled by Sparks. Bateman possessed knowledge of the records and had access to them. Therefore, he could properly authenticate them. The records were admissible as authenticated business records.
Bateman testified about the data contained in Com Data's records that he retrieved from the company's computer records. Bateman did not actually authenticate and present into evidence a document generated by the computer. He testified from the business record generated by the computer and displayed on the terminal which he observed. We are not troubled by the fact that Bateman's testimony and not a printed document was admitted. See Ashley v. Commonwealth, 220 Va. 705, 708, 261 S.E.2d 323, 325 (1980) (security director testified from a report he compiled which constituted admissible business record); Simpson v. Commonwealth, 227 Va. 557, 566-67, 318 S.E.2d 386, 392 (1984); Hooker v. Commonwealth, 14 Va.App. 454, 456 n. 1, 418 S.E.2d 343, 344-45 n. 1 (1992). The computer decodes electronic records, converts them into a format understood by users and either prints them or displays them on a terminal. A person who can verify that the business records are authentic can present the evidence by testifying about what he saw displayed or by presenting a printed copy of the display. Either form is admissible as a business records exception to the hearsay rule.
Next, the defendant argues that the court erred when it permitted Bateman to testify that the checks were not authorized. He asserts the testimony was an opinion on the ultimate issue in the case. Bateman testified that if a valid express code was entered into the computer, the computer would reveal the numbers of the checks registered under that code. If an invalid express code was placed on a check, when the express code was entered into the computer the computer would indicate "invalid express code." Bateman testified that when he entered into the computer the express codes that had been placed on the defendant's *633 checks, the response was that the code was invalid. He testified that this response indicated the checks were not authorized by Com Data. The fact that the express code was not authorized by Com Data was not an opinion on the ultimate issue in the case. It was a statement of fact explaining the company's computer business records and how it authorized checks. The ultimate issue in this case was whether the checks were forged and whether the defendant forged the documents. The fact that the invalid numbers were placed on the checks is a fact that tends to prove the checks were forged.
Finally, the defendant challenges the sufficiency of the evidence. He asserts that Bateman lacked sufficient knowledge to prove beyond a reasonable doubt that Com Data did not authorize the checks. He contends that hypotheses exist other than that the defendant forged the checks by providing invalid express and authorization codes. He maintains that the evidence equally supports the hypothesis that the checks were authorized and that the computer failed to accurately record or report the numbers or that the providers failed to accurately record either the express or authorization codes.
Bateman's testimony was sufficient to establish the foundation for admitting the business records of the company. The evidence explained that the defendant was the person who obtained the express code. Bateman proved that an express code contains no letters and always had more than ten digits. The evidence proved that the codes placed on these checks contained letters, and the providers testified that the defendant placed both the express and authorization codes on the checks. See Schneider v. Commonwealth, 230 Va. 379, 382, 337 S.E.2d 735, 736-37 (1985). Bateman testified from personal knowledge and experience that the company never gave an authorization code unless it first received a proper express code. The jury could infer from his testimony that the regular business practice was followed, that the express codes were false, and that the checks were unauthorized by Com Data.
Furthermore, the two cashiers testified that defendant claimed he obtained authorization for cashing the checks by calling in the express codes. This information alone proved that he had knowingly uttered the forged checks and fraudulently obtained money for them. From this the jury could infer that he had also forged them. See Fitzgerald v. Commonwealth, 227 Va. 171, 174, 313 S.E.2d 394, 395 (1984). The evidence is sufficient to prove beyond a reasonable doubt that the defendant forged the checks.
For the foregoing reasons, we affirm the convictions.
Affirmed.
