An ambient transaction isn't specifically DB-related. The TransactionScope class is member of the System.Transactions namespace so it is not specifically related to ADO.NET, which is all in the System.Data namespace. I'm fairly certain that that's where it will be most used but there is no specific relationship. Given that operations other than data access can be enlisted in an ambient transaction, outside the DAL is absolutely the appropriate place to create one. The BL is the one saying that these operations should be grouped so the BL is the one that should group them.