
We're trying to utilize AI for our invoice processing. AI recognizes the vendor names as printed on the invoice fairly well. The problem is the name on the invoice may not match the vendor name in our AP system.
For example the invoice might just have "Business Name", but in our AP system the vendor is in there as "Business Name, LLC" or "The Business Name, LLC". So it's not a direct match.
So I'm trying to come up with a way for our internal vendor name (and vendor number) to get matched up with what AI recognizes.
I can do a conditional statement that takes the AI result and says that equals our vendor name, but there would be a lot of those statements.
I thought about doing a sharepoint list lookup where it takes the AI response and checks it against a sharepoint list to see if any AI Item contains what is in the sharepoint list item. The problem with that is it looks for a whole match and not a partial match.
Is there a better way to solve this problem, or am I stuck with a whole bunch of conditional statements?
Hi @automateem15,
Thank you for the interesting question.
Depending on where you are storing the data, you might be able to use an operator like 'contains' or 'substring' when querying for the data to look for a match.
For example, on SharePoint, with the Get items action you can retreive items from a list that contain a certain text by using the substringof OData operator. Here is an example. Given a SharePoint list like this:
Assuming AI Builder extracts the vendor name as "Business Name". You could have the following flow configured with the following Filter Query, and the item returned by the SharePoint Get items action would just be the first item: "The Business Name, LLC"
Would this approach work for you?