Currently, to apply a payment to an invoice or vice versa creates an application entry. This is created by the application action and therefore only one application entry is created per action - regardless of how many payments are applied to one invoice, or invoices to a payment. If there is later found to be an error, a single entry cannot be removed from the application. All applied entries that were joined in the same action must be reversed. This can be incredibly labour-intensive if a mistake is made, as one has to redo the entire process.
Could the process be changed so that single/select amount of applied entries can be removed?
Perhaps the reversal entry could show a new number series, using the application entry: 'application entry no-x', to show which original application the unapplied entry was part of.
Or, an alteration to the codeunit to reverse entry-by-entry those selected for reversal.