On record level all changes (and additions) need to be marked to be able to trace the corrections easily. Marking provides the option to return back to the old situation. Be careful with deleting records because they can not be marked.

When the amount of involved data is large a correction program is quicker. The correction program is part of Maintenance. Support has to explain in detail what has to be corrected and why. When this is clear a correction program can be build. Before it goes to the customer the involved Support Analyst has to test it.

A correction program always must have a test mode and report option. Test mode is necessary to check which data is going to be corrected (not too much and not too less). A report is necessary tof check the data before and after correction. Next required to these two options is detail documentation about the working of the correct program.

Only Maintenance Engineers and Support Analysts should be allowed to run corrections programs on the customer system. Never allow a customer to do it themselves. There is too much at risk. A correction program should not be available for customers to download who do not have permission of Support or Maintenance.

Involve customers when running correction programs. When you are correcting data that is very important, like stock or financial transactions, the customer he has to understand fully what is going to be corrected and why.  It will help you in limiting discussions afterwards.

Be sure you solve the real problem and not just the symptoms at the surface. A root cause analysis is necessary and has to be carried out carefully and thoroughly. Take your time to avoid mistakes. The customer trusts he is in good hands. Do not damage that trust.