Contents
- A race condition is not a business rule
- Assign ownership to your entities' most important inputs
- When software earns its keep
- Four signs your current workflows are lying to you
- People keep their own shadow records
- Staff check three systems before answering one question
- Nobody can explain what a failed sync means
- Every change request starts with "just add a field"
- How to prepare a better integration brief
The most dangerous sentence in a software project is usually not technical. It is: "The CRM has that."
Which version? The contact record from the sales rep's last import? The account record from accounting? The spreadsheet someone updated yesterday because the CRM field did not support the exception?
Most businesses do not have one source of truth. They have several systems each holding a partial truth, with a collection of integrations trying to make the gaps look smaller than they are.
That works until a customer changes companies, a refund gets issued, a sales rep merges two records, or an order arrives with a detail nobody thought to model. Then the systems disagree, and everyone discovers that the integration was only moving information. It was never deciding which information was correct.
A race condition is not a business rule
A system owns data when the business has given it authority over that data. It is responsible for creating the record, enforcing the rules, recording changes, and resolving conflicts.
A CRM may display a customer's email address without owning it. An accounting platform may receive an invoice without owning the customer's relationship with your company. A project-management tool may show a delivery date without being allowed to change the contractual date.
Those distinctions matter because "sync everything everywhere" sounds tidy but creates a hidden question: what happens when two systems change the same field?
If the answer is "the last update wins," you have not created a business rule. You have created a race condition with a friendly name.
Assign ownership to your entities' most important inputs
Before choosing an integration tool or commissioning a custom service, list the nouns your business actually depends on:
- Customer
- Company
- Opportunity
- Order
- Invoice
- Product
- Appointment
- Support case
Then give each important field one accountable owner. Not every field needs to live in the same system. Every field does need a clear authority.
For example, a service business might decide that:
- The CRM owns the relationship, lead status, and next sales action.
- The scheduling system owns appointment time and technician assignment.
- Accounting owns invoice status and payment state.
- The internal operations app owns job status and the decisions that move work from sold to scheduled.
The goal is not a perfect diagram. It is a short list that lets a person answer, "Which system do I trust when these two screens disagree?"
When software earns its keep
Businesses often buy tools for the visible parts of the work. A CRM handles sales. Accounting handles money. A calendar handles appointments. The expensive friction lives between them.
The handoff from sold to scheduled might require checking territory, inventory, customer preferences, staffing, and a promise made in the sales conversation. No individual tool owns that entire decision. A basic integration can copy the opportunity into a job queue, but it cannot safely decide what a valid job looks like unless someone has defined the rule.
That is the point where an integration may need to become a small business system.
Not a replacement for every tool. Not a giant platform. A controlled layer that owns the workflow your business actually differentiates on, while the existing tools continue doing the jobs they already do well.
This is one reason we recommend validating the process before building the application. Run the handoff manually. Write down every exception. Track which decisions repeat and which ones are genuinely unusual. A prototype-to-production engagement can turn that evidence into a useful internal tool without pretending the first diagram is the final architecture.
Four signs your current workflows are lying to you
People keep their own shadow records
If a coordinator maintains a spreadsheet or separate file independent of your main platform, do not dismiss it as bad discipline. The spreadsheet may be compensating for a missing state, permission, or workflow. Ask what the extra record makes possible.
Staff check three systems before answering one question
That is a data-model problem showing up as a customer-service problem. If the answer requires comparing screens, the business needs a defined rule for which system speaks first and what happens when the answer is incomplete.
Nobody can explain what a failed sync means
An integration that reports only success or failure is not enough for an important workflow. The team needs to know what failed, whether the original action was accepted, whether a retry is safe, and who owns the exception.
Every change request starts with "just add a field"
Fields are often where an unclear process goes to hide. If the field changes who can act, what happens next, or which system should be updated, it is probably a workflow decision wearing a database costume.
How to prepare a better integration brief
Before a developer touches an API, write five sentences:
- This system owns these records and fields.
- That system may request these changes, but it cannot override these rules.
- When the two systems disagree, this rule wins.
- If the action fails halfway through, this is the safe retry behavior.
- A person sees and resolves exceptions here.
If the team cannot agree on those sentences, the project is not ready for implementation. That is useful information. It is much cheaper to find in a document than after six months of production data has diverged.
This is also why the build-versus-buy decision is rarely a question of software alone. As I wrote in Should You Build It or Buy It?, the strongest custom candidates are usually the workflows that are genuinely different, not the tools that merely feel annoying.
For straightforward connections between stable tools, an off-the-shelf connector may be exactly right. When the process includes branching decisions, sensitive records, multiple dependent systems, or rules that change with the business, custom integrations give you somewhere to put the logic and the audit trail.
The right design may be a connector. It may be a queue with a human review step. It may be a small Laravel application that coordinates the handoff. The technology comes after the ownership question.
Pixelworx builds practical business systems: high-converting websites, custom software, and controlled AI automation for companies that have outgrown generic tools. If your team is spending its day reconciling systems instead of serving customers, tell us where the records disagree. That disagreement is usually the most honest requirements document you have.