ediverse Explorer la plateforme

À la une PEPPOL BIS Billing 3.0 L’obligation européenne d’e-invoicing arrive : France sept 2026, Belgique janv 2026, Allemagne 2025.

MedicationRequest — détail : prescription électronique

Modélisation FHIR de l'ordonnance électronique (eRx). Cœur du workflow eRx US (NCPDP SCRIPT mapping) et FR (DMP / Mon Espace Santé). Inclut le statut/intent, la posologie structurée, la dispensation et la traçabilité prescripteur.

Intent & status workflow

intent distingue :

  • proposal — suggestion non-engageante (ex : CDSS).
  • plan — protocole théorique (avant prescription effective).
  • order — prescription effective (avec autorité légale).
  • original-order — première prescription d'une série.
  • reflex-order — déclenchée automatiquement par règle clinique.
  • filler-order — pharmacie qui crée l'order interne.
  • instance-order — instance d'un ordre cyclique.
  • option — choix parmi plusieurs.

status : active | on-hold | cancelled | completed | entered-in-error | stopped | draft | unknown.

Champs clés

ChampCardinalitéRôle
status1..1État courant.
intent1..1Voir ci-dessus.
category0..*inpatient / outpatient / community / discharge.
medication[x]1..1CodeableConcept (ATC, RxNorm, CIS) ou Reference(Medication).
subject1..1Patient / Group.
requester0..1Practitioner / PractitionerRole / Organization / Patient.
dosageInstruction0..*Posologie structurée (voir section dédiée).
dispenseRequest0..1Quantité, refills, durée.
substitution0..1Générique autorisé ou pas.

dosageInstruction structurée

R5 unifie la posologie via la datatype Dosage. Composants :

  • timing.repeat — fréquence, période, durée.
  • asNeeded[x] — boolean ou CodeableConcept (indication PRN).
  • route — SNOMED CT route d'administration.
  • method — méthode (Inject, Inhale, Apply).
  • doseAndRate.doseQuantity — dose par prise.
  • maxDosePerPeriod — Ratio dose max/période (cap journalier).
  • maxDosePerAdministration — dose max par prise.

Exemple : Doliprane 500 mg PRN douleur

json medicationrequest-doliprane.json
{
  "resourceType": "MedicationRequest",
  "id": "rx-doliprane-2026-887",
  "status": "active",
  "intent": "order",
  "category": [{
    "coding": [{
      "system": "http://terminology.hl7.org/CodeSystem/medicationrequest-admin-location",
      "code": "outpatient"
    }]
  }],
  "priority": "routine",
  "medicationCodeableConcept": {
    "coding": [{
      "system": "http://www.whocc.no/atc",
      "code": "N02BE01",
      "display": "Paracetamol"
    }, {
      "system": "http://fhir.fr/CodeSystem/cis",
      "code": "65142359",
      "display": "Doliprane 500 mg, comprime"
    }]
  },
  "subject": { "reference": "Patient/marie-durand-887" },
  "encounter": { "reference": "Encounter/cons-2026-05-19-887" },
  "authoredOn": "2026-05-19T15:30:00+02:00",
  "requester": {
    "reference": "Practitioner/dr-bernard-claude",
    "display": "Dr Claude BERNARD - RPPS 10003040506"
  },
  "courseOfTherapyType": {
    "coding": [{
      "system": "http://terminology.hl7.org/CodeSystem/medicationrequest-course-of-therapy",
      "code": "acute"
    }]
  },
  "dosageInstruction": [{
    "sequence": 1,
    "text": "1 comprime toutes les 6 heures si douleur, max 6 par jour",
    "timing": {
      "repeat": {
        "boundsDuration": { "value": 5, "unit": "d", "system": "http://unitsofmeasure.org" },
        "frequency": 4,
        "period": 1,
        "periodUnit": "d"
      }
    },
    "asNeededCodeableConcept": {
      "coding": [{ "system": "http://snomed.info/sct", "code": "22253000", "display": "Pain" }]
    },
    "route": {
      "coding": [{ "system": "http://snomed.info/sct", "code": "26643006", "display": "Oral route" }]
    },
    "doseAndRate": [{
      "doseQuantity": { "value": 500, "unit": "mg", "system": "http://unitsofmeasure.org" }
    }],
    "maxDosePerPeriod": [{
      "numerator": { "value": 3000, "unit": "mg", "system": "http://unitsofmeasure.org" },
      "denominator": { "value": 1, "unit": "d", "system": "http://unitsofmeasure.org" }
    }]
  }],
  "dispenseRequest": {
    "quantity": { "value": 20, "unit": "tablets" },
    "numberOfRepeatsAllowed": 0,
    "expectedSupplyDuration": { "value": 5, "unit": "d", "system": "http://unitsofmeasure.org" }
  },
  "substitution": {
    "allowedBoolean": true,
    "reason": {
      "coding": [{ "system": "http://terminology.hl7.org/CodeSystem/v3-ActReason", "code": "FP" }]
    }
  }
}

Pièges courants

  • Code médicament sans ATC + identifiant local — pour la France, CIS (ANSM) est obligatoire pour le DMP. ATC sert au monitoring populationnel mais pas à la dispensation.
  • intent = proposal traité comme order — confusion fréquente côté CDSS qui pousse une « proposal » et le SIH la dispense. À filtrer en amont.
  • maxDosePerPeriod absent — la dose paracétamol doit avoir un cap journalier (3 g pour adulte, 60 mg/kg pour enfant). Sans cap, alerte clinique inopérante.
  • substitution.allowedBoolean=false sans raison — la mention « non substituable » doit avoir un v3-ActReason valide.

Ressources liées