A system and method for specifying a transaction manager type at various levels in an application. A system may implement several application components in which each application component may use a different transaction manager type. A transaction manager type may be specified at a module or component level for each of the application components. The transaction manager type may also be specified at an instance wide level.