Question - What are user exits? What are customer exits?
Answer -
User exits and customer exits are the same thing.
Both are used to give the customer the chance to influence the outcome of a process(-step) in some way, without having to change the standard SAP software. For example: if an order is entered in the system, availability checks, credit checks etc. could be performed by the system but just before writing the order to the database, the program runs a user exit. In this user exit, your code could change some fields in the order or write an entry in a table that you created for some reason.