Skip to main content
Skip table of contents

Line Items

The EzeScan LINE ITEMS module is an optional module that requires EzeScan PRO + KFI + DISCOVERY modules.

  • It's fully integrated within the EzeScan product

  • Uses Intelligent Grid Row searching to find information based on different grid column layouts

  • Popular for Supplier Invoices i.e. extracting line item information like Description, Code, quantity, Price etc

  • Can be used on invoices with variable layout i.e. grid position moves and the number of grid columns and rows is not fixed

  • Line item row/column data can be output in a .CSV or .XML format

    • CSV data comprises 1 optional row of heading row data, followed by multiple rows of line items data.

    • data can also be output via EzeScan KFI output.

It enables the capture of line items in any document; for example:

  • Invoices

  • Index Sheets

  • Lab Test Results

This document is based on the capture of invoice data but may be applied to other types as indicated above.

Common terms used in this document

Term

Meaning

Jobs

The EzeScan module used to scan or import documents into the EzeScan application.

KFI

Key From Index. The KFI module is a mandatory requirement for line items. It is also popularly known as Profiling.

Discovery

An EzeScan module. This is necessary for the capture of items within a document

Grid

The lines which make up the segregated data (i.e. a table)

Line Items

The rows within the grid

Header

The top row of the grid. (i.e. the table heading)

REGEX

Regular Expressions used in EzeScan to refine captured values or assist in capturing values

Line Items in a "nutshell". What does it do?

The EzeScan Discovery module uses the EzeScan Advanced OCR module to provide EzeScan with the capability to use a single EzeScan Form Template to process documents that contain similar data but have different form layouts.
Discovery is ideally suited to processing Supplier Invoices where the invoices look different but they contain similar fields (e.g. Supplier Name, Invoice Number, Invoice Date and Invoice Amount). It can also be used to process forms where the form data is moving around because of page margin differences due to offset printing, scanner settings, photocopier type or settings, fax machine type or settings.
The Line items capture process generally comes into play after the main parts of an invoice captured by Discovery. EzeScan will identify a grid of text (i.e. a table) which contains values and capture them.
The capture process can be a simple capture of the line items and export the data out to a CSV or XML file for use by other systems or a detailed capture where the data is checked for accuracy (totals, tax, etc). This document will cover both ends of the spectrum.

How does it work?

Discovery Module

  1. Define the fields that you want to capture using the existing EzeScan KFI Admin form like in the example below. The fields with the red arrows will use Discovery.

  1. DISCOVERY options are applied to the relevant fields. i.e. various criteria may be applied, such as

    1. Search zone (which part of the page to search - full; top ½, bottom ½etc)

    2. Pre-Processing qualifiers

    3. Search Terms

    4. Skip content

    5. Pre-validation

    6. Validate words by (e.g. currency, date, custom etc)

  2. A comprehensive set of sample criteria is available in the appendices.Refer to Section 4.5 on page .

  3. When the EzeScan KFI job is run, data entry fields configured to use DISCOVERY will attempt to automatically discover the target words that are located on the form.

    1. Words that are successfully located are displayed highlighted with a blue border and the target word value is automatically placed into the data entry field.

    2. If the target word cannot be found, the value can be manually found by zooming the image and keying the value into the data entry field.

  4. Discovery is an optional EzeScan module. Whilst the KFI indexer may be set-up without the Discovery module the end result will not deliver the efficiencies that Discovery does as the operator will be required to manually enter each of the values.

  5. Contact EzeScan Support for a sample Line Items and Discovery configuration to begin your own set-up.

Line Items

Another field is added to the KFI which is configured to capture the line items of the document.

  1. This document is primarily designed to cover the "line items" components. Please refer to the EzeScan KFI User Guide for the other components.

To activate the Line items function for the field; select the Grid option on the Format tab.This will add the Grid Settings tab to allow the operator to configure the respective Line Items settings.

Important Note about Line Items

Line items functionality is only possible if the data being captured has a header; or a heading above the grid of text being captured.The easiest way to understand is to look at the two examples below. The one on the left has a header (heading) which provides a clear understanding of what is in each column; whereas the one on the right has no header and therefore there is no way of understanding what the columns are.If a supplier is sending invoices without headers then contact them to have their invoice templates changed to contain headers.

  1. If a grid goes over more than one page the additional pages must also have a header too.

Are you licensed to run EzeScan Line Items?

First you'll need to check whether you are licensed to run the Line items option.
You will need the following EzeScan modules:

  • EzeScan PRO

  • EzeScan KFI module

  • EzeScan Discovery module (called OCR-Advanced)

Use the EzeScan Admin  Licensing menu option to display the following form:If the Licensing Options say either "EzeScan PRO All (Eval Only)" or contain the words "KFI" and "OCR(ADVANCED)" then you may run the KFI and Discovery (Line items) option. If your current production license is not licensed for "KFI" and "OCR(ADVANCED)" but you would like to evaluate the functionality please contact your reseller or send an email to sales@ezescan.com requesting a 30 day evaluation license with "KFI" and "OCR(ADVANCED)" enabled.The KFI Options must include LINEITEMS… h1.Setting up a simple line item job

  1. This simple line items job is available from the EzeScan website. It may be used as an example to practice on. Contact EzeScan Support for details

Job set-up

  1. Please refer to the EzeScan Pro User Guide in regards to setting up new jobs.

  2. Create an EzeScan job which will enable the scanning or importing of invoices.

    1. It has been called Line Items Basic Demo for the purposes of this document.

    2. There is nothing special about the job, just the standard set-up

  3. Create a KFI of the same name

  4. Create an Upload - only if the scanned/imported documents are being uploaded into an EDRMS or similar system.

    1. This sample job does not have an upload configured and is therefore not documented.

KFI set-up

  1. Please refer to the EzeScan KFI User Guide in regards to setting up new KFI's.

The components in this section are provided as a guide only. The fields which are created will need to match your organisation's needs and may differ.

Create the required fields

Field

Field Name

Default Values

Mandatory

Capture Method

1

Tax Invoice

No

Discovery

2

ABN

No

Discovery

3

Supplier (Search or Lookup Using ABN or Order)

Yes

ODBC from ABN field

4

Order No

No

Discovery

5

Invoice Date

No

Discovery

6

Invoice Number

Yes

Discovery

7

Gross Total

Yes

Discovery

8

Tax Total

No

Discovery

9

Net Total

No

Discovery

10

Line Items

No

Format tab… Grid

  1. When setting up the output file (in the KFI Output tab) you may wish to remove the "Line Items" column from the output if you are creating a separate Grid output file.

Creating the Grid Line Items Component

  1. Using the above example; Field # 10 - select the Grid option on the Format tab:

  1. A new Grid Settings tab will appear - all settings shown here are the default settings.

Grid Settings Fields Explained

Output

Column Delimiter

The value used to separate the output column values of each row

  • Default is a Comma (,) or another value like a pipe (|) may be used for example…

    • column1,column2,column3

    • column1|column2|column3

Row Delimiter

The value used to separate each row of output values

  • Default is a Tilde (~) for example…

    • A grid made up of 2 rows containing A,B,C and 1,2,3 would be output as A,B,C~1,2,3

Output Headers

*Off  by default*

  • If selected  it will add Headers to the output file

  1. The headers will be the same as those on the processed invoice

  2. If outputting headers you should also selectthe Rows on New Line option (see below)

Grid to Separate Output File

  • If selected  it will send the grid output values to a separate file than the KFI Output file.

  • Default file type is CSV or you can select XML; depending on where the output file will be utilised.

    • Some systems may require XML.

Filename

  • This option allows the creation of a specific filename; if required.

  • If left blank the grid output filename will be the same as the KFI output except it will include "_Grid" at the end of the filename e.g. LineItems_20160105_Outback Imaging Pty Ltd_Grid.csv

  1. You must include the file type (extension); i.e. .CSV or .XML

Separate Output Folder

Blank by default
This option allows the grid file to be saved to a specific folder; if required.

  • If left blank the grid output file will be saved into the same folder as the KFI output file

Rows On New Line

*Off  by default*
This will output the line items as one line.

  • Each row will be separated by the value set in the "row delimiter" field (e.g. ~)

  • If selected  it will create a new row for each line item.

    • i.e. an invoice with 4 line items will create an output file containing 4 lines.

Remove Output Row Delimiters

*Off  by default*

  • If selected  it will remove the "row delimiter" value (e.g. ~) from the output file

  1. You may wish to select this option if outputting "Rows On New Line"

Quote Output

*Off  by default*

  • If deselected  the double quotes will be removed

    • e.g. 15,W1234b2,Widgets,23.20,0,348.00

  • If selected  it will put double quotes (") around each grid value

    • e.g. "15","W1234b2","Widgets","23.20","0","348.00"

Processing

Perform Auto-Enhancement

On  by default
Used in conjunction with the EzeScan Discovery module where invoice line items have been captured.
This allows the user to perform an auto-enhancement of the line items by matching them to a pre-defined list of expected header keywords.

Header Keywords

When Performa Perform Auto-Enhancement is selected the pre-defined

  1. Additional keywords may be added as required

Grid Advanced Settings

The advanced settings provide the ability to create sets of templates which may be useful when processing invoices from the same supplier.

  1. Setting up or changing the Grid Advanced Settings requires an amount of knowledge in the processes involved with creating/changing these settings. It is strongly advised you seek assistance in this area if you are unfamiliar with the Grid Advanced Settings. Please contact your EzeScan representative or EzeScan support for advice.

Input Document templates can be configured to define how columns are processed for specific documents that match the template headers.Output Data templates define how data will be output. Input Documents can have their output set to use an Output Data template.

Processing tab

The Processing tab is used to define general settings for how Grids will be processed, including general data formatting.

Processing tab Fields

Min Page Count

Set to 1 by default
The minimum number of pages to be processed.

Max Page Count

Set to 0 (zero) by default
Defines the maximum number of pages that Grid Processing will process

  • The Grid Processing will stop at that number of pages

  • This does not affect the number of pages in the current document being processed by the KFI

    • Leaving the field set to zero will allow all pages to be processed

Auto Processing

Off  by default

Allow Ignoring Validation Errors

*On  by default*
Allows ignoring of cell and column validation errors when submitting a grid. If this is off then an operator will not be able to submit a grid with validation errors.

Create Input Document Templates

*Off  by default*
This will allow matching of header data to existing templates, and creating a new input document template during grid processing.

  • If selected  then grid processing will require the use of templates.

    • This must be enabled to use templates and to be able to set custom output via Output Data

Default Input Document Name

Allows the provision of a default name to use for new input documents during processing

  • Blank by default and is only usable when Create Input Document Templates are enabled

  • You can use placeholders (e.g. <<S13>>) as part of the name.

    • Field placeholders must be specified by their field number (e.g. Field 2 would be <<F2>>)

Default Output Map

Set to (as input) by default
This is the default data map to use when defining new input document templates during processing.

  • The drop down has a list of all Output Data templates

Default Filter Tag

Blank by default
This is the default filter tag that will be assigned to new templates created during processing.

  • You can use placeholders (e.g. <<S13>>) as part of the name.

    • Field placeholders must be specified by their field number (e.g. Field 2 would be <<F2>>)

Template Filter

Set to (none) by default
This is the method used to filter what templates will be used when attempting to match a grid to a template during processing.

  • It is expected that the Default Input Document Name or Default Filter Tag field would be populated if a Template Filter is to be used.

  • The drop down has a list of the Template Filter options:

    • by Name – the Input Document Name will be used to filter the templates (match will be attempted only against one template that has a matching Name to the value used in Default Input Document Name).

    • by Tag – the Input Document Filter Tag will be used to filter the templates (match will be attempted against all templates with the same Filter Tag as the Default Filter Tag or a blank filter tag).

Highlight High Confidence OCR

*Off  by default*
If selected  it will allow the highlighting of "high confidence" OCR grid results.

  • Useful for highlighting found characters when testing

Clean up Integer Columns

*On  by default*
Run the replace regexes to clean up Input Document and Output Data columns set to "integer" validation

  • Will only apply if "integer clean up" Regex values are in next box.

Integer Clean up Regex

Uses regex Replace - With pairs; for example…

  • remove all non digit characters from the field.

  • Can be useful for quantity columns.

    • The regex is

      CODE
      *"\[^\d\]"{*}

      ,""

Clean up Decimal Columns

On  by default
Run the replace regexes to clean up Input Document and Output Data columns set to "decimal" validation

  • Will only apply if "decimal clean up" Regex values are in next box.

Decimal Clean up Regex

Uses regex Replace - With pairs; for example…

  • remove all but digits, commas (,), and decimal points (.) from the field

    • The regex is

      CODE
      *"\[^\d.,\]"{*}

      ,""

Clean up Currency Columns

On  by default
Run the replace regexes to clean up Input Document and Output Data columns set to "currency" validation

  • Will only apply if "currency clean up" Regex values are in next box.

Currency Clean up Regex

Uses regex Replace - With pairs; for example…

  • remove the dollar ($) sign from the output.

    • The regex is "\$",""

  • change comma or space to decimal point for cents, remove all but digits, and decimal point from the output.

    • The regex is ",(\d{2})$",".$1",",",""," (\d{2})$",".$1",

      CODE
      {*}"\[^\d.\]"{*}

      ,""

Clean up Date Columns

On  by default
Run the replace Regexes to clean up Input Document and Output Data columns set to "date" validation.

  • Will only apply if "date clean up" Regex values are in next box.

Date Clean up Regex

Uses regex Replace - With pairs.

  • Example: replace forward slash (/) with dash (-) for date separators.

  • The regex is "/","-"

Grid Location tab

Used to define the base settings for how a grid is located, these apply to all grid matching.

Grid Location tab Fields

Grid Bottom Whitespace

Default setting is 2.2
Sets the amount of maximum amount of whitespace allowed between two rows of a grid.
This will end the grid identification process if the line spacing has more than the set amount (e.g. 2.2) of white space between the lines of the grid.

  • The value indicates the number of lines based on the line height found in the grid.

  • This may be difficult to fine tune so it is recommended to leave as the default and:

    • reduce the value if the capture is picking up items outside of the grid

    • increase the value if the capture is not picking up all of the grid lines

  1. Use the theory of "majority rules" with this setting.

Search Entire Page

On  by default
Will expand the search zone to the entire page.

Auto Merge Orphan Rows

Off  by default
An orphan row is one which only has a value in one column.

  • If the first column has a value then then it is not an orphaned row.

  • An example is shown below:

  • If selected  it will automatically merge orphan rows with the previous row.

  1. Turn this option on if your invoices have orphans.

Output Data tab

Enabled only if Create Input Document Templates is enabled in the Processing tab, the Output Data tab is used to define output templates that are mapped into by the Input Documents templates. Generally, only one output template is used for all Input Documents but more can be defined. Each Input Document has an Output Document assigned to it.The default Output Template to be used is set in the Processing tab. Output templates can be used to set up the output fields required from Line Items as well as to validate data from the grid. They can be populated from grid columns found on the page and from alternate sources such as KFI field values, EzeScan lookups and searches, ODBC lookups and searches, and EDRMS plug ins.

Output Data tab Fields - Top Section

Name

The name given to the Output Data map

Description

Add a short description for the Output Data map. For example - Invoices

Add Button

Will create a new Output Data map

Delete Button

Will delete the selected Output Data map

Previous Document button

Will navigate to the previous Output Data map

Select a Document from the Pulldown List

Provides access to other Output Data maps (if available)

Next Document button

Will navigate to the next Output Data map

Output Data tab Fields - Columns Table Section

Name (heading)

  • Name of the column for the Output Data map.

    • These are used as the output header names if Output Headers is selected in Grid Settings in the KFI

    • These are used as the column footer titles when mapping columns during Grid Processing

    • They are used in the Output Column field in the Input Document templates

    • A new value will be added after the last Name whenever the "Add New Column" button is selected.

    • The default Name for each column is in the form Column <Number> where <Number> corresponds to the position number of the new column

Add a new Column

Will add a new column name to the table

  • Create a name for the column which matches the output requirements

Remove a Column

Will remove a column name from the table

Move a Column Up

Will promote a column name upward in the table

Move a Column Down

Will demote a column name downward in the table

Output Data tab Fields - Column Settings Section

Each column name created in the Columns table has its own set of configuration rules.
As a new column is added a blank settings screen will appear. This provides the ability to fine tune the data being exported; for example:

  • Removing certain text using regex values (e.g. removing the $ symbol from currency)

  • Defining the format of the data being exported (e.g. dates, currency - has inbuilt regexes)

    Description

    Each column can be provided with a description

    Read Only

    Off  by default
    If selected  it will prevent the user from editing this column

    Allow Mapping

    On  by default
    If it is not selected  the column does not appear as an option when mapping input to output columns during profiling

    Alternate Source

    Set to (none) by default
    Will allow the selection of a secondary data source for the cell value.
    There are 6 different options which may be selected:

  1. (none)

  2. Static Value The Static Value field appears and can be set using text and/or by using placeholders including calculations

  • Will allow a default or calculated value to be set for this column

  • Placeholder variables can be used

    • KFI fields should be referenced as their field number e.g. Field 1 is <<F1>>

  1. Query Result A SQL query can be made against an ODBC source, the first result is returned as the field value.

  • Displays the ODBC settings and query options to return a single value from a query.

    • ODBC DSN - Click on the browse button to select the appropriate DSN

    • ODBC User - Add a valid User ID for the selected DSN

    • ODBC Password - Add the User's password for the selected DSN

    • Use Lookups - If selected  it will ignore the ODBC settings and allow EzeScan Lookups to perform this query

    • SQL Query - create and paste the SQL query to be used into this field

      • Will only function if a valid DSN or Lookup table have been created

      • Only the first result will be returned to the field

      • The query can contain placeholder values including grid output placeholders

  • Will require an ODBC DSN to be configured on the PC which is being used to process the job. Please refer to the EzeScan Pro User Guide in regards to setting up an ODBC DSN.

  1. List lookup A SQL query can be used against an ODBC source, a selectable list of results is returned (refer to Figure 18 below for screenshot)

  • Displays ODBC settings and query options to return a selectable list of values

    • The operator can only select an item from the list returned by the query, they cannot enter any other values

  • Provides the same configurable fields as the Query Result option except for this additional field:

    • Default Value - allows a default value to be used for this column, this can be a placeholder variable including those from grid output

  1. Search Form A pop up search page can be used against an ODBC source to return a result

  • Displays the ODBC setting and query options to display a search form to the operator during processing.

    • The SQL Query must contain a table name that the search form will be set up for

  • Provides the same configurable fields as the Query Result option except for these additional fields:

    • SQL Query (Database Table) - The database table to be used for the search

    • Search Settings - Unset by default but allows the search to be configured per the KFI ODBC Search form (see KFI user guide)

    • Default Value - allows a default value to be used for this column

  1. Search Alternate EDRMS

    A pop up search page based on the selected EDRMS can be used to return a result

  • Requires the selected EDRMS EzeScan plugin

  • Provides the functionality to use a secondary data source for the cell value.

  1. The Alternative EDRMS functionality is for "plugins" which have been developed to be used in the EzeScan plugin architecture.

  • Selecting this option will activate the following fields

    • Default Value - allows a default value to be used for this column

    • Alternate EDRMS - select the respective EDRMS to be used  The Alternate EDRMS plugin information will then display at the bottom of the Output Data configuration, see the specific guides for the EDRMS for more information Use Replace RegexesOff  by default If selected  it will allow the use of Regexes to clean the cell value

  • A valid regex must be added to the field below this one|

    Replace Regexes

    Regexes to use when cleaning the cell value

  • Will only function if above field is selected 

  • Click on the browse … button to launch the standard EzeScan Regex Window to allow the creation of a Regex to be used

  1. You need to have an understanding of how to create and use Regex's to use this function.|

    Hide

    Off  by default
    If selected  it will hide this column during processing

    Validation…
    Format Type

    Validation format to use for this column. The selected Format Type will also determine the Clean-up Regex used on the column.

  • There is a built in Format Regex for each Format Type, they are not editable but can be copied and applied to Custom where they can then be edited

  • Select from…

    • Default is Any - no validation is performed.

    • Currency

    • Custom – allows entry of custom regex

    • Date

    • Decimal

    • Integer|

      Validation…
      Format Regex

      A Regex code will be added depending on the Format Type selected in the field above.

  • Each option has a predefined Regex which cannot be altered, except for the Custom option.

    • Currency

      CODE
      ^\(?(\[$£\] *)?\d+(,\d\d\d)*\.\d\d\)$|^\(?(\[$£\] *)?\d+(\.\d\d\d)*,\d\d\)$|^\[+-\]?(\[$£\] *)?\d+(,\d\d\d)*\.\d\d$|^\[+-\]?(\[$£\] *)?\d+(\.\d\d\d)*,\d\d$

    • Custom

      • Develop you own custom Regex validation and paste into this field

    • Date

      CODE
      ^(\[12\]\d|3\[01\]|0\[1-9\])(1\[012\]|0\[1-9\])(\d\{4\}|'?\d\{2\})$|^(1\[012\]|0\[1-9\])(\[12\]\d|3\[01\]|0\[1-9\])(\d\{4\}|'?\d\{2\})$|^(\[12\]\d|3\[01\]|0?\[1-9\]) ?(st|nd|rd|th)?( ?\[-/\\\. \] ?)(1\[012\]|0?\[1-9\]|Jan\[a-z\]*|Feb\[a-z\]*|Mar\[a-z\]*|Apr\[a-z\]*|May|June?|July?|Aug\[a-z\]*|Sep\[a-z\]*|Oct\[a-z\]*|Nov\[a-z\]*|Dec\[a-z\]*)( ?\[-/\\\., \] ?)(\d\{4\}|'?\d\{2\})$|^(1\[012\]|0?\[1-9\]|Jan\[a-z\]*|Feb\[a-z\]*|Mar\[a-z\]*|Apr\[a-z\]*|May|June?|July?|Aug\[a-z\]*|Sep\[a-z\]*|Oct\[a-z\]*|Nov\[a-z\]*|Dec\[a-z\]*)( ?\[-/\\\., \] ?)(\[12\]\d|3\[01\]|0?\[1-9\]),? ?(st|nd|rd|th)?( ?\[-/\\\. \] ?)(\d\{4\}|'?\d\{2\})$

    • Decimal

      CODE
      ^\[+-\]?\d+(,\d\d\d)*(\.\d+)?$|^\[+-\]?\d+(\.\d\d\d)*(,\d+)?$

    • Integer
      ^-?\d+$|

      Validation…
      Total Validation Type

      Set to None by default
      Will allow the selection of a validation type to be used when checking the Summed Total of this column

  • There are 3 different options which may be selected:

    • Static Value

      • Compare value to a static value set using text and/or by using placeholders including calculations

    • Lookup Query

      • Compare value to the result of a lookup ?

    • Database Query

      • Compare value to the result of a SQL query

  1. These 3 different options are documented below|

    Validation…
    Total Validation Value

    1. Static Value is selected

      This option can be used to validate against a static or calculated value using placeholders.

  • The summed total of this column must match this value.

  • Total Validation Value - Click on the browse … button to launch the edit window:

  • Placeholders can be selected from the dropdown at the top right, these are from the Output Data map and the KFI

  • The calculation can be displayed in three formats

    • Simple Calculation

      • Uses full placeholder name and basic formatting

      • Example: <<(KFI) Net>>+<<(KFI) Tax>>

    • Regular option

      • Uses contained notation and can allow for additional formatting

      • Example: <<="(KFI) Net"+"(KFI) Tax">>

    • Raw option

      • Uses basic placeholder references and contained notation

      • Example: <<=F6+F5>>

  1. The cell value must match this value

  2. Lookup Query is selected

  • The summed total of this column must match this value.

  • Total Validation Query - Click on the browse … button to launch the edit window:

  • Use one of these options to build the validation query:

    • Regular option

    • Raw option

  1. The total value validation query must return one or more rows

  2. Database Query is selected

    This option can be used to validate the total against a value returned from a database query.

  • The summed total of this column must match this value.

  • Also displays the ODBC settings and query options lower down in the list.  ODBC DSN - Click the browse … button to select the appropriate DSNODBC User - Add a valid User ID for the selected DSNODBC Password - Add the User's password for the selected DSN

  1. Will require an ODBC DSN to be configured on the PC which is being used to process the job. Please refer to the EzeScan Pro User Guide in regards to setting up an ODBC DSN.

    • Total Validation Query - Click the browse … button to launch the edit window below:

  • Use one of these options to build the validation query:

    • Regular option

    • Raw option

  1. The total value validation query must return one or more rows| Input Documents tabThe Input Documents tab is used to set templates for grids. Templates can be mapped to Output Data maps, and can be configured with various formatting and validation options. They can be modified after initial creation to improve the grid matching and data capture.The settings are enabled if Create Input Document Templates is selected in the Processing tab. Input Documents tab Fields - Top SectionAdd ButtonWill create a new Input DocumentDelete ButtonWill delete the selected Input DocumentPrevious Document buttonWill navigate to the previous Input DocumentSelect a Document from the Pulldown ListProvides access to other Input Document set-ups (if available)Next Document buttonWill navigate to the next Input DocumentNameThe unique name given to the Input DocumentRemember Column LocationsOn  by default This will remember the user specified locations of the column lines

  2. This is not recommended for documents with variable column sizes (i.e. untick the box)| | |

    Description

    Add a short description for the Input Document

  • e.g. Suppliers name and invoice type| | |

    Filter Tag

    This is only used if Template Filter by Tag has been selected in the Processing tab

  • The Input Template is only used for matching a grid if the Filter Tag matches the Default Filter Tag in the Processing tab or is blank.

  1. The Default Filter Tag in the Processing tab can be a placeholder value so the Input Document templates used in matching can change for each image processed| | |

    Output Document

    Defaulted to (as input)
    Sets the Output Data map that the Input Document columns can be mapped to

  • Populated from the Default Output Map in the Processing tab| | |

    Generate button

    Will generate an Output Document with matching columns

  • Will default to the same name which was added in the "Name" field| | |

    Grid Bottom Pattern

    Uses a regex to match the row after the last required grid row

  • Example: An invoice grid has a standard text line at the bottom of each grid that starts with the text *** Please pay by* that is always included in the grid match.

  • A regex can be used to match that line and end the grid there.

    • Grid Bottom Pattern regex: ^*+ Please

  1. This is a case sensitive field| | |

    Ignore Row Pattern

    Requires a Regex value which will exclude the entire row from being displayed or output if the row text matches the value specified in the Regex

  • Example: Some large invoices have department headers in the form *** Department Name *** separating line item sections

    • Ignore Row Pattern regex:

      CODE
      *^\*+ \[A-Z\]*

      | | |

      Manual Entry Data

      *Off  by default*
      This will allow data to be manually entered rather than populated form the grid.

  • The Grid still has to be matched using the header row but the data will be empty and the additional setting can specific the number of blank rows to allow rather than showing the number found in the image

  • If selected  it will activate the column settings section

    • This can be used to specify that the data portion of a grid will be manually entered

  1. Good for poor quality scans or handwritten data| | |

    Max Rows

    Set to 0 (zero) by default
    Is not available unless the "Manual Data Entry" option has been selected .

  • Leaving the field set to zero will disregard the total number of rows being processed| | |

    Remember Row Locations

    *On  by default*
    Is not available unless the "Manual Data Entry" option has been selected .

  • Wil remember the user specified locations of the row lines

    • Leaving the field set to zero will disregard the total number of rows being processed

  1. This is not recommended for documents with variable row sizes (i.e. untick the box)| | |Input Documents tab - Columns Table Section

    Name (heading)

    This is the value of the column header and is also used in determining a grid match.

  2. It is important that this value is the expected column heading value in the image

  • If the initial creation of the grid had OCR errors, they should be corrected in the Input Document template

  • A new value will be added whenever the "Add New Column" button is selected.| |

    Output Column (heading)

    • This is the mapping to the Output Data map column.

  • If the column is not required for output set it to (ignore).

  • The next unmapped Output Data map column name will be added whenever the "Add New Column" button is selected.| |

    Add a new Column

    Will add a new column name to the table

  • Create a name for the column which matches the output requirements|

    Remove a Column

    Will remove a column name from the table

    Move a Column Up

    Will promote a column name upward in the table

    Move a Column Down

    Will demote a column name downward in the table

    Input Documents tab Fields - Column Settings SectionEach column name created in the Columns table has its own set of configuration rules.
    As a new column is added a blank settings screen will appear. This provides the ability to fine tune the data being exported; for example:

  • Removing certain text using regex values (e.g. removing the $ symbol from currency)

  • Defining the format of the data being exported (e.g. dates, currency - has inbuilt regexes)

    Description

    Each column can be provided with a description

    Use Replace Regexes

    *Off  by default*
    If selected  it will allow the use of Regexes on the cell value

  • A valid regex must be added to the field below this one|

    Replace Regexes

    Regexes to use when cleaning the cell value

  • Will only function if above field is selected 

    • Click the browse … button to launch the standard EzeScan Regex Window to allow the creation of a Regex to be used  Example: Remove unwanted spaces and characters from a column

  • Regex:

    CODE
    *"\[ /\]"{*}

    ,""

  1. You need to have an understanding of how to create and use Regex's to use this function.|

    Validation…Format Type

    Validation format to use for this column.

  • This will also apply the Clean-up Regex from the Processing tab

  • Select from…

    • Default is Any

    • Currency

    • Custom – allows a regex to be entered

    • Date

    • Decimal

    • Integer|

      Validation…Format Regex

      A Regex code will be added depending on the Format Type selected in the field above.

  • Each option has a predefined Regex which cannot be altered, except for the Custom option.

    • Currency

      CODE
      ^\(?(\[$£\] *)?\d+(,\d\d\d)*\.\d\d\)$|^\(?(\[$£\] *)?\d+(\.\d\d\d)*,\d\d\)$|^\[+-\]?(\[$£\] *)?\d+(,\d\d\d)*\.\d\d$|^\[+-\]?(\[$£\] *)?\d+(\.\d\d\d)*,\d\d$

    • Custom

      • Develop you own custom Regex validation and paste into this field

    • Date

      CODE
      ^(\[12\]\d|3\[01\]|0\[1-9\])(1\[012\]|0\[1-9\])(\d\{4\}|'?\d\{2\})$|^(1\[012\]|0\[1-9\])(\[12\]\d|3\[01\]|0\[1-9\])(\d\{4\}|'?\d\{2\})$|^(\[12\]\d|3\[01\]|0?\[1-9\]) ?(st|nd|rd|th)?( ?\[-/\\\. \] ?)(1\[012\]|0?\[1-9\]|Jan\[a-z\]*|Feb\[a-z\]*|Mar\[a-z\]*|Apr\[a-z\]*|May|June?|July?|Aug\[a-z\]*|Sep\[a-z\]*|Oct\[a-z\]*|Nov\[a-z\]*|Dec\[a-z\]*)( ?\[-/\\\., \] ?)(\d\{4\}|'?\d\{2\})$|^(1\[012\]|0?\[1-9\]|Jan\[a-z\]*|Feb\[a-z\]*|Mar\[a-z\]*|Apr\[a-z\]*|May|June?|July?|Aug\[a-z\]*|Sep\[a-z\]*|Oct\[a-z\]*|Nov\[a-z\]*|Dec\[a-z\]*)( ?\[-/\\\., \] ?)(\[12\]\d|3\[01\]|0?\[1-9\]),? ?(st|nd|rd|th)?( ?\[-/\\\. \] ?)(\d\{4\}|'?\d\{2\})$

    • Decimal

      CODE
      ^\[+-\]?\d+(,\d\d\d)*(\.\d+)?$|^\[+-\]?\d+(\.\d\d\d)*(,\d+)?$

    • Integer
      ^-?\d+$|

      Validation…Value Validation Type

      Set to None by default
      There is one option which may be selected:

  1. Static Value

    • Will allow the selection of a validation type to be used when checking the cell value|

      Validation… Value Validation Value

      Static Value is selected
      This option can be used to validate against a static or calculated value using placeholders.

  • The cell value must match this value.

  • Value Validation Value - Click the browse … button to launch the edit window:

  • Placeholders can be selected from the dropdown at the top right, these are from the Output Data map and the KFI

  • The calculation can be displayed in three formats

    • Simple Calculation

      • Uses full placeholder name and basic formatting

      • Example: <<Quantity>><<Unit Price>>*

    • Regular option

      • Uses contained notation and can allow for additional formatting

      • Example: <<="Quantity""Unit Price">>*

    • Raw option

      • Uses basic placeholder references and contained notation

      • Example: <<=GO4*GO5>>

  1. The cell value must match this value|

    Validation… Grid Bottom Pattern

    Uses a regex to match the value in the cell after the last required grid row

  • Example: An invoice grid has the word Total in the cell after the last required grid value that is always included in the grid match.

    • A regex can be used to match that cell and end the grid there.

    • Grid Bottom Pattern regex: Total

  1. This is a case sensitive field|

    Validation… Ignore Row Pattern

    Requires a Regex value which will exclude the entire row from being displayed or output if the cell text matches the value specified in the Regex

  • Example: An invoice has extra delivery information in the description column that always starts with Deliver to

    • Ignore Row Pattern regex: Deliver to|
      AppendicesExample of a basic/simple Line Items job

  1. It is assumed that you have the skills to create the Job and KFI.This example only focuses on the Line Items functionality.

About the job

This very basic job will process an invoice and create 3 different types of output files.

  1. PDF File for scanned/imported each invoice

  2. Header File (CSV "combined" format) for all invoices captured

  3. Line Items File (CSV format) for each invoice

The set-up does not utilise any advanced type of settings, including using discovery to capture the invoices details. It's very basic & uses manual captured refer to page for the advanced example

Setting up the Job

The EzeScan Job imports 3 sample invoices

  • The job creates a PDF file for each invoice in the default output folder

    • Naming convention of files is Invoice # <<F3>> from <<F2>> dated <<F4>>

Setting up the KFI

The EzeScan KFI has 9 fields:

  1. ABN <<F1>>uses zone pen to capture the details; removes the spaces

  2. Supplier Name <<F2>>uses zone pen to capture the details

  3. Order Number <<F3>>uses zone pen to capture the details

  4. Invoice Date <<F4>>uses zone pen to capture the details; formatted date to DD-MM-YYYY

  5. Invoice Number <<F5>>uses zone pen to capture the details

  6. Gross Total <<F6>>uses zone pen to capture the details; removes the $ symbol

  7. Tax Total <<F7>>uses zone pen to capture the details; removes the $ symbol

  8. Sub (Net) Total <<F8>>uses zone pen to capture the details; removes the $ symbol

  9. Line Items <<F9>>will create a new template based on the Supplier Name field <<F2>>

The EzeScan KFI output file creates 2 x CSV files in the default output folder

  1. Output tab - Header file for invoices processed <<S3(DD-MM-YYYY)>>.csv

    • Combined output file

  2. Line Items field - Grid Settings tab Line Items Inv# <<F3>> from <<F2>> dated <<F4>>.csv

    • Grid to separate output file

There is no Upload associated to this set-up.

  • Files are exported to the default output folder set in the Job: C:\ProgramData\Outback Imaging\EzeScan\Output\<<JOB>>

Line Items set-up - in KFI

After creating the six (above) KFI fields the Line Items field <<F9>> needs to be configured

Running the job

There are 3 sample invoices in the default job folder.

  1. Click import

  2. Select files & Open

  3. Press F4 to profile and use the "Zone Pen" capture tool to capture each field

  1. When you press enter after completing the Total Amount field the Line Items function will automatically open the Grid processing for Line Items window

    1. In this example the first attempt to locate the line items grid identified the incorrect area as shown at right.

    2. It is fairly easy to address; click on the Define option and drag your cursor over the required grid area

    3. EzeScan will then re-calculate the grid and present the line items as shown in Figure 34

Additional work may be required as outlined below

  1. EzeScan will attempt to identify the invoice grid but may need some manipulation

    1. The header is identified which display in the Results section at bottom of window

    2. The line items are identified which display in the Results section at bottom of window

    3. Some lines may not be picked up. They are easily added by right mouse clicking between the lines and selecting Insert row. The new rows will appear in the Results section as they are added

    4. Some columns may not be in the correct place. They are easily moved by clicking on the line and dragging it to the appropriate location. New column lines may also be added by right mouse clicking on the required location and selecting Insert Column.

  2. You may need to make slight adjustments to the details in the Results section, such as spelling etc. The fields are generally highlighted in   yellow  

  3. Once all of the items are looking good click on the OK button and you will return to the Profiling window.

  4. Click Submit to complete the process.

There are 3 output files created by the process:

Header File (CSV) - viewed in Notepad
Header File (CSV) - viewed in MS Excel
  1. Opening the CSV file using MS Excel may actually change the formatting of the values such as dates & currency. Take extreme care if doing this - do not make any changes and/or save the file when closing it.

Line Items File (CSV) - viewed in Notepad
Line Items File (CSV) - viewed in MS Excel
  1. Opening the CSV file using MS Excel may actually change the formatting of the values such as dates & currency. Take extreme care if doing this - do not make any changes and/or save the file when closing it.

Example of an advanced Line Items job

Using the EzeScan configuration used in the basic/simple Line Items job covered in the previous section; we have taken additional steps to streamline the process.

  • Firstly we will use the EzeScan Discovery module to automate the capture of the fields on the invoice plus lookup the supplier name from a database using the ABN number.

  • Secondly we will create Line Items templates for the particular supplier so that the operator will not have to "drag lines" around the grid processing window as occurred in the previous example. New templates are added as invoices are processed from different suppliers and in time a "collection" of supplier templates will be available for quick processing of your invoices.

  1. It is assumed that you have the skills to create the Job and KFI as well as an understanding how the Discovery module functions; along with ability to use regular expressions (Regex's).

About the job

This advanced job will process an invoice and create 3 different types of output files.

  1. PDF File for scanned/imported each invoice

  2. Header File (CSV "combined" format) for all invoices captured

  3. Line Items File (CSV format) for each invoice

Setting up the Job

The EzeScan Job imports 3 sample invoices

  • The job creates a PDF file for each invoice in the default output folder

    • Naming convention of files is Invoice # <<F3>> from <<F2>> dated <<F4>>

Setting up the KFI

The EzeScan KFI has 10 fields:

  1. Tax Invoice <<F1>>

  2. ABN <<F2>>

  3. Supplier (Search or Lookup Using ABN) <<F3>>

    • Does an SQL query from a "lookup set" called abnlookup to locate the supplier name using the ABN…

Select Supplier_Name from abnlookup where ABN='<<F2>>'

  1. Order Number <<F4>>

  2. Invoice Date <<F5>>

  3. Invoice Number <<F6>>

  4. Gross Total <<F7>>

  5. Tax Total <<F8>>

  6. Sub (Net) Total <<F9>>

  7. Line Items <<F10>>will create a new template based on the Supplier Name field <<F3>>

  8. _Set fields 1-9 to automatically process (1st check box on  Automation tab)_

The EzeScan KFI output file creates 2 x CSV files in the default output folder

  1. Output tab - Header file for invoices processed <<S3(DD-MM-YYYY)>>.csv

    • Combined output file

  2. Line Items field - Grid Settings tab Line Items Inv# <<F4>> from <<F3>> dated <<F5>>.csv

    • Grid to separate output file

There is no Upload associated to this set-up.

  • Files are exported to the default output folder set in the Job: C:\ProgramData\Outback Imaging\EzeScan\Output\<<JOB>>

Line Items set-up - in KFI

After creating the 9 (above) KFI fields the Line Items field <<F10>> needs to be configured

Advanced Setting button

Clicking the Advanced Settings button (shown in Figure 32) will present the screen below.Ticking the 2 boxes and adding the Supplier Name field number shown will allow you to create "Supplier based templates" so when a template is processed, EzeScan will use the supplier name to bring up a previously used supplier template. If there is no existing template then you will have the ability to create one.

Running the job

There are 3 sample invoices in the default job folder.

  1. Click import

  2. Select files & Open

  3. Press F4 to profile and the EzeScan Discovery module and pre-set SQL query (on field <<F3>>) will automatically process each of the fields

  1. After the Sub (Net) Amount field is processed the Line Items function will automatically open the Grid processing for Line Items window

  1. In this example the first attempt to locate the line items grid identified the incorrect area as shown above.

    • It is fairly easy to address; click on the Define option and drag your cursor over the required grid area

    • EzeScan will then re-calculate the grid and present the line items as shown in Figure 34

Additional work may be required as outlined below

  1. EzeScan will attempt to identify the invoice grid but may need some manipulation

    1. The header is identified which display in the Results section at bottom of window

    2. The line items are identified which display in the Results section at bottom of window

    3. Some lines may not be picked up. They are easily added by right mouse clicking between the lines and selecting Insert row. The new rows will appear in the Results section as they are added

    4. Some columns may not be in the correct place. They are easily moved by clicking on the line and dragging it to the appropriate location. New column lines may also be added by right mouse clicking on the required location and selecting Insert Column.

    5. The Output column names always default as shown. These may be edited in the advanced settings.

    6. Click the Create button to create the new template

  2. You may need to make slight adjustments to the details in the Results section, such as spelling etc. The fields are generally highlighted in   yellow  

  3. Once all of the items are looking good click on the OK button and you will return to the Profiling window.

  4. Click Submit to complete the process.

There are 3 output files created by the process:

Header File (CSV) - viewed in Notepad
Header File (CSV) - viewed in MS Excel
  1. Opening the CSV file using MS Excel may actually change the formatting of the values such as dates & currency. Take extreme care if doing this - do not make any changes and/or save the file when closing it.

Line Items File (CSV) - viewed in Notepad
Line Items File (CSV) - viewed in MS Excel
  1. Opening the CSV file using MS Excel may actually change the formatting of the values such as dates & currency. Take extreme care if doing this - do not make any changes and/or save the file when closing it.

Examples of Commonly identified issues

Output files

Why does my line items output CSV file have tilde's (~) at end of each line?

It is more than likely because the Grid settings tab need to be set like the settings shown below:

  • If the "Rows on new line" box is ticked then the tilde will be appended to the values

  • Ticking the "Remove output row delimiters" box will remove the tilde in the output file.

Examples of Placeholders used by Advanced Settings

Field Placeholders

  • Field placeholders should be referenced by their field number in the KFI

    • E.g. Field 1 is <<F1>>

Grid Placeholders

Placeholder

Details

<<GIx>>

Grid Input fields are referenced as their column number corresponding to the Input Document template.
E.g. <<GI1>> refers to Grid Input 1 – the value of the first column of the current line

  1. The grid placeholder is positional and every Input Document could have different types of values in each column. For this reason grid input placeholders should only be used within Input Document fields.

<<GOx>>

Grid Output fields are referenced as their column number corresponding to the Output Document template. They are calculated on output.
E.g. <<GO1>> refers to Grid Output 1 – the value of the first column of the current line

<<GL>>

Grid Line returns the current grid line number

  1. This is based on the entire grid including any hidden or merged fields so it may not correspond to the output line number

Examples of Regexes used in the Invoice "Discovery" process

  1. The examples provided below are exactly that - they are examples (as at November 2016)They should work in most cases but may require fine tuning or totally reworked to suit your organisations requirements. If you are experiencing issues with any of the regex examples please contact support@ezescan.com.au for assistance.

Tax Invoice

Select Tab

Use this…

Search Zone Size

Expand to Top 1/3 of Page

Pre-processing

None

Search settings… Content Advanced…  Use Find Regex

Tax(ation)?\s?(\n)?\s?Invoice

Invoice

Skip Content

None

Pre-validation…  Use Output Replace Regex

"Tax.*Invoice","Invoice","^$","Check that document is an Invoice"

Validate words by

 Ignore

ABN

Profile #1 - ABN Content Search

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing

None

Search settings… Content Advanced… Use Find Regex

(?<=^

\s

[.,:; ])\d[ -\.]?\d[ -\.]?\d[ -\.]?\d[ -\.]?\d[ -\.]?\d[ -\.]?\d[ -\.]?\d[ -\.]?\d[ -\.]?\d[ -\.]?\d(?=\s

\n

$)
]]></ac:plain-text-body></ac:structured-macro>

  1. INCLUDING . as possible separator

Search settings… Content Advanced… Use Find Regex

(?<=^

\s

[.,:; ])\d[ -]?\d[ -]?\d[ -]?\d[ -]?\d[ -]?\d[ -]?\d[ -]?\d[ -]?\d[ -]?\d[ -]?\d(?=\s

\n

$)
]]></ac:plain-text-body></ac:structured-macro>

  1. EXCLUDING . as possible separator - only space and hyphen

Skip Content… Use Skip Regex

((tel(ephone)?

fax

facsimile

office

direct

ph(one)?

mob(ile)?

mb)[.,;; ]*

+) ?\d+

Pre-validation… Use Output Replace Regex

"-","","\s","","(\d{2})(\d{3})(\d{3})(\d{3})","$1 $2 $3 $4"

Validate words by

Business registration number… Australian Business Number (ABN)

Order Number

Profile #1 - Content Search

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing

None

Search settings… Content Advanced…  Use Find Regex

(?<=^

\s)((your

cust(omer)?

purchase

job

order).? *)?(order

ref(erence)?

job

agreement

p[.]?(o

w[.]?(o

(0

o)/No

work ((ref(erence))?.? *(number

nbr

no

#))) ?((ref(erence))?.? *(num(ber)?

nbr

no

#))? ?[.,:; ]{0,5} *([a-z,0-9/-])?\d{3}([0-9/-])?(?=[.,:;/]

\s

n

$)

Skip Content

None

Pre-validation…  Use Output Replace Regex

"(?<=^

\s)((your

cust(omer)?

purchase

job

order).? *)?(order

ref(erence)?

job

agreement

p[.]?(o

w[.]?(o

(0

o)/No

work ((ref(erence))?.? *(number

nbr

no

#))) ?((ref(erence))?.? *(number

nbr

no

#))? ?[.,:; ]{1,5} *",""

Validate words by

Custom…
[A-Z0-9/-]+){4,12}$

Profile #2 - Term Search Right

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing

None

Search Settings…Search Terms…Right of search term

order number:,order number,order no.:,order no:,order no.,order no,order #:,order #,order reference:,order reference,order ref.:,order ref.,order ref:,order ref,your order number,your order number:,your order no.:,your order no.,your order no:,your order no,your order reference,your order reference:,your order ref.:,your order ref.,your order ref:,your order ref,customer order number:,customer order number,customer order no.:,customer order no.,customer order no,customer order no:,customer order reference:,customer order reference,customer order ref.:,customer order ref:,customer order ref.,customer order ref,agreement no.:,agreement no.,agreement no:,agreement no,purchase order:,purchase order,your ref.:,your ref.,your ref:,your ref,your o/no.:,your o/no:,your o/no.,your o/no,work order number,work order #,work order no.,work order no,work number,work no.,work no,work #,job number,job no.,job no,job#,your no.,your no,PO Number,*PO no:,PO No:,PO No,PO #:,PO #,P.O. Number,P.O. No.:,P.O. No.,P.O. No,P.O. #:,P.O. #,PO Number:,P.O. Number:,WO Number,WO No,WO #:,WO #,WO No:,W.O. Number,W.O. #,WO Number:,W.O. No.:,W.O. No.,W.O. No,W.O. Number:,W.O. #:Order No:.Order No

  1. Maximum words in target = 4; Stop words at gap;Minimum number of gap chars = 3

Skip Content…Skip strings

po box number,po box no.,po box no,po box #,po box,description,item

Pre-validation

None

Validate words by

Ignore

Profile #3 - Term Search Below

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing

None

Search Settings…Search Terms…Right of search term

order number:,order number,order no.:,order no:,order no.,order no,order #:,order #,order reference:,order reference,order ref.:,order ref.,order ref:,order ref,your order number,your order number:,your order no.:,your order no.,your order no:,your order no,your order reference,your order reference:,your order ref.:,your order ref.,your order ref:,your order ref,customer order number:,customer order number,customer order no.:,customer order no.,customer order no,customer order no:,customer order reference:,customer order reference,customer order ref.:,customer order ref:,customer order ref.,customer order ref,agreement no.:,agreement no.,agreement no:,agreement no,purchase order:,purchase order,your ref.:,your ref.,your ref:,your ref,your o/no.:,your o/no:,your o/no.,your o/no,work order number,work order #,work order no.,work order no,work number,work no.,work no,work #,job number,job no.,job no,job#,your no.,your no,PO Number,*PO no:,PO No:,PO No,PO #:,PO #,P.O. Number,P.O. No.:,P.O. No.,P.O. No,P.O. #:,P.O. #,PO Number:,P.O. Number:,WO Number,WO No,WO #:,WO #,WO No:,W.O. Number,W.O. #,WO Number:,W.O. No.:,W.O. No.,W.O. No,W.O. Number:,W.O. #:Order No:.Order No

  1. Maximum words in target = 4; Stop words at gap;Minimum number of gap chars = 3

Skip Content…Skip strings

po box number,po box no.,po box no,po box #,po box,description,item

Pre-validation

None

Validate words by

Ignore

Invoice Date

Profile #1 - Content Search - Date with Months Labelled Same Separators

Select Tab

Use this…

Search Zone Size

Expand to top ½ of page

Pre-processing

None

Search settings… Content Advanced… Use Find Regex

(?<=^

\s

\n)(Invoice

Due

Received

Pay(ment)?) ?(Date)? ?(Due

Received)? ?(By)? ?( ?[;:.,- ] ?)?(([12]\d

3[01]

0?[1-9]) ?(st

nd

rd

th)?( ?([-/\\\. ,]) ?)(Jan[a-z]*

Fe(b

v)[a-z]*

Mar[a-z]*

A(p

v)r[a-z]*

Ma(i

y)

Ju(ne?

in?)

Jui?ly?

A(out?

ug)[a-z]*

Sep[a-z]*

Oct[a-z]*

Nov[a-z]*

Dec[a-z]*)(\11)(\d{4}

'?\d{2})

(Jan[a-z]*

Fe(b

v)[a-z]*

Mar[a-z]*

A(p

v)r[a-z]*

Ma(i

y)

Ju(ne?

in?)

Jui?ly?

A(out?

ug)[a-z]*

Sep[a-z]*

Oct[a-z]*

Nov[a-z]*

Dec[a-z]*)( ?([-/\\\. ]),? ?)([12]\d

3[01]

0?[1-9]),? ?(st

nd

rd

th)?(\27)(\d{4}

'?\d{2}))(?=T

[,]

\s

\n

$)

]]>

Skip Content… Use Skip Regex

(Due

Received

Pay)[.,;; ]* ?

]]>

Pre-validation… Use Output Replace Regex

"(?<=^

\s

\n)(Invoice

Due

Received

Pay(ment)?)? ?(Date)? ?(Due

Received)? ?(By)? ?( ?[;:.,- ] ?)?","","USDATE^(1[012]

0?[1-9])( ?([-/\\\. ]),? ?)([12]\d

3[01]

0?[1-9])( ?([-/\\\. ,]) ?)(\d{4}

'?\d{2})","$4-$1-$7","USDATE^(1[012]

0[1-9])([12]\d

3[01]

0[1-9])(\d{4}

'?\d{2})","$2-$1-$3","USDATE^((20\d{2})( ?([-/\\\. ,]) ?)(\d{1,2})( ?([-/\\\. ,]) ?)(\d{1,2}))","$8-$5-$2","(Jan

Mar

Sep

Oct

Nov

Dec)[a-z]*","$1","Fe(b

v)[a-z]*","Feb","A(out?

ug)[a-z]*","Aug","A(p

v)r[a-z]*","Apr","Ma(i

y)","May","Ju(ne?

in?)","Jun","Jui?ly?","Jul"

]]>

Validate words by

Date

Profile #2: Content Search - Date Numbers Only Labelled Same Separator

Select Tab

Use this…

Search Zone Size

Expand to top ½ of page

Pre-processing… Use Input Replace Regex

"111111+",""

Search settings… Content Advanced… Use Find Regex x

(?<=^

\s

\n)(Invoice

Due

Received

Pay(ment)?) ?(Date)? ?(Due

Received)? ?(By)? ?( ?[;:.,- ] ?)?((1[012]

0[1-9])([12]\d

3[01]

0[1-9])(\d{4}

'?\d{2})

([12]\d

3[01]

0[1-9])(1[012]

0[1-9])(\d{4}

'?\d{2})

([12]\d

3[01]

0?[1-9]) ?(st

nd

rd

th)?( ?([-/\\\. ,]) ?)(1[012]

0?[1-9])(\17)(\d{4}

'?\d{2})

(1[012]

0?[1-9])( ?([-/\\\. ]),? ?)([12]\d

3[01]

0?[1-9]),? ?(st

nd

rd

th)?(\23)(\d{4}

'?\d{2})

(20\d{2}( ?([-/\\\. ,]) ?)\d{1,2}(\31)\d{1,2}))(?=T

[,]

\s

\n

Skip Content… Use Skip Regex

(Due

Received

Pay)[.,;; ]* ?

Pre-validation… Use Output Replace Regex

"(?<=^

\s

\n)(Invoice

Due

Received

Pay(ment)?)? ?(Date)? ?(Due

Received)? ?(By)? ?( ?[;:.,- ] ?)?","","USDATE^(1[012]

0?[1-9])( ?([-/\\\. ]),? ?)([12]\d

3[01]

0?[1-9])( ?([-/\\\. ,]) ?)(\d{4}

'?\d{2})","$4-$1-$7","USDATE^(1[012]

0[1-9])([12]\d

3[01]

0[1-9])(\d{4}

'?\d{2})","$2-$1-$3","USDATE^((20\d{2})( ?([-/\\\. ,]) ?)(\d{1,2})( ?([-/\\\. ,]) ?)(\d{1,2}))","$8-$5-$2","(Jan

Mar

Sep

Oct

Nov

Dec)[a-z]*","$1","Fe(b

v)[a-z]*","Feb","A(out?

ug)[a-z]*","Aug","A(p

v)r[a-z]*","Apr","Ma(i

y)","May","Ju(ne?

in?)","Jun","Jui?ly?","Jul"

Validate words by

Date

Profile #3: Content Search - Date with Months Same Separator

Select Tab

Use this…

Search Zone Size

Expand to top ½ of page

Pre-processing

None

Search settings… Content Advanced… Use Find Regex

(?<=^

\s

\n)(Invoice

Due

Received

Pay(ment)?)? ?(Date)? ?(Due

Received)? ?(By)? ?( ?[;:.,- ] ?)?(([12]\d

3[01]

0?[1-9]) ?(st

nd

rd

th)?( ?([-/\\\. ,]) ?)(Jan[a-z]*

Fe(b

v)[a-z]*

Mar[a-z]*

A(p

v)r[a-z]*

Ma(i

y)

Ju(ne?

in?)

Jui?ly?

A(out?

ug)[a-z]*

Sep[a-z]*

Oct[a-z]*

Nov[a-z]*

Dec[a-z]*)(\11)(\d{4}

'?\d{2})

(Jan[a-z]*

Fe(b

v)[a-z]*

Mar[a-z]*

A(p

v)r[a-z]*

Ma(i

y)

Ju(ne?

in?)

Jui?ly?

A(out?

ug)[a-z]*

Sep[a-z]*

Oct[a-z]*

Nov[a-z]*

Dec[a-z]*)( ?([-/\\\. ]),? ?)([12]\d

3[01]

0?[1-9]),? ?(st

nd

rd

th)?(\27)(\d{4}

'?\d{2}))(?=T

[,]

\s

\n

$)

]]></ac:plain-text-body></ac:structured-macro>

Skip Content… Use Skip Regex

(Due

Received

Pay)[.,;; ]* ?

]]></ac:plain-text-body></ac:structured-macro>

Pre-validation… Use Output Replace Regex

"(?<=^

\s

\n)(Invoice

Due

Received

Pay(ment)?)? ?(Date)? ?(Due

Received)? ?(By)? ?( ?[;:.,- ] ?)?","","USDATE^(1[012]

0?[1-9])( ?([-/\\\. ]),? ?)([12]\d

3[01]

0?[1-9])( ?([-/\\\. ,]) ?)(\d{4}

'?\d{2})","$4-$1-$7","USDATE^(1[012]

0[1-9])([12]\d

3[01]

0[1-9])(\d{4}

'?\d{2})","$2-$1-$3","USDATE^((20\d{2})( ?([-/\\\. ,]) ?)(\d{1,2})( ?([-/\\\. ,]) ?)(\d{1,2}))","$8-$5-$2","(Jan

Mar

Sep

Oct

Nov

Dec)[a-z]*","$1","Fe(b

v)[a-z]*","Feb","A(out?

ug)[a-z]*","Aug","A(p

v)r[a-z]*","Apr","Ma(i

y)","May","Ju(ne?

in?)","Jun","Jui?ly?","Jul"

]]></ac:plain-text-body></ac:structured-macro>

Validate words by

Date

Profile #4: Content Search - Date Numbers Only Same Separator

Select Tab

Use this…

Search Zone Size

Expand to top ½ of page

Pre-processing… Use Input Replace Regex

"111111+",""

Search settings… Content Advanced… Use Find Regex

(?<=^

\s

\n)(Invoice

Due

Received

Pay(ment)?)? ?(Date)? ?(Due

Received)? ?(By)? ?( ?[;:.,- ] ?)?((1[012]

0[1-9])([12]\d

3[01]

0[1-9])(\d{4}

'?\d{2})

([12]\d

3[01]

0[1-9])(1[012]

0[1-9])(\d{4}

'?\d{2})

([12]\d

3[01]

0?[1-9]) ?(st

nd

rd

th)?( ?([-/\\\. ,]) ?)(1[012]

0?[1-9])(\17)(\d{4}

'?\d{2})

(1[012]

0?[1-9])( ?([-/\\\. ]),? ?)([12]\d

3[01]

0?[1-9]),? ?(st

nd

rd

th)?(\23)(\d{4}

'?\d{2})

(20\d{2}( ?([-/\\\. ,]) ?)\d{1,2}(\30)\d{1,2}))(?=T

[,]

\s

\n

$)

]]></ac:plain-text-body></ac:structured-macro>

Skip Content… Use Skip Regex

(Due

Received

Pay)[.,;; ]* ?

]]></ac:plain-text-body></ac:structured-macro>

Pre-validation… Use Output Replace Regex

"(?<=^

\s

\n)(Invoice

Due

Received

Pay(ment)?)? ?(Date)? ?(Due

Received)? ?(By)? ?( ?[;:.,- ] ?)?","","USDATE^(1[012]

0?[1-9])( ?([-/\\\. ]),? ?)([12]\d

3[01]

0?[1-9])( ?([-/\\\. ,]) ?)(\d{4}

'?\d{2})","$4-$1-$7","USDATE^(1[012]

0[1-9])([12]\d

3[01]

0[1-9])(\d{4}

'?\d{2})","$2-$1-$3","USDATE^((20\d{2})( ?([-/\\\. ,]) ?)(\d{1,2})( ?([-/\\\. ,]) ?)(\d{1,2}))","$8-$5-$2","(Jan

Mar

Sep

Oct

Nov

Dec)[a-z]*","$1","Fe(b

v)[a-z]*","Feb","A(out?

ug)[a-z]*","Aug","A(p

v)r[a-z]*","Apr","Ma(i

y)","May","Ju(ne?

in?)","Jun","Jui?ly?","Jul"

]]></ac:plain-text-body></ac:structured-macro>

Validate words by

Date

Invoice Number

Profile #1: Content Search

Select Tab

Use this…

Search Zone Size

Expand to top ½ of page

Pre-processing

None

Search settings… Content Advanced… Use Find Regex

(?<=^

\s)((inv(oice)

doc(ument)?

tax

transaction)(\.)? ?(n(a

o

br

umber)

#)?

(tax )?invoice) ?[\W]{0,4} *[A-Z0-9/-\.]\d[A-Z0-9/-\.]+(?=\s

\n

$)

(cust(omer)?

order

contract

acc(ount)?

del(ivery)?

vat

gst

our

your).? *(reg(istration)?

ref(erence)?

note)? *(number

nbr

no

#)

Pre-validation… Use Output Replace Regex

"(?<=^

\s)((inv(oice)?

doc(ument)?

tax).? *(number

nbr

no

#)

number

(tax )?invoice) ?(no)? ?((copy))? ?[:;\.-•, ]{0,4} *","","\.",""

Validate words by

Custom

[0-9]{3,}[A-Z]?)$

Profile #1a: Content Search - Alt Validation

Select Tab

Use this…

Search Zone Size

Expand to top ½ of page

Pre-processing

None

Search settings… Content Advanced…  Use Find Regex

(?<=^

\s)((inv(oice)

doc(ument)?

tax

transaction)(\.)? ?(n(a

o

br

umber)

#)?

(tax )?invoice) ?[\W]{0,4} *[A-Z0-9/-\.]\d[A-Z0-9/-\.]+(?=\s

\n

$)

Skip Content…  Use Skip Regex

(cust(omer)?

order

contract

acc(ount)?

del(ivery)?

vat

gst

our

your).? *(reg(istration)?

ref(erence)?

note)? *(number

nbr

no

#)

Pre-validation…  Use Output Replace Regex

"(?<=^

\s)((inv(oice)?

doc(ument)?

tax).? *(number

nbr

no

#)

number

(tax )?invoice) ?(no)? ?((copy))? ?[:;\.-•, ]{0,4} *","","\.",""

]

Validate words by

Custom…

[0-9]{3,}[A-Z]?)$

Profile #2: Term Search

Select Tab

Use this…

Search Zone Size

Expand to top ½ of page

Pre-processing

None

Search Settings…Search Terms…Below search term

invoice number:,invoice number,invoice no:,invoice no.,invoice #:,invoice#:,invoice:,invoice #,Tax Invoice,tax invoice (copy),bill,number,invoice

  1. Maximum words in target = 2;Stop words at gap;Minimum number of gap chars = 3

Skip Content…Skip strings

PO number,P.O. number,order number,abn number

Pre-validation

None

Validate words by

Custom…

[0-9]{3,}[A-Z]?)$

Gross Total

Profile #1: Content Adv. Search

Select Tab

Use this…

Expand to Bottom ½ of Page

Pre-processing…  Use Input Replace Regex

"(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[ \.](\d{3})[ \.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2$3$4.$5","(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[\.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2$3.$4","(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2.$3"

Search settings… Content Advanced…  Use Find Regex

(?<=^

\s

/)(tax included in)? ?((gross

inv(oice)?

total

ttl) ?(()? ?(amount

inc.?((lud(ing

es))

lusive of)? ?([ghpq](\.)?s(\.)?t(\.)?

v(\.)?a(\.)?t(\.)?)[:\.\,; ]?

value

total

GST inc\.?(lu(sive

ded))?

total ?(this tax invoice)?

total invoice)? ?())?)( ?[^\w\s]{1,4})?( ?C ?(A ?(D

N))?)? ?(\n)?( ?\$)? ?([1-9]{1}\d{0,2}([ ,]?\d{3}){0,2}

\d{1})[\.,]\d{2}(?=\,

\s

\$

$)

Skip Content…Use Skip Regex

(sub *(amount

total)

total *(g(\.)?s(\.)?t(\.)?

v(\.)?a(\.)?t(\.)?)

(g(\.)?s(\.)?t(\.)?

v(\.)?a(\.)?t(\.)?) ?\w* ? (amount

total))

amount due

Pre-validation… Use Output Replace Regex

"\s","","\n","","[\d]+$","","[a-z\s\W]*","",",(\d{2})$",".$1",",",""

Validate words by

Custom…

\d{0,2}(,\d{3}){1,3})

\d)\.\d\d$

Profile #1a: Content Adv. Search - Without decimals

Select Tab

Use this…

Search Zone Size

Expand to Bottom ½ of Page

Pre-processing… Use Input Replace Regex

"(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[ \.](\d{3})[ \.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2$3$4.$5","(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[\.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2$3.$4","(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2.$3"

Search settings… Content Advanced… Use Find Regex

(?<=^

\s

/)(tax included in)? ?((gross

inv(oice)?

total

ttl) ?(()? ?(amount

inc.?((lud(ing

es))

lusive of)? ?([ghpq](\.)?s(\.)?t(\.)?

v(\.)?a(\.)?t(\.)?)[:\.\,; ]?

value

total

GST inc\.?(lu(sive

ded))?

total ?(this tax invoice)?

total invoice)? ?())?)( ?[^\w\s]{1,4})?( ?C ?(A ?(D

N))?)? ?(\n)?( ?\$)? ?([1-9]{1}\d{0,2}([ ,]?\d{3}){0,2}

\d{1})[\.,]?\d{2}(?=\,

\s

\$

$)

Skip Content…Use Skip Regex

(sub *(amount

total)

total *(g(\.)?s(\.)?t(\.)?

v(\.)?a(\.)?t(\.)?)

(g(\.)?s(\.)?t(\.)?

v(\.)?a(\.)?t(\.)?) ?\w* ? (amount

total))

amount due

tax included in

Pre-validation… Use Output Replace Regex

"\s","","\n","","[\d]+$ ","","[a-z\s\W]*","",",(\d{2})$",".$1",",",""

Validate words by

Custom… ^\$?([1-9](\d+

\d{0,2}(,\d{3}){1,3})

\d)(\.\d\d)?$

Profile #2: Term Search Below

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing… Use Input Replace Regex

"(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[ \.](\d{3})[ \.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2$3$4.$5","(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[\.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2$3.$4","(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2.$3","Total Mount","Total Amount"

Search Settings…Search Terms…Below search term

total new charges due,invoice total,gross total,total amount,total,amount

  1. Maximum words in target = 4;Stop words at gap;Minimum number of gap chars = 3

Skip Content…Skip strings

sub total,gst total,tax total,gst,ex gst,UST

Pre-validation… Use Output Replace Regex

"\s","","\n","","[\d]+$","","[a-z\s\W]*","",",(\d{2})$",".$1",",",""

Validate words by

Currency

Profile #2a: Term Search Right

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing… Use Input Replace Regex

"(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[ \.](\d{3})[ \.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2$3$4.$5","(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[\.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2$3.$4","(?<=\s

\n

\$

^)(\d{1,3})[ \.](\d{3})[\,\.](\d{2})(?=\n

\s

$)","$1$2.$3","Total Mount","Total Amount"

Search settings…Search Terms…Right of search term

total new charges due,invoice total,gross total,total amount,total,amount

  1. Maximum words in target = 4; Stop words at gap;Minimum number of gap chars = 3

Skip Content…Skip strings

sub total,gst total,tax total,gst,ex gst,UST

Pre-validation… Use Output Replace Regex

"\s","","\n","","[\d]+$","","[a-z\s\W]*","",",(\d{2})$",".$1",",",""

Validate words by

Currency

Invoice Items - Gross

Select Tab

Use this…

Search Zone Size

Expand to Bottom ½ of Page

Pre-processing

None

Search settings…Invoice Items

Gross Total
Detection settings tax rate % = 10.00

Skip Content

None

Pre-validation

None

Validate words by

Ignore

Profile #3: Word Position - Last Currency

Select Tab

Use this…

Search Zone Size

Expand to Whole of Page

Pre-processing…  Use Input Replace Regex

"(?<=\s

\$

^)(\d{1,3})[ \.](\d{3})[ \.](\d{3})[ \.](\d{3})[\,\.](\d{2})(?=\s

$)","$1$2$3$4.$5","(?<=\s

\$

^)(\d{1,3})[ \.](\d{3})[\.](\d{3})[\,\.](\d{2})(?=\s

$)","$1$2$3.$4","(?<=\s

\$

^)(\d{1,3})[ \.](\d{3})[\,\.](\d{2})(?=\s

$)","$1$2.$3"

Search settings…Word Position

Word position Y= From bottom
Word contains= Currency

Skip Content…Use Skip Regex

(sub *(amount

total)

total *(g(\.)?s(\.)?t(\.)?

v(\.)?a(\.)?t(\.)?)

(g(\.)?s(\.)?t(\.)?

v(\.)?a(\.)?t(\.)?) ?\w* ? (amount

total))

amount due

tax included in

gst included in new charges

Pre-validation… Use Output Replace Regex

"\s","","\n","","[\d]+$","","[a-z\s\W]*","",",(\d{2})$",".$1",",",""

Validate words by

Ignore

Tax Total

Profile #1: Content Adv. Search GST

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing…  Use Input Replace Regex

"(3ST","GST","G(\.

)?S(\.

)?T(\.)?","GST","goods and services tax","GST","SALES TAX","GST","Tax","GST","GST\s","GST "

Search settings… Content Advanced…  Use Find Regex

(?<=^

\s

/)((total)? ?(GST

goods (&

and) services tax) ?(included

amount

total)? ?(included)? ?(of

amount)?)( ?[-\.\,\:\;\s]{1,4})?( ?A(UD)?)? ?(\n)?( ?\$)? ?([1-9]{1}\d{0,2}(,?\d{3}){0,2}

\d{1})[\.,]\d{2}(?=\s

\n

$)

Skip Content…Use Skip Regex

total (in

ex)c(lu(sive

ding))? (of)? ?([GHPQ](\.)?S(\.)?T(\.)?

tax)

(in

ex)c(lu(sive

ding))? (of)? ?([GHPQ](\.)?S(\.)?T(\.)?

tax)

EX Tax Total

Pre-validation… Use Output Replace Regex

"\s","","\n","","[\d]+$","","[a-z\s\W]*","",",(\d{2})$",".$1",",",""

Validate words by

Custom…

\d{0,2}(,\d{3}){1,3})

\d)\.\d\d$

Profile #2: Invoice Item

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing

None

Search settings… Invoice Items

Tax Total
Detection settings tax rate % = 10.00

Skip Content

None

Pre-validation

None

Validate words by

Currency

Profile #3: Term Search

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing… Use Input Replace Regex

None

Search Settings…Search Terms…Below, Left & Right of search term

gst included in new charges,gst total,gst value,TOTAL GST PAYABLE,TOTAL GST 10%,total gst,total tax,tax total,gst,g.s.t.,SALES TAX

  1. Maximum words in target = 2; Stop words at gap; Minimum number of gap chars = 3

Skip Content…Skip strings

including gst,inc gst,excluding gst,ex gst,freight

Pre-validation… Use Output Replace Regex

"\s","","\n","","[\d]+$","","[a-z\s\W]*","",",(\d{2})$",".$1",",",""

Validate words by

 Custom…

\d{0,2}(,\d{3}){1,3})

\d)\.\d\d$

Profile #1: Content Adv. Search Net

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing

None

Search settings… Content Advanced…  Use Find Regex

(?<=^

\s

[

(

/)((((((S(ub)?) ?-? ?)?Total

Price

Amount) ?(()? ?(((not incl?(u(ding

sive))? ?(of)? ?(tax

g\.?s\.?t\.?)))

(ex(cl?(usive

uding)?[\.-]?)? ?(of)? ?(tax

g\.?s\.?t\.?))) ?())?)

((Nett?

S(ub)?

Sales?

(I)?Ex Tax

(tax ex(cl?(usive)?[\.]?)?)) ?[ -]? ?((s)?total

amount

price))

Nett?) ?(of)? ?[ :;,\.-]{0,4} ?(\n)? ?((? ?C[\. ]?(A[\. ]?D\.?)? ?)?)?( ?\$

s)? ?([1-9]{1}\d{0,2}([\s,]?\d{3}){0,2}

\d{1}) ?[,\.] ?\d{2})(?=1

|\s

\n

\$

$)

Skip Content… Use Skip Regex

total (in

ex)c(lu(sive

ding))? (of)? ?(G(\.)?S(\.)?T(\.)?

tax)

(in

ex)c(lu(sive

ding))? (of)? ?(G(\.)?S(\.)?T(\.)?

tax)

Pre-validation… Use Output Replace Regex

"\s","","\n","","[\d]+$","","[a-z\s\W]*","",",(\d{2})$",".$1",",",""

Validate words by

Custom…

\d{0,2}(,\d{3}){1,3})

\d)\.\d\d$

]

Profile #2: Invoice Items Net

Select Tab

Use this…

Search Zone Size

Expand to Whole Page

Pre-processing

None

Search settings… Invoice Items

Net Total
Detection settings tax rate % = 10.00

Skip Content

None

Pre-validation

None

Validate words by

Ignore

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.