# Enterprise Solutions > SAP R/3 User exit and BADI difference

## sony345

exact difference between user-exit and BAPI, please don't give me the same answer where I found in online in sapimg.com, I want this for interview purpose, it should be easy to explain the interviewer.

Please help me.

Thank you,
Sony.

----------


## meghag_24

Let me answer this question  for you:   
The basic rule in SAP as far as ABAP workbench developments are concerned is "Do not modify the source code of the program"   
Since needs and requirements keep on changing from client to client and for various business scenarios, there is a need to customise the programs as per client requirement.   
For this purpose, SAP has provided numerous list of user-exits also known as enhancements, which is nothing but a program which will deal with the client additional requirement, without modifying the source code of the program. These exits are already provided by SAP. You can see the list of user-exits provided by using the transaction code SMOD.  If you cannot find an user exit which match with client requirements, then you can tell SAP to create a new user exit. 

Now BADI- Business Add in
Business Add-Ins are a new SAP enhancement technique based on ABAP Objects. They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software.

----------

