Let's say we have the following:
- Salesforce conforms to a standard and sends sales orders in format "Generic Order Format"
- WMS receives sales orders in format "WMS Order Format"
- TMS receives sales orders in format "TMS Order Format"
- TMS will update Salesforce on shipment progress in format "TMS Order update format"
- WMS will also update shipment progress to Salesforce in "WMS Order update format"
So without some sort of mapping layer, how would this work? How does Salesforce understand the formats? How does it even know what software needs the messages at what intervals? What if they are legacy systems that require a EOD batch? Insisting the other vendors change their software to conform to "Generic Order Format" is just moving the issue, and means you will never make any sales.
There's always a mapping layer, but that layer could itself be modularized and interchangeable. What I have some trouble getting is the assumption that this has to be managed by a single-vendor platform.
Well the article isn’t saying that the middleware looks after all of your enterprise mapping, it just looks after mapping to/from salesforce.
Salesforce have modularised it, and it is interchangeable - you don’t have to use mulesoft, but it’s another layer in their ecosystem. You want to manually integrate with web APIs? Sure, you have that option.
I don’t get the difference between what you are describing and what mulesoft is in this instance.
Most ERP's or similar enterprise software will have some sort of mapping layer (e.g. mulesoft) otherwise they just won't be able to roll their software out into the real world.