Help With Refining workflow for lowest pricing

Hey, I have really bad workflow for getting the lowest pricing of items that uses way too many conditional statements and will be overwhelming the more vendors I add.

I have my database setup like this

DataField Graphics Card
Brand = Text
Image = Image
Name = Text

DataField “Vendor” Amazon I currently have 3 of these setup like this Newegg, Amazon & Bestbuy
Amazon Price = Number
Amazon Stock = Status
Amazon Url =Text

Data field Price
Amazon = Amazon
Newegg = Newegg
ItemID = Datafield of Item
Price = Number
StockStatus = Status
Typeofitem = optionset Graphics Card, Cpu etc.
Url = Text

I scrape the data and then import it via CSV. Here is the workflows I can also share my datahelp bubble project.

I use an absurd amount of conditionals there has to be a better way? I’ve also never been able to get the inverse to work to show a price when everything is out of stock.

In the “Price” type you could have a field called BestPrice

Then when you add something you can update BestPrice to always have the lowest price. (When something goes out of stock you can have a workflow to update BestPrice)

I’d create a backend workflow for this BestPrice idea. That way you don’t hvae to do conditionals everywhere just in that one backend workflow that will check what the best price is that has availability.

(You’ll have to do a bit more like BestPriceVendorName as well so you know if It’s amazon or what not or maybe you can skip that part if you dare and just check values to see if BestPrice matches Amazon, Newegg, ect.)

If you could could you setup a minor example on my project I’m like 99% sure I know what your saying I just do best with reverse engineering things!