1. Create dynamic schemas. Some of our clients had their own dimensions that they cared about.
2. Pick the level of integration. Imagine having an out-of-the-box integration available, but then offering fully customizable solutions for one-off scenarios.
Really it comes down to those two things, which basically means "flexibility". Like I said, we spent months evaluating products, and while we found several companies claim to offer the above, no one actually did.