Every system holds part of the answer
You want to connect your CRM to accounting because a business question crosses both systems. Sales knows what was promised, project management knows what happened, and accounting knows what was billed. An integration brings those records into an agreed relationship. The work starts with deciding which source owns each fact, then maintaining the connection so somebody does not have to reconstruct that relationship by hand.
The report has become a recurring assembly job
Start with the work your team repeats to get a dependable answer:
- A monthly report requires exports, manual matching, and the same explanations every time.
- The same customer appears under different names in CRM, accounting, and project management.
- A number in a meeting cannot be reproduced from the records people can access.
- A change in one system leaves another person's working view out of date.
The systems may each be doing their own job correctly. The missing piece is often the relationship between their records: what represents the same customer, project, or transaction, and which change should travel where. People supply that relationship manually until the process becomes too difficult to keep explaining.
At the concrete contractor HDS worked with, sales pipeline and project operations data lived in disconnected systems. There was no closed loop between sales-stage activity and on-the-ground project metrics. Connecting those records made the relationship visible in daily reporting.
A dashboard can display a disagreement without resolving it
If systems assign different meanings to the same customer or project, putting their totals on one page preserves the conflict. It may make the problem easier to see, but somebody still has to decide which records belong together and which values should be trusted.
The correction belongs upstream. Name an authoritative source for each entity or field, define the matching rules, and establish how changes reach the places that need them. Authority can differ by fact: CRM might own the sales relationship while accounting owns the posted invoice. That is a design example, not a universal rule about which system must be in charge.
Maintaining those relationships is the scope of integration and middleware. Deciding which business measures people need, shaping a semantic model, and building dashboards is the next layer: reporting once the sources agree.
Some projects need both layers. Keep their deliverables clear so an attractive report does not conceal an unresolved source problem. A useful acceptance check is whether a person can follow a reported result back through the agreed relationships to its underlying records, including the cases that still require review.
Agree the records, then make the transfer dependable
Start with an inventory of the relevant entities and their owners. Decide where a customer, project, invoice, and status originate, and which changes are allowed to flow back. A connection without those decisions can distribute ambiguity faster.
Next, establish identity. Different spellings do not necessarily mean different customers, and the same name does not prove a shared identity. Prefer reliable identifiers, document the matching rules, and give unresolved matches a review path. These are business rules as much as technical ones.
The vendor interface adds its own work. In HDS's published vendor middleware engagement, APIs paginated inconsistently, encoded fields as opaque integer picklists, and returned success codes on authentication failures. The clients had to handle pagination, rate limits, and picklist resolution; middleware normalized the responses into a stable internal shape.
Those observations explain why a connection needs more verification than receiving a response. Confirm that collection is complete, field values mean what you think they mean, and a failed request is visible as a failure. Then define the operating responsibilities: who sees an exception, how a corrected record is processed, and who maintains the connection when a source changes. The scope should make those decisions reviewable before the workflow depends on them.
From sales activity to project margin
Sales pipeline and project operations data lived in disconnected systems. No closed loop between Sales-stage activity and on-the-ground project metrics.
The published contractor engagement included:
- Dynamics 365 Sales rebuild aligned to the actual sales process
- Power BI semantic model and dashboards across Sales + Operations
- Foundation ETL pipeline integrating CRM, project mgmt, and accounting
The result was a closed sales and operations data loop. Operations leadership could see pipeline-to-project-margin in one view. Read the closed loop this is drawn from for the full published engagement record.
The connection and the reporting both mattered. The ETL pipeline brought CRM, project management, and accounting into the reporting path; the sales rebuild and semantic model aligned that path with the business. This is an example of the complete problem being addressed, rather than evidence that every disconnected system needs the same stack or the same project. Your starting point is the question your own records cannot answer together.
Questions about connecting existing systems
Would an off-the-shelf connector do this?
Sometimes, yes. Check the specific entities, custom fields, update direction, and exception handling you need. A connector can be the right answer when those fit. Test it against a representative workflow before treating a successful connection screen as proof that the business problem is solved.
Do we have to replace our existing systems?
Not necessarily. Integration can preserve systems that already do their individual jobs well. The first questions are whether they expose the required records and whether the business can agree which source owns each value. Replacement becomes a separate decision if a required capability or supported access path is missing.
Can a new dashboard fix the disagreement?
A dashboard can expose disagreement, but it cannot decide which conflicting customer, status, or amount is authoritative. Resolve those ownership and matching rules upstream. Then reporting can present the agreed result and identify exceptions that still need a person to review them.
What is useful to bring to the first conversation?
Bring a business question you cannot answer today, the systems that hold its parts, and an example of where their records disagree. A description is enough to start. It helps to name the person who can settle each definition, because those decisions are part of making the connection work.
Tell us the question your systems cannot answer together.
Start with a free scoping conversation with Mike Hyams, the person who builds and supports the work.