There is a difference between processing a BDC recording and running a custom program which makes BDC calls to process screen (which might not make any checks) and then CALL TRANSACTION to commit the whole lot at the end...
There is also a difference between calling a transaction and actually using the transaction...
For BDC processing, there is also a difference between processing it online as yourself and processing it in background as a batch user...
But BDC is dead. Use BAPIs - the user does not have to have the myrias of tcode authorizations, but generally should have the application authoriztions and the start authorization for the front end application which calls the BAPI.
Cheers,
Julius