There is one absolute key to a successful organization and that's flexibility. In order for you to thrive in today's hyper-agile environment, you must have the flexibility to easily connect to or easily replace any of your current business systems - whether internal or external. If you do not, then your more nimble competitors will leap over you.
By ensuring that each system has one clearly defined method of receiving data from other systems and one clearly defined method of sending data to other systems. Whether it's your main ERP transaction application or EDI software or Web storefront or cloud-based currency conversion service, each system should be able to be easily replaced.
There are many different software programs that help in routing data between systems and many different protocols such as HTTP, FTP, SMTP, flat-files, Web services, sockets, and API's that can be used. All of these tools can be helpful in achieving systems integration, however, it is the intelligent design and implementation of these tools that gives you the critical flexibility.