We use the Document Understanding Invoice model along with AI fabric for processing invoices automatically, which works great. 99% of the invoices that we automatically process based on high confidence in all fields seem to be accurate and well. Recently, accounts payable shared an example invoice with an issue related to grabbing negative values.
We have a vendor that sends negative values in credit memos that have parentheses “(100.00)” around the number that is not being recognized as negative and I am unsure of how to deal with this.
Our invoices are being parsed with OCR, then put through the Machine Learning Extractor using an ML Skill that we have retrained with the Invoices Document Understanding model. This model works very well for getting accurate values on most of our vendors and invoices. We have a job in one of our Workflows that looks at the values returned from the ExtractionResults from the Machine Learning Extractor and automatically processes the invoice into our accounting system if all of the values have high confidence on all required fields. This has been working great to save everyone time in accounting. I am a bit lost on how we can change how the Invoice model interprets negative numbers though. It does recognize negative values with a minus (-), but does not with parathesis (()). This creates an issue with how we automatically process invoices extracted with high confidence because they get entered as Invoices rather than Credit Memos. I have not been able to find anything in the documentation to help.
Is there some kind of setting or easy way that I can set up the Invoice model to recognize parenthesis surrounded numbers as negative?
Thanks!
Here is an example (This is in validation station just to show the base results, but this invoice was automatically processed because each field has high confidence and values found, even though the negative value was recognized as positive):
It seems that you have trouble getting an answer to your question in the first 24 hours.
Let us give you a few hints and helpful links.
First, make sure you browsed through our Forum FAQ Beginner’s Guide. It will teach you what should be included in your topic.
You can check out some of our resources directly, see below:
Always search first. It is the best way to quickly find your answer. Check out the icon for that.
Clicking the options button will let you set more specific topic search filters, i.e. only the ones with a solution.
Topic that contains most common solutions with example project files can be found here.
Read our official documentation where you can find a lot of information and instructions about each of our products:
Meet us and our users on our Community Slack and ask your question there.
Hopefully this will let you easily find the solution/information you need. Once you have it, we would be happy if you could share your findings here and mark it as a solution. This will help other users find it in the future.
Thank you for helping us build our UiPath Community!
I’m seeing the same behavior. Did you ever come up with a solution?
The only thing I can think of is to change the field to a string and convert the value on in the RPA solution but it would sure be nice if this was just built into the product.
You can access the unformatted value in the RPA workflow (either on the ExtractionResult object or after exporting), this should contain the parentheses.
The problem is more complicated than it might look because the post-processing is done on the AI Center side and numbers with parentheses are not always negative numbers - so you have to rely on doing this in the workflow at this point.
Thanks for the explanation Stefan. I decided to change the field in the model to a string and parse it manually in the RPA workflow but I do appreciate the clarification.
That looks interesting, we ended up using Base64.ai’s UiPath Component with UiPath which automatically generates the taxonomy, ExtractionResult and Document Object Model