IP Library Granted Patent US 10,878,232
Granted Patent B2
US 10,878,232 · App. 15/238,620 · Granted Dec 29, 2020

Automated processing of receipts and invoices

Inventors: Court V Lorenzini (Mercer Island, WA); Samuel Anthony Lucente, II (San Francisco, CA); Roy Penn (Seattle, WA)
Assignee: BlinkReceipt, LLC
G06K9/00442G06Q20/047G06Q20/209G06K2209/01
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,878,232
App. No.
15/238,620
Granted
Dec 29, 2020
Kind
B2
Abstract

Systems and methods for automatic processing of receipts to capture data from the receipts are presented. Upon receiving an image of a receipt, an optical character recognition (OCR) of the receipt content embodied in the image is executed. The OCR of the receipt content results in machine-encoded text content of the receipt content embodied in the image. Tokens are generated from the machine-encoded text content and data groups are constructed according to horizontal lines of generated tokens. Potential product items are identified for at least some of the constructed data groups and the potential product items are evaluated for the at least some constructed data groups. The evaluation of the potential product items for the at least some constructed data groups identifies receipt data, such as product items and vendor information, associated with the least some constructed data groups. The identified receipt data is captured and stored with the image of the receipt in a data store.

Claims (65)

1. A computer implemented method for processing a receipt, the method comprising:

receiving an image of a receipt;

executing an optical character recognition (OCR) of the receipt content embodied in the image, wherein executing the OCR of the receipt content results in machine-encoded text content;

generating tokens from the machine-encoded text content;

aggregating the generated tokens into a plurality of data groups, wherein at least one data group of the plurality of data groups comprises a plurality of generated tokens; and

for each data group of the plurality of data groups:

identifying likely interpretations of the tokens of the data group;

identifying a plurality of likely products for the data group according to the likely interpretations of the tokens of the data group, wherein each likely product of the plurality of likely products is associated with a confidence value indicative of a likelihood that the likely product is a correct interpretation of the corresponding information of the receipt image;

determining whether the confidence scores associated with the plurality of likely products fall below a confidence threshold, and if the confidence scores fall below the confidence threshold:

providing the plurality of likely products to an evaluator;

obtaining feedback from the evaluator regarding the plurality of likely products; and

updating the confidence values associated with the plurality of likely products according to the obtained feedback; and

storing the plurality of likely products of the data group in association with the image of the receipt in a data store.

2. The computer implemented method of claim 1 , further comprising, for each generated token:

classifying the token with a token classification as to what the token likely represents;

wherein identifying the plurality of likely products for the data group comprises identifying the plurality of likely products for the data group according to the token classifications of the aggregated tokens of the data group.

3. The computer implemented method of claim 2 , wherein generating tokens from the machine-encoded text content comprises:

identifying a vendor corresponding to the receipt; and

generating tokens from the machine encoded text content according to known information corresponding to the identified vendor.

4. The computer implemented method of claim 3 , further comprising identifying a receipt image, the receipt image corresponding to a sub-image of the received image of the receipt that includes only content of the receipt.

5. The computer implemented method of claim 4 , wherein executing the OCR of the receipt content embodied in the image comprises executing the OCR of content in the receipt image.

6. The computer implemented method of claim 5 , wherein at least one data group of the plurality of data groups comprises tokens aggregated from a plurality of horizontal lines of the machine-encoded text content.

7. The computer implemented method of claim 6 , wherein classifying the token with a token classification as to what the token likely represents comprises classifying the token with a token classification in view of known information of the identified vendor.

8. The computer implemented method of claim 7 , wherein the steps of generating tokens, aggregating the generated tokens into a plurality of data groups, identifying likely interpretations of the tokens, identifying the plurality of likely products for each data group, and storing the plurality of likely products of the data group in association with the image of the receipt in a data store are conducted according to known information of the identified vendor.

9. The computer implemented method of claim 7 , further comprising, upon identifying a vendor of the receipt, re-executing the steps of executing the OCR of the receipt content, generating the tokens, aggregating the generated tokens into a plurality of data groups, identifying likely interpretations of the tokens, and identifying the plurality of likely products for each data group according to known information of the identified vendor.

10. A non-transitory computer readable medium bearing computer executable instructions which, when executed on a computing system comprising at least a processor retrieved from the medium, carry out a method for processing a receipt, the method comprising:

receiving an image of a receipt;

executing an optical character recognition (OCR) of the receipt content embodied in the image, wherein executing the OCR of the receipt content results in machine-encoded text content;

generating tokens from the machine-encoded text content;

aggregating the generated tokens into a plurality of data groups; and

for each data group of the plurality of data groups:

identifying likely interpretations of the tokens of the data group;

identifying a plurality of likely products for the data group according to the likely interpretations of the tokens of the data group, wherein each likely product of the plurality of likely products is associated with a confidence value indicative of a likelihood that the likely product is a correct interpretation of the corresponding information of the receipt image;

determining whether the confidence scores associated with the plurality of likely products fall below a confidence threshold, and if the confidence scores fall below the confidence threshold:

providing the plurality of likely products to an evaluator;

obtaining feedback from the evaluator regarding the plurality of likely products; and

updating the confidence values associated with the plurality of likely products according to the obtained feedback; and

storing the plurality of likely products of the data group in association with the image of the receipt in a data store.

11. The non-transitory computer readable medium of claim 10 , wherein generating tokens from the machine-encoded text content comprises generating tokens from the machine encoded text content according to known information corresponding to the identified vendor.

12. The non-transitory computer readable medium of claim 11 , wherein the method further comprises further comprising identifying a receipt image, the receipt image corresponding a sub-image of the received image of the receipt that includes only content of the receipt.

13. The non-transitory computer readable medium of claim 12 , wherein executing the OCR of the receipt content embodied in the image comprises executing the OCR of content in the receipt image.

14. The non-transitory computer readable medium of claim 13 , wherein the method further comprises, for each generated token:

classifying the generated token with a token classification;

wherein identifying likely interpretations of the tokens of the data group comprises identifying likely interpretations of the tokens of the data group according to the token classifications of the aggregated tokens of the data group.

15. The non-transitory computer readable medium of claim 14 , wherein classifying each generated token with a token classification comprises classifying each generated token with a token classification in view of known information of the identified vendor.

16. The non-transitory computer readable medium of claim 15 , wherein the steps of generating tokens, aggregating the generated tokens into a plurality of data groups, identifying likely interpretations of the tokens, identifying the plurality of likely products for each data group, and storing the plurality of likely products of each data group in association with the image of the receipt in a data store are conducted according to known information of the identified vendor.

17. The non-transitory computer readable medium of claim 15 , wherein the method further comprises, upon identifying a vendor of the receipt, re-executing the steps of executing the OCR of the receipt content, generating the tokens, aggregating the generated tokens into a plurality of data groups, identifying likely interpretations of the tokens, and identifying the plurality of likely products for each data group according to known information of the identified vendor.

18. A computer device for processing a receipt, the computer device comprising a processor and a memory, wherein the processor executes instructions stored in the memory as part of or in conjunction with additional components to process the receipt, the additional components comprising:

a receipt processor that, in execution and in conjunction with additional components:

receives an image of a receipt;

captures receipt data from the receipt; and

stores the captured receipt data in a data store in conjunction with the receipt;

an Optical Character Recognition (OCR) component, wherein in execution the OCR component transcribes the receipt content embodied in the image of the receipt into machine-encoded text content;

a token generator that, in execution, generates tokens from the machine-encoded text content such that each item of the machine-encoded text content is encapsulated in a generated token of the generated tokens;

a data group generator that, in execution, constructs data groups according aggregations of horizontal lines of tokens of the receipt; and

a matching component that, in execution and for each data group:

identifies likely interpretations of the tokens of the data group;

identifies a plurality of likely products for the data group according to the likely interpretations of the tokens of the data group; and

stores the plurality of likely products for the data group in association with the image of the receipt in a data store.

19. The computer device of claim 18 , wherein the matching component, in execution and for each data group, is further configured to associate a confidence value to each likely product of the plurality of likely products, each confidence value indicative of a likelihood that the likely product is a correct interpretation of the corresponding information of the receipt image.

20. The computer device of claim 19 , wherein the matching component, in execution and for each data group, is further configured to:

determine whether the confidence scores associated with the plurality of likely products fall below a confidence threshold, and if the confidence scores fall below the confidence threshold:

providing the plurality of likely products to an evaluator;

obtaining feedback from the evaluator regarding the plurality of likely products; and

updating the confidence values associated with the plurality of likely products according to the obtained feedback.

Assignments (4)
SECURITY INTEREST Recorded Mar 3, 2026
From: BLINKRECEIPT, LLC
To: CUSTOMERS BANK
Reel/Frame 073957/0238 →
SECURITY INTEREST Recorded Jan 16, 2024
From: BLINKRECEIPT, LLC
To: CUSTOMERS BANK
Reel/Frame 066131/0378 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2019
From: METABRITE, INC.
To: BLINKRECEIPT, LLC
Reel/Frame 048171/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2016
From: LORENZINI, COURT V; PENN, ROY; LUCENTE, SAMUEL ANTHONY
To: METABRITE, INC.
Reel/Frame 039459/0718 →
Continuity (1)
Related Publication 20180053045A1 · Feb 22, 2018
Cited By (1)
US 12,423,692