Contract — detail: legal instrument
Modelling of legal instruments applicable to healthcare: care contracts (patient-practitioner engagement), insurance policies, research agreements, NDAs, inter-organization agreements. Terms / asset / agent structure with FHIR scope clinical sharing.
Consent vs Contract
Both look similar but:
- Consent — unilateral patient authorization. No obligation in return for receiver. Revocable any time.
- Contract — bilateral or multilateral agreement. Reciprocal commitments. Revocation typically framed by terms.
A DMP consent = Consent. An engagement to teleconsult monthly with report within 48h = Contract.
Key fields
| Field | Cardinality | Role |
|---|---|---|
status | 0..1 | amended / appended / cancelled / disputed / entered-in-error / executable / executed / negotiable / offered / policy / rejected / renewed / revoked / resolved / terminated. |
contentDerivative | 0..1 | registration / retrieval / statement / shareable. |
issued | 0..1 | Issue date. |
applies | 0..1 | Validity period. |
subject | 0..* | Patient or Organization contract subjects. |
authority | 0..* | Governing authority (regulator, ministry). |
type / subType | 0..1 / 0..* | Classification (healthcare, insurance, research, employment). |
scope | 0..1 | policy / law / standard / agreement. |
term | 0..* | Clauses (offer/asset/action/group). |
signer | 0..* | Signers with role and signature. |
Healthcare use cases
- Coordinated care contract — multidisciplinary engagement patient + GP + specialists for chronic pathology.
- Clinical research contract — agreement principal investigator / promoter / sponsor.
- Health insurance policy — typically used with InsurancePlan and Coverage.
- Inter-facility data sharing agreement — formalization of regional data sharing.
- NDA (Non-Disclosure Agreement) — framing access to sensitive data for an EDC vendor.
Example: 12-month teleconsultation care contract
{
"resourceType": "Contract",
"id": "contract-telemed-marie-887",
"status": "executed",
"contentDerivative": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/contract-content-derivative",
"code": "registration"
}]
},
"issued": "2026-05-19T17:00:00+02:00",
"applies": {
"start": "2026-05-19",
"end": "2027-05-19"
},
"subject": [{ "reference": "Patient/marie-durand-887" }],
"authority": [{ "reference": "Organization/health-regulator" }],
"type": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/contract-type",
"code": "healthcare"
}]
},
"subType": [{
"coding": [{
"system": "http://example.org/contract-subtype",
"code": "telemedicine-engagement"
}]
}],
"name": "Long-term teleconsultation engagement contract",
"title": "Patient-Practitioner Doctolib contract v2026",
"subtitle": "Mutual engagement for teleconsultation follow-up - 12 months",
"alias": ["CTR-TELEMED-2026-887"],
"scope": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/contract-scope",
"code": "policy"
}]
},
"topicCodeableConcept": {
"coding": [{
"system": "http://snomed.info/sct",
"code": "44054006",
"display": "Diabetes mellitus type 2"
}]
},
"term": [{
"issued": "2026-05-19T17:00:00+02:00",
"type": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/contracttermtypecodes",
"code": "statutory"
}]
},
"text": "Patient agrees to monthly teleconsultation with Dr Bernard. Practitioner commits to provide a report within 48h via patient portal.",
"offer": {
"party": [{
"reference": [{ "reference": "Practitioner/dr-bernard-claude" }],
"role": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/contract-actorrole",
"code": "provider"
}]
}
}, {
"reference": [{ "reference": "Patient/marie-durand-887" }],
"role": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/contract-actorrole",
"code": "subscriber"
}]
}
}]
},
"asset": [{
"scope": {
"coding": [{ "system": "http://snomed.info/sct", "code": "401277000", "display": "Telemedicine consultation" }]
},
"period": [{ "start": "2026-05-19", "end": "2027-05-19" }],
"valuedItem": [{
"entityCodeableConcept": {
"coding": [{ "system": "http://www.ameli.fr/ccam", "code": "TLC" }]
},
"unitPrice": { "value": 25.00, "currency": "EUR" },
"factor": 12
}]
}]
}],
"signer": [{
"type": {
"system": "http://terminology.hl7.org/CodeSystem/contractsignertypecodes",
"code": "PATNG"
},
"party": { "reference": "Patient/marie-durand-887" },
"signature": [{
"type": [{
"system": "urn:iso-astm:E1762-95:2013",
"code": "1.2.840.10065.1.12.1.7",
"display": "Consent Signature"
}],
"when": "2026-05-19T17:00:00+02:00",
"who": { "reference": "Patient/marie-durand-887" }
}]
}]
} Common pitfalls
- Maturity Level 1 — Contract is still Trial Use. National profiles are not all aligned. Test interoperability before prod.
- No signer — a contract without signers is unenforceable. Always document the signature (with resolved Signature).
- term.text + structured — always include human-readable text in addition to asset/offer structures. Essential for legal audit.
- Confusion with Permission — Permission is lighter for dynamic authorizations at access time. Contract is heavy for formal agreements.