During the last couple of years, I have integrated data with Dynamics Ax both with SSIS and BizTalk. A common question I'm asked is what is the difference when every thing is possible in SSIS why do we need BizTalk or what does BizTalk provide different from SSIS. So My answer to this question is something like:
Everything that BizTalk provides can be implemented in SSIS. But the major difference is batch processing. Usually SSIS package are used to migrate large set of data or dataset. BizTalk provide the operations to be perform on one message at time or real time processing. Because everything in BizTalk is XML so BizTalk is very slow on large set of data. BizTalk provides large number of adapters, while In SSIS you have to use direct connection by Oldb, or Sql db to communicate with different database and depend on OlDb connections. In BizTalk large number of Adapter provided to communicate which may or may not be depend on OlDB connection. Build in Tracking system (BAM) and its display on BAM portal is also big advantage on SSIS. For this purpose you have to make a custom tracking system in SSIS which require a lot of coding. Third advantage of BizTalk over SSIS is BRE. Business rule engine. BRE provide the condition whose value can be changed and complete follow of BizTalk application. These BRE roles can be used in multiple biztalk application while these functionality can be achieved on config files in SSIS.
In conclusion, when we required less data integration/migration and require complex decision making we used BizTalk. For example we have to implement complex work flow on single record. BizTalk application also used route data, read from one location, transform it and drop on other location. A simple example of this transactional data, when one transaction is occur in one system and its impact or integration will required on other system we will use BizTalk. BizTalk is a rapid development tool as compare to SSIS.
When we have a large sum of data, we require less complexity and requirement of integrated systems are based on Same technology then we have to use SSIS. Usually SSIS is used to migrate or integrate the non-transaction data or step up data. The delay of migration and integration possible or example Batch processing. SSIS is built for ETL process, it is not rapid integration tool.