Business system integration: a planning worksheet
A new enquiry arrives. Someone copies the details into the CRM, assigns the work and updates another tool so the next person can start. Connecting those steps can remove the retyping and keep the handoff moving.
The useful starting point is one complete handoff: what information moves, which system owns it, who acts next and how the team knows it arrived correctly. Use the example and worksheet below to turn “these tools should talk to each other” into a connection you can actually scope.
Start with the handoff you want to fix
Write one sentence: “When ___ happens in ___, the next person needs ___ in ___ so they can ___.”
For example: “When a website enquiry is submitted, the coordinator needs the request and its source in the CRM so they can assign a follow-up.” That defines an outcome. “Connect our form, CRM, email and accounts” only names tools.
Keep the first connection bounded. List the information the receiving person needs, the point at which it is ready to move and the action it should enable. Leave unrelated fields and later stages out of that first handoff.
An integration may be enough when the tools already support the work and the missing piece is information moving between them. If staff also need linked tasks, shared history or a different way to run the work, include those requirements in the scope. Our CRM decision guide helps separate configuring an existing tool, extending it and building a shared system.
Give each piece of information an owner
“The CRM is our source of truth” is too broad if the accounts system owns invoice status and a job tool owns delivery progress. Decide ownership for each field that crosses the connection.
Also separate a person from a request. The same customer can submit a second genuine request. Matching their contact should not erase that new work or create a second contact unnecessarily.
HubSpot's record-matching documentation makes a useful distinction: matching records is separate from mapping their fields. Its available matching options also depend on the app and object. Check both decisions in your actual tools rather than assuming that matching a contact tells the connection which phone number should win.
Worked example: website enquiry to assigned follow-up
Illustrative planning example, not a client result or a promise that every tool supports these rules. The coordinator and team lead below are example roles.
| Information | Owner and direction | Rule for this handoff |
|---|---|---|
| Request ID and original submission | Form to CRM | Carry the original request ID, such as REQ-104, into the CRM. A replay of that submission must not create another request. |
| Customer/contact link | CRM, using an agreed matching rule | Link the request to the right contact. Send uncertain matches to the coordinator; do not merge people on name alone. |
| Phone number | CRM after coordinator confirmation | Keep the submitted number on the request for review. A later form submission must not silently overwrite a confirmed contact number. |
| Assigned owner and next action | CRM to the team's task view | Create or update the follow-up for that request and owner. Replaying the handoff must not create a second task. |
| Follow-up status | CRM | Staff update status in the CRM. Other views reflect it; they do not independently overwrite it. |
- Information
- Request ID and original submission
- Owner and direction
- Form to CRM
- Rule for this handoff
- Carry the original request ID, such as REQ-104, into the CRM. A replay of that submission must not create another request.
- Information
- Customer/contact link
- Owner and direction
- CRM, using an agreed matching rule
- Rule for this handoff
- Link the request to the right contact. Send uncertain matches to the coordinator; do not merge people on name alone.
- Information
- Phone number
- Owner and direction
- CRM after coordinator confirmation
- Rule for this handoff
- Keep the submitted number on the request for review. A later form submission must not silently overwrite a confirmed contact number.
- Information
- Assigned owner and next action
- Owner and direction
- CRM to the team's task view
- Rule for this handoff
- Create or update the follow-up for that request and owner. Replaying the handoff must not create a second task.
- Information
- Follow-up status
- Owner and direction
- CRM
- Rule for this handoff
- Staff update status in the CRM. Other views reflect it; they do not independently overwrite it.
Now test the awkward case: a colleague changes the phone number in the CRM while a customer submits a different number through the form. Which should win?
In this example, neither change silently wins. The coordinator confirms the correct number, updates the contact and closes the exception. That is a deliberate business rule. Another business may choose a different rule, but it needs to be explicit. HubSpot's data-sync settings distinguish sync direction from conflict resolution; check what the chosen connector actually permits.
Plan the exceptions before switching it on
The first successful record proves the connection can work. It does not show what happens when the same request arrives twice, access expires or an update never reaches the other system.
Zapier's duplicate-data guidance identifies loops, multiple workflows and timeouts among possible causes. It also warns that replaying a timed-out action can create duplicates. A retry therefore needs a way to recognise work already done.
| Situation | Check and response | Example owner |
|---|---|---|
| The same submission arrives again | Find its request ID. Update or skip the already completed action according to the rule; do not create another task. | Integration maintainer |
| Two tools contain different phone numbers | Show both values and their origin. Keep the confirmed contact value until a person resolves the discrepancy. | Coordinator |
| An update is missing or incorrect | Compare expected source request IDs with destination records and important fields after the agreed delivery window. Investigate missing, repeated and mismatched records separately. | Integration maintainer, with coordinator review |
| The connection stops working | Surface the failure, give staff a manual handoff and reconcile pending requests before resuming. Check for already completed work before replaying it. | Team lead and integration maintainer |
- Situation
- The same submission arrives again
- Check and response
- Find its request ID. Update or skip the already completed action according to the rule; do not create another task.
- Example owner
- Integration maintainer
- Situation
- Two tools contain different phone numbers
- Check and response
- Show both values and their origin. Keep the confirmed contact value until a person resolves the discrepancy.
- Example owner
- Coordinator
- Situation
- An update is missing or incorrect
- Check and response
- Compare expected source request IDs with destination records and important fields after the agreed delivery window. Investigate missing, repeated and mismatched records separately.
- Example owner
- Integration maintainer, with coordinator review
- Situation
- The connection stops working
- Check and response
- Surface the failure, give staff a manual handoff and reconcile pending requests before resuming. Check for already completed work before replaying it.
- Example owner
- Team lead and integration maintainer
For a concrete platform example, Square documents that event notifications can repeat and arrive out of order. Those are Square's documented behaviours, not universal rules for every connector. Ask the same questions about the tools you plan to connect.
Copy this worksheet for your own connection
Fill this in with the person doing the work and the person who will maintain the connection. “We will decide later” identifies unfinished scope.
Information map
| Decision | Your answer |
|---|---|
| Handoff and outcome | When ___ happens in ___, ___ needs ___ in ___ so they can ___. |
| Record identity | The customer is identified by ___. Each separate request/job is identified by ___. |
| Information and access | Move these fields: ___. The receiving roles need access because ___. Leave out: ___. |
| Ownership and direction | ___ owns each field. Updates move ___. If both sides change, ___. |
| Trigger and completion | Start when ___. Expected delivery window: ___. Completion means the receiving person can ___. |
- Decision
- Handoff and outcome
- Your answer
- When ___ happens in ___, ___ needs ___ in ___ so they can ___.
- Decision
- Record identity
- Your answer
- The customer is identified by ___. Each separate request/job is identified by ___.
- Decision
- Information and access
- Your answer
- Move these fields: ___. The receiving roles need access because ___. Leave out: ___.
- Decision
- Ownership and direction
- Your answer
- ___ owns each field. Updates move ___. If both sides change, ___.
- Decision
- Trigger and completion
- Your answer
- Start when ___. Expected delivery window: ___. Completion means the receiving person can ___.
Exception plan
| Decision | Your answer |
|---|---|
| Duplicate or replay | Recognise an existing action by ___. A repeat should ___. |
| Missing or conflicting information | Hold or flag ___. ___ decides what happens next. |
| Failure and recovery | ___ sees the alert. Staff temporarily ___. Before replaying pending work, check ___. |
| Reconciliation | Compare ___ with ___ every ___. Check IDs and these fields: ___. |
| Maintenance | ___ owns monitoring, access renewal and changes when either tool changes. |
- Decision
- Duplicate or replay
- Your answer
- Recognise an existing action by ___. A repeat should ___.
- Decision
- Missing or conflicting information
- Your answer
- Hold or flag ___. ___ decides what happens next.
- Decision
- Failure and recovery
- Your answer
- ___ sees the alert. Staff temporarily ___. Before replaying pending work, check ___.
- Decision
- Reconciliation
- Your answer
- Compare ___ with ___ every ___. Check IDs and these fields: ___.
- Decision
- Maintenance
- Your answer
- ___ owns monitoring, access renewal and changes when either tool changes.
Turn the worksheet into a testable scope
Before rollout, confirm that the actual accounts, plans and APIs support the required records, fields, direction and access. A connector listing alone does not establish that fit.
Use a test environment where available and agreed sample records. Walk through a new request, an existing customer with a new request, a duplicate delivery, missing information, a conflicting edit and a recovery after interruption. For each, write the expected destination record, next action and responsible person. Check the result in the receiving tool as well as the integration's run history.
Keep the manual fallback until the team can see that the agreed cases behave correctly. Define who can pause the connection and how unfinished work will be reconciled. This makes rollout a decision based on evidence, rather than a switch everyone hopes will work.
SkillGroup scopes and builds system integrations alongside the workflows they support. Our Innovating Insurance Services case study shows linked client records, communications, tasks and group-benefits work in one workspace. See how we work for discovery, scope, build and rollout.
Bring one completed handoff map to a discovery call. We can review the tools, the repeated work and the rules the connection needs to follow.
Book a discovery call· SkillGroup