Skip to main content

Escenario

Un consultorio APS necesita reportar consultas ambulatorias hacia el bus MINSAL. El error más frecuente al migrar de un HIS legacy es usar status: "complete" (no es código FHIR®, lo emite el HIS) y class.system con un CodeSystem propio del proveedor. Inspect marca ambos con cl-enc-04 y cl-enc-05. Los dos son obstáculo seguro para FONASA y el bus MINSAL.

Payload válido

Encounter ambulatorio finalizado

Cómo validarlo

Resultado esperado

Cuando el status está dentro del ValueSet encounter-status y class.system es v3-ActCode, valid es true e issues[] viene vacío. Errores típicos cuando algo falla:
  • cl-enc-04: status fuera del ValueSet encounter-status. Caso típico: "complete" que emite un HIS legacy. El valor correcto es "finished".
  • cl-enc-05: class.system no canónico. Caso típico: un CodeSystem propio del proveedor (https://miempresa.cl/encounter-types). El valor correcto es http://terminology.hl7.org/CodeSystem/v3-ActCode con código AMB · IMP · EMER · HH.

Tips

Códigos v3-ActCode más usados en Chile:
  • AMB: ambulatorio (consulta APS, especialidad ambulatoria).
  • IMP: internado (hospitalización).
  • EMER: urgencia (servicio de urgencia).
  • HH: domiciliario (atención en domicilio).
period.start y period.end en ISO-8601 con offset Chile (-04:00 horario estándar abril–septiembre, -03:00 horario de verano octubre–marzo). UTC también se acepta, pero la trazabilidad clínica suele leerse en hora local.
reasonCode con CIE-10 (http://hl7.org/fhir/sid/icd-10) es el sistema esperado por FONASA. SNOMED CT funciona en EHR modernos pero el bus MINSAL agrega CIE-10.
Para un Encounter que aún no terminó, usar status: "in-progress" y omitir period.end. Inspect no exige period.end mientras status sea "in-progress" o "arrived".
Inspect valida este Encounter contra el perfil R4 base más las reglas cl-enc-04 y cl-enc-05. Si class.system no es v3-ActCode, devuelve cl-enc-05 con quickFix (replacement: { system: ".../v3-ActCode", code: "AMB" }).