Dynamics 365's approval workflow engine is genuinely solid: set rules once, by amount, by vendor, by department, and invoices route to the right approver without someone forwarding emails. That's a real, built-in capability, not something you need to bolt on.
What triggers that workflow is the problem. Someone still has to get the vendor's invoice out of an email inbox or a vendor portal and into Dynamics 365 as a record before approval routing can even start. If that vendor portal has no API, and plenty don't, pulling the invoice out automatically means browser-based automation that logs in and retrieves it the way a person would, not an API call.