Invoice — Facture de soins
La facture émise par un prestataire de soins. Couvre la facturation patient (sortie d'hospitalisation), inter-établissement (transfert), ou pharmacie/labo (B2B).
Objet de la ressource
Invoice porte le détail d'une facture pour services ou produits de santé. Liée à ChargeItem (lignes), Patient/Organization (bénéficiaire), Coverage (assurance applicable). Le calcul TVA, remises, et règles tarifaires est porté par priceComponent.
Champs clés
| Champ | Type | Cardinalité | Rôle |
|---|---|---|---|
status | code | 1..1 | draft, issued, balanced, cancelled, entered-in-error. |
identifier | Identifier[] | 0..* | External identifiers. |
type | CodeableConcept | 0..1 | Invoice type / context. |
subject | Reference(Patient | Group) | 0..1 | Patient subject. |
recipient | Reference(Organization | Patient | RelatedPerson) | 0..1 | Invoice recipient (often same as subject). |
date | dateTime | 0..1 | Invoice date. |
issuer | Reference(Organization) | 0..1 | Issuing organisation. |
lineItem | BackboneElement[] | 0..* | Detail lines (item + price components). |
totalNet | Money | 0..1 | Net total (pre-tax). |
totalGross | Money | 0..1 | Gross total (incl. tax). |
Exemple JSON
Facture de 75 € pour une consultation externe :
{
"resourceType": "Invoice",
"id": "example",
"identifier": [{ "system": "http://example.org/invoices", "value": "INV-2026-0001" }],
"status": "issued",
"type": { "text": "Outpatient consultation" },
"subject": { "reference": "Patient/example" },
"recipient": { "reference": "Patient/example" },
"date": "2026-05-16",
"issuer": { "reference": "Organization/clinic-orsay" },
"lineItem": [{
"sequence": 1,
"chargeItemReference": { "reference": "ChargeItem/example" },
"priceComponent": [{
"type": "base",
"amount": { "value": 75.00, "currency": "EUR" }
}]
}],
"totalNet": { "value": 75.00, "currency": "EUR" },
"totalGross": { "value": 75.00, "currency": "EUR" }
} Pièges courants
- totalGross ≠ Σ(lineItem) : incohérence ouverte. Toujours calculer en aval.
- Coverage non liée : pas de répartition assurance / patient — l'EOB (ExplanationOfBenefit) ne peut pas être chaînée.
- currency manquant : par défaut serveur, mais à éviter en cross-border.
Ressources liées
- ChargeItem — Lignes facturables.
- Account — Compte patient agrégant les Invoices.
- Coverage — Assurance applicable.
- ExplanationOfBenefit — Détail de prise en charge.