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.

ChargeItem — L'écriture de facturation

Chaque acte technique, consultation, médicament délivré crée potentiellement un ChargeItem. La granularité la plus fine du flux de facturation FHIR, en amont d'Invoice et de Claim.

Objet de la ressource

ChargeItem représente une écriture financière unitaire pour un acte, un produit ou un service : une consultation cotée CCAM, un médicament délivré et tarifé, un dispositif médical posé, un examen biologique facturé. Chaque ChargeItem porte un code tarifaire (CCAM, NABM, NGAP, DRG en France ; CPT, HCPCS aux US) et un prix.

Les ChargeItems sont imputés sur un Account, puis agrégés dans une Invoice ou une Claim pour l'assureur.

Champs clés

ChampTypeCardinalitéRôle
identifierIdentifier[]0..*Identifiants externes (numéro d'écriture).
definitionUriuri[]0..*URL canonique du barème ou de la définition tarifaire.
definitionCanonicalcanonical(ChargeItemDefinition)[]0..*Référence vers une ChargeItemDefinition.
statuscode1..1Obligatoire. planned | billable | not-billable | aborted | billed | entered-in-error | unknown.
partOfReference(ChargeItem)[]0..*Écriture parente (regroupement).
codeCodeableConcept1..1Obligatoire. Code tarifaire.
subjectReference(Patient | Group)1..1Obligatoire. Patient concerné.
encounterReference(Encounter)0..1Encounter source.
occurrence[x]dateTime | Period | Timing0..1Quand l'acte a eu lieu.
performerBackboneElement[]0..*Exécutant(s).
performingOrganizationReference(Organization)0..1Organisation prestataire.
quantityQuantity0..1Quantité (nb d'actes, doses, volumes).
bodysiteCodeableConcept[]0..*Site anatomique.
unitPriceComponentMonetaryComponent0..1Prix unitaire (R5).
totalPriceComponentMonetaryComponent0..1Prix total (R5).
overrideReasonCodeableConcept0..1Raison de surcharge du prix par défaut.
entererReference(Practitioner | PractitionerRole | Organization | Patient | Device | RelatedPerson)0..1Qui a consigné l'écriture.
enteredDatedateTime0..1Date de consignation.
reasonCodeableConcept[]0..*Motif clinique (ICD-10, SNOMED).
serviceCodeableReference(DiagnosticReport | ImagingStudy | Immunization | MedicationAdministration | MedicationDispense | Observation | Procedure | SupplyDelivery)[]0..*Ressource clinique justifiant l'écriture.
productCodeableReference(Device | Medication | Substance)[]0..*Produit consommé.
accountReference(Account)[]0..*Compte(s) d'imputation.

Exemple JSON

Écriture pour un ECG 12 dérivations (CCAM DEQP003) sur Peter Chalmers, prix 22,39 €, imputé sur Account/example :

json chargeitem-ecg.json
{
  "resourceType": "ChargeItem",
  "id": "example",
  "identifier": [{
    "system": "http://myHospital.com/ChargeItems",
    "value": "654321"
  }],
  "definitionUri": ["http://www.kbv.de/tools/ebm/html/01520_2904360860826220813632.html"],
  "status": "billable",
  "subject": { "reference": "Patient/example" },
  "encounter": { "reference": "Encounter/example" },
  "occurrencePeriod": {
    "start": "2026-05-14T10:00:00+02:00",
    "end": "2026-05-14T10:25:00+02:00"
  },
  "performer": [{
    "function": {
      "coding": [{
        "system": "http://snomed.info/sct",
        "code": "17561000",
        "display": "Cardiologist"
      }]
    },
    "actor": { "reference": "Practitioner/example" }
  }],
  "performingOrganization": { "reference": "Organization/hospital-1" },
  "quantity": { "value": 1 },
  "bodysite": [{
    "coding": [{
      "system": "http://snomed.info/sct",
      "code": "80891009",
      "display": "Heart structure"
    }]
  }],
  "code": {
    "coding": [{
      "system": "http://www.atih.sante.fr/CCAM",
      "code": "DEQP003",
      "display": "Électrocardiographie sur au moins 12 dérivations"
    }]
  },
  "unitPriceComponent": {
    "type": "base",
    "amount": { "value": 22.39, "currency": "EUR" }
  },
  "totalPriceComponent": {
    "type": "base",
    "amount": { "value": 22.39, "currency": "EUR" }
  },
  "account": [{ "reference": "Account/example" }]
}

Pièges courants

  • Pas de code tarifaire — sans code (CCAM, CPT, NGAP…), aucune chaîne de facturation aval ne peut traiter l'écriture.
  • Pas d'account — un ChargeItem orphelin (sans compte) ne sera jamais facturé.
  • Prix divergent du barème — toujours renseigner overrideReason quand le prix unitaire diffère du barème de la ChargeItemDefinition.
  • Confusion avec MedicationDispense — la consommation médicament est une MedicationDispense ; le ChargeItem est l'écriture facturée qui la référence via product.
  • Quantité 0 ou négative — utiliser status=aborted ou not-billable au lieu de gonfler des quantités absurdes.

Ressources liées

  • Account — compte d'imputation.
  • Invoice — agrégation des ChargeItems en facture.
  • Claim — demande de remboursement assureur.
  • ChargeItemDefinition — barème de référence.
  • Coverage — couverture éventuelle.