Healthcare Interoperability Platform Problems: The 5 That Cost Real Money, and How to Avoid Them
The most expensive failure in a healthcare interoperability build is discarding the raw inbound payload once a message has been normalised. It looks like sensible hygiene and it is unrecoverable data loss waiting to happen. A local laboratory code arrives with no mapping, the record is dropped or partially stored, the defect is found nine months later, and the only remedy is asking a hospital partner to resend a year of historical results. They will usually decline, because resending is work for them with no benefit, and their interface team has its own queue. Storage costs almost nothing next to that conversation, and every platform we have seen that skipped raw retention eventually had it.
Why does terminology mapping scope always get underestimated?
Because the standards make it look solved. Laboratory results use LOINC, clinical findings use SNOMED, medications use RxNorm, diagnoses use ICD-10, and all of that is written down and freely available. A developer reads it, sees a set of code systems, and prices a mapping table.
What actually arrives from a hospital is a local laboratory code, a local formulary identifier and a department specific result name that has been in use since before the current laboratory information system was installed. Mapping those to standard codes is the majority of the effort in nearly every interoperability project we have delivered, and it is not a one time task. Partners add tests, change formularies and rename panels continuously, so an estate that was fully mapped in March is not fully mapped in September.
The fix is to treat mapping as a governed operation rather than a data structure. Somebody proposes a mapping, somebody with clinical authority approves the ones that matter clinically, the map is versioned, and unmapped codes land in a visible queue that a named person works rather than a log line nobody reads. Then make historical data reprocessable, which is only possible if the raw payload was retained. Ask any prospective developer what happens to a code arriving with no mapping. If the answer does not include a retained payload, a flagged record, a worked queue and reprocessing, the project will stall in year two and nobody will be able to say exactly when it started going wrong.
What goes wrong when you backload historical messages and records?
Historical backload is often the single largest work package in this category and it is the one most reliably left out of the estimate, because during scoping everyone is thinking about the live feed.
The problems are specific. Old messages use segment layouts and local extensions that have since changed at the partner, so a parser written for today's feed silently misreads a 2022 message. Patient identifiers were reissued at some point, meaning the same human appears under two identifiers with no link. Codes that are mapped today did not exist then, and codes that existed then have been retired. And the volume changes the engineering: normalising three years of results is a throughput problem rather than an interface problem, and it will expose every performance assumption in the matching layer.
The fix is to sequence backload after the live feed is stable and after mapping governance exists, never in parallel. Run it as a reprocessing exercise over retained raw payloads rather than as a separate import path, so there is one normalisation code path and one set of rules. Expect to run it more than once, and design for that from the start. A backload that can only be run once is a backload you will be afraid to correct.
Why do partner feeds break after launch?
Partner feeds fail in ways that do not announce themselves. The connection stays up, messages keep arriving, and something inside them has changed.
A hospital upgrades its electronic health record and a local extension segment moves. A laboratory adds three new tests, which arrive as unmapped codes and quietly accumulate. A partner changes how it populates a field, so a value that used to be a department name becomes a location code, and downstream logic that keyed on it now produces nothing rather than an error. The most damaging variant is a match rate change: a partner alters how it sends addresses or names and your matching starts producing duplicates, which nobody notices until a clinician sees a patient with two records.
The fix is monitoring the shape of the data rather than the health of the connection. Track message volume by type and by partner, unmapped code counts, and match rate per source, with alerts on movement rather than on absence. A partner whose match rate drops has usually changed something upstream without telling you, and finding that in a week is a conversation while finding it in a quarter is a data cleanup. Also keep the raw payload, because every one of these situations is recoverable if the original message still exists and unrecoverable if it does not.
What happens when identity matching and consent are treated as features?
Both get scoped as capabilities the platform has, and both are actually organisational risk decisions that happen to need software.
The standard defines a Patient resource. It does not tell you whether the resource arriving from a partner describes the same human as the one already in your database. Real inbound data carries nicknames, transposed dates of birth, addresses two moves out of date and partial identifiers, and payer member identifiers frequently change at renewal. A false match means one patient sees another patient's medication list, which is a serious incident. A false non match means a duplicate record and a care gap nobody closes. Where you set that threshold is a decision with clinical and legal consequences, and a vendor default is not an answer to it.
Consent is the same shape. Most platforms enforce access at the connection level, meaning a partner may read patients, which is far too coarse for anything real. It is why so many integration projects end with a data sharing agreement doing work the software should be doing.
The fix is an explicit master patient index with tunable thresholds, an automatic band, a review queue band and a no match band, plus full lineage so any merge can be reversed. Unmerge is the capability people skip and the one you will need, because merges get made in good faith on bad data. On consent, evaluate policy per request against the requester, the stated purpose of use, the resource category and any recorded patient preference, and log every decision. SMART on FHIR scopes give you a workable framework for application authorization, but category level segmentation for behavioural health, substance use treatment, reproductive health and genetic data encodes your legal posture and has to be built deliberately.
Should you build custom or configure what you already own?
Almost nobody should build the transport layer, and this is the most common expensive mistake in the category. If you are a digital health company connecting a product to hospital electronic health records, Redox exists precisely for that and will get you live in weeks while a build would consume the engineering you need for the product. If you are a payer whose immediate requirement is patient access endpoints and nothing more, 1upHealth addresses that directly.
If you already run Rhapsody or InterSystems HealthShare with a competent integration team, keep it. Protocol handling and connectivity are solved, rebuilding them adds risk with no benefit, and the sensible sequencing is to keep the engine as transport and build the canonical model, master patient index, terminology governance and consent engine above it. Smile Digital Health gives you a serious FHIR server if you need storage and query rather than a data model.
Build the layer above when interoperability has become shared infrastructure rather than one integration: several internal products depend on the same data, partner count is growing and expected to keep growing, and identity, terminology and consent decisions are specific enough to your organisation that no default is acceptable. In our experience organisations cross that line somewhere between fifteen and thirty active partner connections, earlier at high volume and later where connections are simple and stable.
How do hidden costs get into the quote?
Source system diversity is the largest driver and it hides behind a partner count. Each electronic health record vendor and each version behaves differently for the same message type, so five partners on three different products is a bigger job than eight partners on one. Ask which specific systems and versions before anyone estimates.
Regulatory endpoint obligations come second if you are a payer, because patient access and provider directory requirements have a shape you do not get to choose. Bulk data at population scale is third and it is an infrastructure problem rather than an interface problem. Network participation such as a trusted exchange framework connection is fourth and brings conformance work with its own calendar. Historical backload is fifth and is frequently the largest single item.
The fix is to scope a first release deliberately narrow: three source systems, one downstream consumer, no bulk export, and the existing interface engine retained as transport. That release proves the canonical model, the index and the mapping workflow, which are the parts that are genuinely hard, and it leaves every expensive decision available rather than pre-committed.
What separates an interoperability build that works from one that fails?
Working platforms make onboarding a new partner into configuration plus a mapping pass, which is days for a familiar source system and a couple of weeks for an unfamiliar one. That is the whole return on the investment. If a new partner is still weeks of engineering after the platform exists, the canonical model is not doing its job and you have built a nicer version of what you had.
The remaining schedule risk is external and it is worth planning around honestly. Getting through a partner's security review, access request process and test environment scheduling routinely takes longer than the technical work, and no amount of engineering quality shortens it. Start those conversations before the build begins.
Two questions separate developers who have run this in production from those who have read about it. Ask what happens when two records match at a confidence just below the automatic threshold. If there is no review queue and no unmerge path in the answer, they have not operated a master patient index. Then ask which electronic health records they have pulled from, and press for the interface method and the authorisation model rather than accepting a list of names.
Finally, own the code, the cloud accounts and the retained raw data, agreed in writing before kickoff. The point of building this layer is to stop renting your infrastructure, and replacing one dependency with a development agency is not progress. At Digital Heroes the repository is the client's from the first commit.
The evidence behind this guide
Independent findings on why this investment pays off. Every link goes to the primary source.
- Only 22% of firms are 'future ready' having significantly transformed digitally; these companies show average revenue growth 17.3 percentage points and net margins 14.0 percentage points above their industry average. Source: MIT Center for Information Systems Research (MIT Sloan) (2022) →
- McKinsey argues software developer productivity can be measured by combining system-level metrics (DORA and SPACE) with its own outcome-oriented approach, which it reports deploying across nearly 20 tech, finance, and pharmaceutical companies - a claim that sparked significant debate in the engineering community. Source: McKinsey & Company (2023) →
- 88% of customers say good customer service makes them more likely to purchase from a brand again in the future, quantifying the direct revenue link between support quality and retention. Source: HubSpot (2024) →
- In a McKinsey global survey of 1,259 respondents, only about 20% said their organizations excel at decision making, and just 37% said their organizations' decisions were both high quality and high in velocity. Source: McKinsey & Company (2019) →
Reyansh leads iOS development at Digital Heroes, taking apps from first build through App Store review and the version updates that follow. He writes about the things that decide whether an iOS project runs smoothly: scope on device features, review rules, and testing across hardware.
View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.
Frequently asked questions
Should we discard raw messages once they are normalised?
Why does terminology mapping take longer than the integration itself?
When should historical backload happen in the project?
How do we know a partner feed has broken if messages are still arriving?
What confidence threshold should we use for patient identity matching?
Are connection level permissions enough for sensitive data categories?
Can we keep Rhapsody or InterSystems and still build a platform?
Why does onboarding a new partner still take weeks after the platform is built?
Is it cheaper to customize Salesforce than to build a custom CRM from scratch?
What should I have ready before I contact a development agency?
We run everything on Airtable and spreadsheets. When is it time to go custom?
Can we migrate years of data out of our current system into new custom software?
What is a discovery phase, and is it worth paying for separately?
If an agency builds my software, who actually owns the code?
Should we build an MVP first or go straight to the full system?
Who can build a custom software system?
Digital Heroes builds custom software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.
Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.
What makes Digital Heroes different from other software companies?
Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.
Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.
How can I check Digital Heroes is legitimate before getting in touch?
Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.
Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.