@Robert Zehnder Yes, cftransaction can be wrapped around any code. It's going to start a transaction at the JDBC level and then any other JDBC commands triggered within the block will be part of the transaction.
Because of this, just make sure you don't have any slow running processes or you're blocking access to your tables. For example, if you were doing HTTP calls to a REST API inside a transaction block, that's bad. So do any heavy lifting outside of the transaction block.