Budget request, cash advance, liquidation
There is currently a disconnect with the Expense app vs. actual real world practice.
In the real world, there are two types of expense normally.
Liquidation - When an expense is deducted from a previously released cash advance.
Reimbursement - When an expense comes from the employees own pocket but is marked as reimbursable expense or company expense.
Also, what normally happens is that Accounting department / Petty Cash custodian releases a cash advance after a BUDGET REQUEST. The employee will then have to liquidate a cash advance after a certain date, set in the company policy. Multiple Budget Request may occur simultaneously and multiple cash advances may be released simultaneously. Budget maybe diverted from one project, trip or purpose to another on occasion. Depending on the policy (if budget diversion is allowed) employee, will report corresponding diversion in his liquidation report.
My suggestion.
Come up with a Cash Advance module that will allow accountants / approver to release a cash advance and give them a reference number and a title and description.
Allow a submitter to select from which cash advance a liquidation must be deducted from.
Allow a submitter to submit a partial liquidation, and be able to re-submit more partial or full liquidation without the need to recall the report. Rationale - there are cases when a trip or a project goes a long way and that the submitter may need to partially liquidate a portion of a cash advance before a certain date. There are also cases when a submitter might be given a certain "revolving fund" that he may consume over a long period and liquidate as they are consumed but the total cash advance has not been consumed yet. Submission is necessary so that the consumed cash advance maybe replenished.
I know this may sound like I want to customize the app based from my needs but if you will observe, almost all industries follow these same process. So, if you'll be able to make the app as flexible as what's described here, you'll be able to capture more industries and markets.