Currently, all users who need to submit an expense must use an approval rule. This works okay for the users. However, on the backend, managing approval rules is a nightmare for a larger organization.
If a user changes positions, they now must be reconfigured. If an assistant needs to start helping other staff enter requests, they must be reconfigured to do that. When an approver leaves the organization or moves to a different department, all approval rules with their name must be updated. When a user requests to enter requests for "John Smith", it requires a research project to determine what rules they need access to. There's a ton of issues with this approach.
A better approach would be to allow the user to manually select the approver's name/email instead of an approval rule. This way there would not be any management required on the backend. Users would only need to know the name of their approvers and enter them. If they need to start submitting requests for another person, then they could do so. The only requirement would be that the approver has an account and is marked as an approver before the user could select them.
However, to make this recommendation work fully for us, we also need a static approver added to the end of all requests, because we have a dedicated person who needs to review all requests (regardless if they were included in the approval or not).