Configuring check recognition

Datacap Mobile extracts key data from checks, such as the date, courtesy and legal amounts, payee name and the routing, account, and check numbers which are components of the Magnetic Ink Character Recognition (MICR) line at the bottom of checks.

Understanding the check processing

The capability to process checks on Datacap Mobile requires a connection to the Datacap server because the recognition process is executed on the server side, via an optional, add-on component called IBM Datacap Advanced Handwriting Recognition. Hence, make sure that it is installed on the Datacap server.

After Datacap Mobile has captured the image of a check, it makes a "transactional" call to the Datacap server to pass the image and receive the extracted data back for validation by the user. Checks are typically small in size and this round trip only takes a few seconds. To make the interface between DatacapMobile and any type of server-side processing easy and flexible, Datacap has a special helper application named 'Transaction', which installs directly on the Datacap server and acts as a front end to the Check Processing functions.

Transaction application

Its role is to:

  1. receive the check image and some check-specific variables, such as the width and DPI and check country, passed on untouched by Datacap Mobile from the Datacap application it is connected to (remember, the one you log on to in Applications)
  2. perform some check-specific image pre-processing functions, such as resizing and setting a DPI value
  3. invoke the check recognition action and get the results
  4. send back the extracted data (only; the image is discarded) once the check has been recognized to Datacap Mobile.
  5. This application does not require any special configuration.

Configuring your application

Follow these steps in Datacap Studio for configuring the Datacap application for check processing.:

  1. Add a page type with any symbolic name, for example, Check
  2. Add a variable to that page type named ProcessChecks with value set to True. This instructs Datacap Mobile to process the document as a check, that is, to send the image to the Datacap server for processing and get the results back for display and repair.
  3. Add a variable to that page type named hr_CheckCountry with value set to the country's 3-letter ISO code (ex: USA).
  4. Add a variable to that page type named hr_CheckWidth with value set to the size in inches of the check (default is 8.5).
  5. Add a variable to that page type named hr_CheckDPI with value set to the resolution expected for the check processing engine (default is 300); typical is 200 to 300. You might need to adjust this value to get the best results, especially to recognize the MICR line.
  6. Add field types with the symbolic names that are supported for the selected country. For example, for US checks:
    • CheckNumber. Add a friendly name Check number
    • Date
    • Amount
    • PayeeLine. Add a friendly name Payee
    • MICRRoutineNumber. Add a friendly name Routine number
    • MICRAccountNumber. Add a friendly name Account number

    Adding the ProcessCheck variable also tells Datacap Mobile to expose the Check processing icon in the Properties screen so that the user can rerun recognition of the check, if needed. Check processing is invoked automatically at snap time if it is set as default.

    Note that similar to ID recognition, there is no need to define zones for the server to grab the data. Analysis of the check image and extraction of the data are based on country-specific templates that are built in the Check Processing engine. This is why we need to pass the check country, size and DPI, so that the engine can select the template appropriate for the country and find the zones in the expected locations.

    However you do need to assign the symbolic field names as specified by the engine. Datacap Mobile only displays the fields that are set up in the Document Hierarchy. For a US check, available fields are: CheckDate, CheckNumber, CheckSignature, Amount, Date, CAR, LAR, PayeeLine, MICR, PayorBlock, and PayorLine. Also, you can access the breakdown of the check Date into Month, Date, and Year, and the breakdown of the MICR line into its components MICRRoutineNumber, MICRAccountNumber, MICRCheckNumber, or MICRData0, MICRData1, and MICRData2, typically for getting at the routing, account, and check numbers.

Configuring the Payee Line field

Cursive and hand‐print writing can be recognized in the Payee Line. However, you need to supply a dictionary of possible combinations of predefined vocabulary and aliases, each assigned a parameter that reflects the probability of occurrence in the image snippet of the Payee line. For example, you can define a list of the possible combinations around your company name (the name of the company the checks should be made payable to). Other payees are unlikely if you are not processing checks for the benefit of others. The recognition engine selects the vocabulary entries that are most probable. The path to the dictionary needs to be defined. By Default, in the Transaction application, which is the one invoking check recognition for Datacap Mobile, it is located under:\Datacap\Transaction\dco_Transaction\Vocabularies\payee.txt.

Here is an example:

”THE PAYMENT CENTER", 5
"PETER SMITH", 5
"HARBOR STREET FINANCIAL", 5
"HARBORSTREET FINANCIAL", 5

Where the number represents the probability weight from 1 to 10.