The present invention is directed to a method of matching a data record with a reference record. The method includes receiving a data record; searching stored reference records for a reference record that is an exact match for the received data record; and, if an exact matching reference record is not found, calculating a distance between the received data record and at least one stored reference record, and determining the at least one stored reference record to be an approximate match, if the calculated distance is less than a pre-determined threshold. The inventive method and system can be used for, but not limited to, invoice processing in an Accounts Payable system, record conciliation in a securities trading system, finding preferred bonds in a bond trading system. Approximate matching records are ranked, and the closest match, or highest ranking match, may be automatically processed, if within a predetermined threshold.