Industry guide · Custom Software

FHIR Platform Development: Why Every New Partner Becomes Another Bespoke Integration

Healthcare Interoperability Platform software visual showing webhook, arrow right left, and data records.
The short answer

$100,000 to $200,000 for a first release in 14 to 20 weeks, and $300,000 to $750,000 phased over 9 to 18 months for a full interoperability platform, is the realistic band from Digital Heroes delivery experience. Build when interoperability has become a shared dependency for several products rather than one integration, when per connection vendor pricing is shaping your roadmap, and when identity matching and terminology mapping are the actual work. Do not build if you are a single digital health product connecting to a handful of hospital electronic health records: Redox will get you live in weeks and you should spend your engineering on the product.

Why the integration layer becomes the bottleneck for everything else

The pattern is always the same and it always arrives quietly. The first integration is a one off. A health system partner sends admission, discharge and transfer messages over a virtual private network, someone writes a parser, it works. The second partner sends the same message type with a different segment layout and a local code set, so the parser grows conditionals. The third wants FHIR. The fourth is a payer sending claims in an X12 file. By the fifth, one engineer is the only person who understands why partner three's messages are dropped on Sundays, and every product roadmap conversation now begins with how long the integration will take.

What makes this specific to healthcare is that none of the parties can be told to standardise. A hospital's interface engine reflects twenty years of decisions by people who left. A payer's member identifier is not the same as the identifier on the member's card. Standards exist and are genuinely useful, but the standard describes the envelope, not the local vocabulary inside it, and the local vocabulary is where the work is.

The vendors here are good at real things. Redox removes the pain of connecting a digital health product to many hospitals. 1upHealth is strong on payer facing patient access and bulk data. InterSystems HealthShare and Rhapsody are mature engines with deep protocol support. Smile Digital Health gives you a serious FHIR server. What none of them removes is the part that is about your organisation: which patient is which, what your local codes mean, and who is allowed to see what. That work does not transfer, and it is most of the project.

Problem 1: HL7 version 2 did not go away because FHIR arrived

Any platform plan that assumes FHIR endpoints on both sides is a plan for a future that has not arrived at your partners. Real estates run admission, discharge and transfer feeds, order and result messages and scheduling messages over HL7 version 2 with local Z segments, and they will for years because replacing a working interface has no clinical benefit and real risk.

Packaged FHIR servers assume resources arriving as resources. Interface engines handle version 2 well but treat FHIR as one more output channel rather than as the data model. Neither posture is right for an organisation that has to live in both worlds for a decade.

What a custom build does: accept that ingestion is polyglot and normalisation is the product. Version 2 messages, FHIR resources, X12 transactions and flat files all land in one internal canonical model, and everything downstream reads the canonical model rather than the wire format. That single decision is what stops a new partner from being a new codebase. It also means when a partner upgrades from version 2 feeds to a FHIR API, nothing downstream changes, which is the payoff you are actually buying.

Problem 2: identity is the hard part, and the standard does not solve it

FHIR gives you a Patient resource. It does not tell you whether the Patient resource arriving from a partner is the same human as the one already in your database. In practice you get a name that may be a nickname, a date of birth that may be transposed, an address that is two moves old, a partial identifier and sometimes nothing else. Payers face the same problem in a different shape: a member whose identifier changed at renewal is a new person to most systems.

Every packaged product has a matching feature. What they do not have is your risk tolerance. A false match in a care coordination product means one patient sees another patient's medication list, which is a serious incident. A false non match means duplicate records and a care gap that nobody closes. Where you set that threshold is an organisational decision with clinical and legal consequences, and it has to be revisited as your data changes.

What a custom build does: an explicit master patient index with probabilistic matching, tunable thresholds, an automatic match band, a review queue band and a no match band, plus full lineage so any merged record can be unmerged. Unmerge capability is the one people skip and the one you will need, because merges get made in good faith on bad data and reversing them without lineage is data loss. Match rates should be monitored per source, since a partner whose match rate drops usually changed something upstream without telling you.

Problem 3: terminology mapping is where projects quietly die

The standards name the vocabularies. Laboratory results use LOINC, clinical findings use SNOMED, medications use RxNorm, diagnoses use ICD-10. What arrives from a hospital is a local laboratory code, a local medication formulary identifier and a department specific result name that has been in use since before the current laboratory information system. Mapping those to standard codes is the majority of the effort in almost every interoperability project we have delivered, and it is not a one time task because partners add tests and change formularies continuously.

Engines will hold mapping tables. What they do not give you is a mapping operation: who proposes a mapping, who approves it clinically, what happens to data that arrived before the mapping existed, and how you find the unmapped codes that are silently falling on the floor.

What a custom build does: treat mapping as a governed workflow with a versioned map, an approval step for clinically significant codes, and an unmapped code queue that is visible and worked rather than logged. Data that arrived before a mapping existed should be re-processable, which means keeping the raw payload alongside the normalised record. Storage is cheap. Re-deriving a year of results you already received is not.

Problem 4: consent and authorization at the resource level

Once data flows, the question shifts from can we get it to who may see it. That is not one rule. It varies by data category, since behavioural health, substance use treatment, reproductive health and genetic data carry different handling expectations and in some cases different legal regimes. It varies by relationship, since a treating clinician, a care manager, a researcher and a partner application are different requesters. It varies by patient choice where the patient has expressed one.

Most platforms enforce access at the connection level. Partner A may read patients. That is far too coarse for anything real, and it is the reason so many integration projects end with a data sharing agreement doing work the software should be doing.

What a custom build does: policy evaluated per request against the requester, the purpose of use, the resource category and the patient's recorded preferences, with every decision logged. SMART on FHIR scopes give you a workable framework for application authorization, but the category level segmentation and purpose of use logic is yours to build, because it encodes your legal posture and your state law exposure.

Problem 5: per connection pricing turns your roadmap into a budget conversation

Integration vendors price per connection, per partner or per volume. That is a fair commercial model and it works well when you have a few connections. It works badly when interoperability becomes a shared platform capability, because now every product decision carries a marginal integration cost and product managers start avoiding integrations that would be good for users.

The tipping point is easy to identify in your own numbers. Add up annual integration vendor spend, multiply your planned connection growth, and compare against a build plus two engineers for ongoing operation. In our experience organisations cross that line somewhere between fifteen and thirty active partner connections, earlier if volumes are high, later if the connections are simple and stable. Below the line, buying is correct. Above it, you are renting something you use as infrastructure.

What a FHIR interoperability build costs and how long it takes

A first release covering polyglot ingestion for HL7 version 2 and FHIR, a canonical model, a working master patient index with review queues, terminology mapping with an unmapped queue, and a FHIR facade for internal consumers runs $100,000 to $200,000 and ships in 14 to 20 weeks in our delivery experience. A full platform adding bulk export, payer facing patient access and provider directory endpoints, X12 claims ingestion, consent and purpose of use enforcement, partner onboarding tooling and operational monitoring runs $300,000 to $750,000 phased over 9 to 18 months.

What drives cost up here specifically: the number and diversity of source systems, since each electronic health record vendor and each version behaves differently even for the same message type. Regulatory endpoint obligations if you are a payer, because patient access and provider directory requirements have shapes you do not get to choose. Bulk data at population scale, which is an infrastructure problem rather than an interface problem. Network participation such as a trusted exchange framework connection, which brings its own conformance work. And historical backload, which is often the largest single item and the one nobody scopes.

What keeps it down: three source systems, one downstream consumer, no bulk export in phase one, and a deliberate decision to keep the existing interface engine running as a transport while the canonical model and index are built above it.

Build versus buy, and when a vendor is the right call

Buy if you are a digital health company whose product connects to hospital electronic health records and integration is a means, not the product. Redox exists precisely for that and will get you live far faster than a build. If you are a payer whose immediate need is regulatory patient access endpoints and nothing more, 1upHealth solves that problem directly. If you have an existing engine estate and a competent integration team, Rhapsody or InterSystems HealthShare with your own logic on top is a sensible path that keeps the protocol handling you already trust.

Build when interoperability is infrastructure rather than a feature. That means several internal products depend on the same data, partner count is growing and expected to keep growing, and identity, terminology and consent decisions are organisation specific enough that no vendor default is acceptable. Build also when data residency, cost at volume or the ability to reprocess historical payloads matters to you, since those are the areas where hosted products constrain you most.

Our position: almost nobody should build the transport layer. Plenty of organisations should build the canonical model, the index, the terminology governance and the consent engine, and let a vendor or an existing engine move bytes. Confusing those two decisions is the most common and most expensive mistake in this category.

How to choose a developer for healthcare interoperability work

Ask them to describe 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 run a master patient index in production.

Ask what they do with a code that arrives with no mapping. The right answer is that the raw payload is retained, the record is flagged, the code lands in a worked queue and the data becomes reprocessable once the mapping exists. Silently dropping it is common and it is how you lose a year of results.

Ask which electronic health records they have actually pulled from, and press for specifics on the interface method and the authorisation model. The gap between reading a specification and getting a real access request through a hospital's process is measured in months, and experience there is worth more than framework familiarity.

Ask who owns the code, the cloud accounts and the retained raw data, and get it in writing before kickoff. At Digital Heroes the client owns the repository from the first commit and everything runs in the client's own cloud accounts. In a category where the point is to stop renting your infrastructure, replacing one dependency with another is not progress.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. Companies in the top quartile of McKinsey's Developer Velocity Index had 2014-18 revenue growth four to five times faster than bottom-quartile peers, showing that software-building capability is a driver of business performance, not just a support function. Source: McKinsey & Company (2020) →
  2. ITIF's 2025 report documents that SMEs operate at roughly 60% of large-firm productivity in advanced economies (citing McKinsey), that CRM platforms deliver a 25-40% improvement in customer retention and a 15-30% boost in sales, and that digital advertising returns about $8 in profit per dollar spent on Google Search and Ads. Source: Information Technology and Innovation Foundation (ITIF) (2025) →
  3. Qualtrics research (Q3 2023 survey of ~28,400 consumers across 26 countries) estimated bad customer experiences put roughly $3.7 trillion in global revenue at risk annually, a 19% jump from the prior year's $3.1 trillion; 64% of customers say they will switch companies over poor service regardless of how much they like the product. Source: Qualtrics XM Institute (via Forbes) (2024) →
  4. SaaS spend averaged $4,830 per employee (up 21.9% year over year), with large enterprises (10,000+ employees) spending roughly $284M annually and running about 660 apps, while organizations wasted an average of $21M annually on unused licenses. Source: Zylo (2025) →
Eleanor W. · VP Client Services · UK & EU · London

Eleanor leads client services across the UK and EU, which means she sits between what a client asks for and what the delivery teams can realistically build. She writes about scoping, budget conversations and the questions worth asking before a build starts.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How much does it cost to build a FHIR interoperability platform?
A first release covering polyglot ingestion for HL7 version 2 and FHIR, a canonical data model, a master patient index with review queues, terminology mapping and an internal FHIR facade runs $100,000 to $200,000 over 14 to 20 weeks, based on Digital Heroes delivery experience. A full platform adding bulk export, payer facing endpoints, claims ingestion, consent enforcement and partner onboarding tooling runs $300,000 to $750,000 across 9 to 18 months. Historical backload is often the largest unscoped item.
Should we use Redox or build our own integration layer?
Redox is the right answer when integration is a means rather than your product, particularly for a digital health company connecting to many hospital electronic health records, because it will get you live in weeks. Building makes sense when interoperability has become shared infrastructure for several internal products, when partner count keeps growing, and when identity matching, terminology governance and consent policy are specific enough to your organisation that no vendor default is acceptable. Most organisations cross that line somewhere between fifteen and thirty active connections.
Do we still need HL7 version 2 support if partners are moving to FHIR?
Yes, and any plan that assumes otherwise will fail on contact with real partners. Admission, discharge and transfer feeds, orders, results and scheduling messages run over HL7 version 2 with local segments across most provider estates, and replacing a working interface carries risk with no clinical benefit. The right design accepts polyglot ingestion and normalises everything into one internal canonical model, so a partner later moving to a FHIR API changes nothing downstream.
Why is patient identity matching so difficult in healthcare integration?
Because the standard defines the Patient resource but not whether two Patient resources describe the same human. Real inbound data carries nicknames, transposed dates of birth, stale addresses and partial identifiers, and payer member identifiers often change at renewal. A false match exposes one patient's record to another, and a false non match creates a duplicate and a missed care gap, so the threshold between them is an organisational risk decision that needs review queues and a reversible merge path with full lineage.
What actually takes the most time in an interoperability project?
Terminology mapping, consistently. Standards name LOINC, SNOMED, RxNorm and ICD-10, but what arrives is a local laboratory code, a local formulary identifier and a department result name predating the current system. Mapping those is continuous work rather than a one time task, because partners add tests and change formularies. Treating it as a governed workflow with a versioned map, an approval step and a visible unmapped code queue is what keeps a project from stalling in year two.
How do you handle sensitive data categories like behavioural health in a FHIR platform?
Not with connection level permissions, which are far too coarse. Policy has to be evaluated per request against the requester, the stated purpose of use, the resource category and any patient recorded preference, with every decision logged. SMART on FHIR scopes provide a workable framework for application authorization, but category level segmentation encodes your legal posture and state law exposure, so it has to be built deliberately rather than inherited from a vendor default.
Can we keep our existing interface engine and still build a platform?
Yes, and this is usually the smart sequencing. Keep Rhapsody or InterSystems HealthShare as transport, since protocol handling and connectivity are solved and rebuilding them adds risk without value, and build the canonical model, master patient index, terminology governance and consent engine above it. Confusing the transport decision with the data model decision is the most common expensive mistake in this category, because organisations either rebuild something they did not need to or rent something they use as infrastructure.
How long does it take to onboard a new partner once the platform exists?
That is the whole point of the investment. On a bespoke integration estate a new partner is weeks of engineering, whereas on a canonical model with mapping tooling it becomes configuration plus a mapping pass, usually days for a familiar source system and a couple of weeks for an unfamiliar one. The remaining schedule risk is external: getting through the partner's own security review, access request process and test environment scheduling usually takes longer than the technical work does.
Should we retain raw inbound payloads or just the normalised data?
Retain the raw payload alongside the normalised record, without exception. Mappings arrive late, partners change formats without notice, and defects in normalisation are discovered months after the data landed, and every one of those situations is recoverable if the original message still exists and unrecoverable if it does not. Storage costs are trivial compared with asking a hospital partner to resend a year of historical results, which they will usually decline to do.
We run everything on spreadsheets and Airtable. How do we know it's time for custom software?
The reliable signals are re-typing the same data into multiple tools, one employee acting as human middleware between systems, and errors appearing in handoffs between teams. Hard limits force the issue too: Airtable's Team plan caps at 50,000 records per base, and Business costs $45 per seat per month, so a 20-person team pays about $10,800 a year for a tool it has already outgrown. When workarounds consume more hours than the tools save, the spreadsheet era is over.
We run everything on Airtable and spreadsheets. When is it time to go custom?
The switch usually makes sense when you hit one of two walls: Airtable's record caps (125,000 records per base on the Business plan) or logic the tool cannot express, like multi-step approvals with conditional pricing. There is also a simple cost signal: 25 people on Business at roughly $45 per seat per month is about $13,500 a year, forever, for a tool you are already fighting. Custom is worth it when the workflow is core to how you make money; for peripheral processes, staying on Airtable is the right call.
What does a $50,000 custom software budget actually buy?
One core workflow done properly: 10 to 15 screens, two or three user roles, a couple of integrations, an admin panel, and automated tests, delivered in roughly 12 to 14 weeks. What it does not buy is that workflow plus a mobile app plus AI features plus five more integrations. The discipline of picking the one workflow that matters is what separates $50,000 projects that ship from $50,000 projects that stall at 70% complete.
What happens if I stop paying for maintenance after launch?
Nothing breaks on day one, which is what makes it dangerous. Within 6 to 18 months, unpatched dependencies accumulate known vulnerabilities, an integrated API like Stripe ships a breaking change, and the first fix requires a developer to relearn a stale codebase at full price. Budget 15 to 20% of the build cost per year for upkeep; it is the difference between a $500 patch and a $15,000 emergency.
How many people should be working on my software project?
A typical $40,000 to $150,000 build runs on three to five people: a technical lead, one or two developers, a designer, and someone owning QA and project communication, often as overlapping part-time roles. More bodies do not make software arrive faster; past a point they slow it down with coordination overhead. The question that matters more than headcount is whether one named senior engineer is accountable for the outcome.
How do I work out whether custom software will pay for itself?
Do the arithmetic on hours before anything else: if the system saves three staff eight hours a week at a $35 loaded hourly cost, that is about $43,700 a year against, say, a $70,000 build plus 15 to 20% annual maintenance, a payback around two years. Add revenue effects only if you can name them specifically, like faster quotes or fewer abandoned orders, not as vague growth. In our delivery experience the businesses that see payback inside 24 months are the ones automating a process they already measure.
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.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?