Skip to content

Core Components

Patient

Every healthcare journey begins with a person - the patient. This component captures who they are, where they live, and important personal information that helps healthcare providers give them the best care possible.

Think of the patient record as the foundation of everything else. It's like the cover page of a medical file that tells you who this person is, how to contact them, and important details about their identity and background.

Data Model

FieldTypeRequiredDescription
codestringYESUnique identifier for the patient in the system
surnamestringYESPatient's family name
namestringYESPatient's given name
sexstringYESPatient's biological sex
birthdatedateYESPatient's date of birth
phonestringYESPatient's contact number
nationalitystringYESPatient's nationality
disabilitiesarray of stringsList of disabilities, if applicable
occupationstringPatient's job or profession (nullable)
marital_statusstringYESPatient's marital status (nullable)
photosarray of stringsURLs to patient photos (nullable)
addressobjectYESPatient's address information (see Address model)
identificationsarray of objectsPatient identification documents (see Identification model)
death_datedatetimeDate and time of death, if applicable
spidstringYESPatient's Social Protection ID
created_atdatetimeYESRecord creation timestamp
updated_atdatetimeYESRecord the last update timestamp

Address Model

Cambodia uses a specific address structure based on NCDD standards:

FieldTypeRequiredDescription
provinceobjectYESInformation about the province
province.codestringYESProvince code from NCDD standard
province.namestringYESProvince's name in Khmer
districtobjectYESInformation about the district
district.codestringYESDistrict code from NCDD standard
district.namestringYESDistrict name in Khmer
communeobjectYESInformation about the commune
commune.codestringYESCommune code from NCDD standard
commune.namestringYESCommune name in Khmer
villageobjectYESInformation about the village
village.codestringYESVillage code from NCDD standard
village.namestringYESVillage name in Khmer
house_numberstringHouse number (nullable)
street_numberstringStreet number (nullable)
locationstringAdditional location details (nullable)

Identification Model

FieldTypeRequiredDescription
patient_codestringYESReference to patient unique code
card_codestringYESIdentification number
card_typestringYESType of identification document

Example

json
{  
  "patient": {  
    "code": "P25003877",  
    "surname": "សៅ",  
    "name": "សុវ៉ាន់",  
    "sex": "M",  
    "birthdate": "1980-05-15",  
    "phone": "+855 12 345 678",
    "nationality": "Cambodian",  
    "disabilities": ["Hearing impairment"],  
    "occupation": "Teacher",  
    "marital_status": "Married",  
    "photos": ["https://hospital.example/photos/PT20250317001_1.jpg"],  
    "address": {  
      "province": {  
        "code": "12",  
        "name": "Phnom Penh"  
      },  
      "district": {  
        "code": "1201",  
        "name": "Chamkar Mon"  
      },  
      "commune": {  
        "code": "120101",  
        "name": "Tonle Bassac"  
      },  
      "village": {  
        "code": "12010101",  
        "name": "Phsar Deum Thkov"  
      },  
      "house_number": "45",  
      "street_number": "302",  
      "location": "Near Central Market"  
    },  
    "identifications": [  
      {  
        "patient_code": "P25003877",  
        "card_code": "ID123456789",  
        "card_type": "National ID"  
      }  
    ],  
    "death_date": null,
    "spid": "250317001",  
    "created_at": "2025-03-17T08:30:00.000+07:00",  
    "updated_at": "2025-03-17T08:30:00.000+07:00"  
  }  
}

Visit

A visit is like opening a new chapter in the patient's medical story. It represents their entire stay at the hospital - from the moment they walk in (or are brought in) until they leave.

Every visit has a beginning and an end, and everything that happens in between gets connected to this visit. Think of it as the "container" that holds all the medical care, tests, treatments, and interactions that occur during this particular trip to the hospital.

Data Model

FieldTypeRequiredDescription
health_facility_codestringYESUnique identifier for the healthcare facility, issued by NPCA
patient_codestringYESReference to the patient's unique code
codestringYESUnique identifier for the visit
admission_typestringYESHow a patient is admitted to a healthcare facility
discharge_typestringYESHow a patient is discharged from a healthcare facility
visit_outcomestringYESThe patient's condition at the end of the visit
visit_typestringYESThe type or purpose of a patient's visit (IPD or OPD)
admitted_atdatetimeYESDate and time of admission
discharged_atdatetimeYESDate and time of discharge
followup_atdatetimeWhen the patient is scheduled to return for follow-up care
created_atdatetimeYESRecord creation timestamp
updated_atdatetimeYESRecord the last update timestamp

Example

json
{  
  "visits": [  
    {  
      "health_facility_code": "121020",  
      "patient_code": "P25003877",  
      "code": "V420650",  
      "admission_type": "Walk-in",  
      "discharge_type": "Authorized",  
      "visit_outcome": "Improved",  
      "visit_type": "OPD",  
      "admitted_at": "2025-03-17T09:30:00.000+07:00",  
      "discharged_at": "2025-03-17T10:45:00.000+07:00",  
      "followup_at": "2025-03-24T09:00:00.000+07:00",  
      "created_at": "2025-03-17T09:30:00.000+07:00",  
      "updated_at": "2025-03-17T10:45:00.000+07:00"  
    }
  ]  
}

Triage

Triage is like the "first impression" of the patient's visit. When someone arrives at the hospital, a nurse or healthcare worker quickly assesses them to understand: How urgent is their condition? What are their main complaints? What are their basic vital measurements?

This is where the patient's story begins to unfold. The triage nurse asks "What brings you here today?" and records the patient's chief complaint - the main reason they came to the hospital.

Data Model

FieldTypeRequiredDescription
patient_codestringYESReference to patient's unique code
visit_codestringYESReference to visit the unique code
encounter_codestringYESReference to encounter a unique code (nullable)
codestringYESUnique identifier for the triage
chief_complainttextYESPrimary symptom or problem reported by the patient at the time of the visit
heightnumberYESValue of height of the patient in CM
weightnumberYESValue of weight of the patient in KG
recorded_atdatetimeYESDate and time triage was recorded
recorded_bystringYESName of the healthcare provider who recorded the triage
titlestringPosition of the healthcare provider

Example

json
{  
  "triages": [{  
    "visit_code": "V420650",
    "encounter_code": "P25003877",  
    "code": "TR250317",  
    "chief_complaint": "Periodic fever with chills for 3 days",  
    "height": 170,  
    "weight": 65,  
    "recorded_at": "2025-03-17T09:32:00.000+07:00",  
    "recorded_by": "Khun Srey Mom",
    "title": "Nurse"
  }]  
}

Vital Signs

Vital signs are like taking a snapshot of how the patient's body is functioning right now. These are the basic measurements that tell healthcare providers if the patient is stable, in distress, or needs immediate attention.

Think of vital signs as the body's "dashboard" - just like a car's dashboard shows speed, fuel level, and engine temperature, vital signs show the body's key functions: heart rate, blood pressure, temperature, breathing rate, and oxygen levels.

Normal Ranges Reference

Vital SignNormal RangeUnits
Temperature36.5–37.3 °C°C
Pulse (Heart Rate)60–100 beats per minute/mn
Respiratory Rate12–20 breaths per minute/mn
Blood PressureSystolic: 90–120 mmHg, Diastolic: 60–80 mmHgmmHg
Oxygen Saturation (SpO₂)95–100%%
Random Glucose Rapid TestRandom: < 140 mg/dL, Fasting: 70–99 mg/dLmg/dL

Data Model

FieldTypeRequiredDescription
encounter_codestringYESReference to encounter a unique code
recorded_atdatetimeYESDate and time vital signs were recorded
recorded_bystringYESName of healthcare provider who recorded the vital signs
titlestringYESDoctor or nurse
observationsarray of objectsYESArray of vital sign measurements

Observation in Vital Sign

FieldTypeRequiredDescription
namestringYESName of the vital sign
valuenumericYESMeasured value

Example

json
{  
  "vital_signs": [  
    {
      "encounter_code": "E417001",  
      "recorded_at": "2025-03-17T09:40:00.000+07:00",  
      "recorded_by": "Khun Srey Mom",
      "title": "Nurse",  
      "observations": [  
        {  
          "name": "Systolic Blood Pressure",  
          "value": 135
        },  
        {  
          "name": "Diastolic Blood Pressure",  
          "value": 85
        },  
        {  
          "name": "Heart Rate",  
          "value": 92
        },  
        {  
          "name": "Temperature",  
          "value": 38.7
        },  
        {  
          "name": "Blood Oxygen",  
          "value": 97
        }
      ]  
    }  
  ]  
}

Medical History

Medical history is like reading the previous chapters of the patient's health story. Before treating someone, doctors need to know: What health problems have they had before? What medications are they taking? Are they allergic to anything? What runs in their family?

This information helps doctors understand the full picture and make better decisions about treatment.

History Categories

CategoryWhat It Includes
Current IllnessWhat's happening now - symptoms, when they started, what makes them better or worse
Current MedicationsWhat medicines the patient is taking right now
Past Medical HistoryPrevious illnesses, hospitalizations, chronic conditions
Past Surgical HistoryAny surgeries the patient has had
AllergiesThings the patient is allergic to (foods, medicines, etc.)
ImmunizationsVaccinations the patient has received
Family HistoryHealth problems that run in the family
Social HistoryLifestyle factors like smoking, drinking, occupation

Data Model

FieldTypeRequiredDescription
patient_codestringYESReference to the patient unique code
visit_codestringYESReference to visit the unique code
encounter_codetextYESReference to encounter a unique code
namestringYESName of the condition
valuearray of stringsYESArray of value in string of the condition

Example

json
{  
  "medical_histories": [  
    {  
      "patient_code": "P25003877",  
      "visit_code": "V420650",  
      "encounter_code": "E417001",  
      "name": "Current Illness History",  
      "value": [  
        "Patient reports high fever with chills occurring every 48 hours, accompanied by headache and joint pain. Symptoms started 3 days ago after returning from a trip to Mondulkiri province."  
      ]  
    },  
    {  
      "patient_code": "P25003877",  
      "visit_code": "V420650",  
      "encounter_code": "E417001",  
      "name": "Allergies",  
      "value": [  
        "Penicillin",
        "Shellfish"
      ]  
    },  
    {  
      "patient_code": "P25003877",  
      "visit_code": "V420650",  
      "encounter_code": "E417001",  
      "name": "Family History",  
      "value": [  
        "Mother with diabetes",  
        "Father with hypertension"  
      ]  
    }
  ]  
}

Physical Examination

Physical examination is where the doctor becomes a detective, using their senses to gather clues about what's wrong with the patient. They look, listen, feel, and sometimes smell to understand what's happening inside the patient's body.

This is hands-on medicine - the doctor examines different parts of the body systematically, from head to toe, looking for signs of illness or injury.

Examination Areas

Body SystemWhat Doctors Check
General AppearanceHow the patient looks overall - alert, distressed, well-nourished
Head & NeckEyes, ears, nose, throat, neck lymph nodes
Heart & LungsHeart sounds, breathing sounds, chest movement
AbdomenBelly tenderness, organ size, bowel sounds
SkinRashes, color changes, wounds
Nervous SystemReflexes, coordination, mental status
Muscles & JointsStrength, movement, swelling

Data Model

FieldTypeRequiredDescription
patient_codestringYESReference to patient unique code
visit_codestringYESReference to visit unique code
encounter_codestringReference to encounter unique code
namestringYESName for the physical assessment point
valuevariousYESValue of the assessment result
value_typestringYESType of Value
value_unitstringMeasurement unit represent the value

Example

json
{  
  "physical_examinations": [  
    {  
      "patient_code": "P25003877",  
      "visit_code": "V420650",  
      "encounter_code": "E417001",  
      "name": "General Appearance",  
      "value": "Patient appears ill and tired, with intermittent shivering",  
      "value_type": "text",  
      "value_unit": null  
    },  
    {  
      "patient_code": "P25003877",  
      "visit_code": "V420650",  
      "encounter_code": "E417001",  
      "name": "Skin",  
      "value": "Warm to touch, slightly yellow color (jaundiced), no rash visible",  
      "value_type": "text",  
      "value_unit": null  
    }
  ]  
}

Laboratories

Laboratory tests are like sending samples to a detective lab to uncover hidden clues about the patient's condition. Blood, urine, and other samples are analyzed to reveal information that can't be seen with the naked eye.

These tests can confirm what doctors suspect, rule out certain conditions, or sometimes reveal unexpected findings that change the entire treatment plan.

Data Model

FieldTypeRequiredDescription
patient_codestringYESReference to patient unique code
visit_codestringYESReference to visit unique code
encounter_codestringReference to encounter unique code
request_codestringYESUnique code represents the lab request
requested_atdatetimeYESDate and time laboratory were requested
requested_bystringYESName of doctor who requested the laboratory
titlestringName of doctor
resultsarray of objectsYESArray of laboratory objects

Result Model

FieldTypeRequiredDescription
namestringYESThe item of lab result
categorystringYESCategory that lab result fall under (e.g. biochemistry, hematology)
valuevariousYESMeasured value
value_typestringYESType of value
value_unitstringYESUnit of measurement
reference_rangestringYESNormal range for the measurement
interpretationstringYESInterpretation of the result
verified_atdatetimeYESDate and time of doctor who verified
verified_bystringYESName of healthcare provider who verified
recorded_atdatetimeYESDate and time of doctor who recorded
recorded_bystringYESName of healthcare provider who recorded

Example

json
{  
  "laboratories": [  
    {  
      "patient_code": "P25003877",  
      "visit_code": "V420650",  
      "encounter_code": "E417001",
      "request_code": "L7001",  
      "requested_at": "2025-03-17T10:30:00.000+07:00",  
      "requested_by": "Dr. Chhun Sovannarith",  
      "title": "Doctor",  
      "results": [  
        {  
          "name": "Malaria Blood Smear",  
          "category": "Parasitology",  
          "value": "Positive for P. falciparum",  
          "value_type": "string",  
          "value_unit": null,  
          "reference_range": "Negative",  
          "interpretation": "Positive - Malaria parasites found",  
          "verified_by": "Dr. Meas Chenda",  
          "recorded_by": "Lab Tech Chandaravuth"  
        },  
        {  
          "name": "Hemoglobin",  
          "category": "Hematology",  
          "value": 11.2,  
          "value_type": "float",  
          "value_unit": "g/dL",  
          "reference_range": "13.5-17.5",  
          "interpretation": "Low - Below normal range",  
          "verified_by": "Dr. Meas Chenda",  
          "recorded_by": "Lab Tech Chandaravuth"  
        }  
      ]  
    }  
  ]  
}

Imageries

Imageries represent medical imaging studies performed on a patient, such as X-rays, ultrasounds, CT scans, and MRIs. These diagnostic tools allow healthcare providers to visualize internal structures of the body to aid in diagnosis and treatment planning.

Data Model

FieldTypeRequiredDescription
patient_codestringYESReference to patient's unique code
visit_codestringYESReference to visit the unique code
encounter_codestringReference to encounter a unique code
request_codestringYESUnique code represents the lab request
requested_atdatetimeYESDate and time of the imagery requested
requested_bystringYESName of the healthcare provider who requested the imagery
titlestringYESName of doctor
resultsarray of objectsYESArray of imagery objects

Result Model

FieldTypeRequiredDescription
namestringYESThe item of the imaging result
categorystringYESCategory that imaging falls under (e.g. radiology, … )
imagesarray of stringsYESMeasured value
resultstringYESFull result of the imagery
conclusionstringYESSummary of the result
verified_atdatetimeYESDate and time that the sample was verified
verified_bystringYESName of healthcare provider who verified the sample
recorded_atdatetimeYESDate and time results were recorded
recorded_bystringYESName of the healthcare provider who recorded the result

Diagnosis

Diagnosis is the moment when all the pieces of the puzzle come together. After listening to the patient, examining them, and reviewing test results, the doctor determines what's wrong. This is the "answer" to the medical mystery.

Sometimes there's one clear diagnosis, sometimes there are multiple conditions, and sometimes doctors need to consider several possibilities (differential diagnosis).

Diagnosis Types

TypeWhen It's Used
PrimaryThe main reason for this hospital visit
SecondaryOther conditions that also need attention
DifferentialPossible diagnoses being considered
AdmissionInitial diagnosis when patient arrives
DischargeFinal diagnosis when patient leaves

Data Model

FieldTypeRequiredDescription
patient_codestringYESReference to patient unique code
visit_codestringYESReference to visit unique code
encounter_codestringReference to encounter unique code
diagnosis_typestringYESName of diagnosis type as above table
diagnosis_codestringYESICD-10 code for the diagnosis
diagnosis_namestringYESName of the diagnosis
diagnosis_descriptionstringDetailed description of the diagnosis
diagnosed_atdatetimeYESDate and time of diagnosis
diagnosed_bystringYESName of healthcare provider who made the diagnosis
titlestringPosition of the healthcare provider (doctor or nurse)

Example

json
{  
  "diagnoses": [  
    {  
      "patient_code": "P25003877",  
      "visit_code": "V420650",  
      "encounter_code": "E317001",  
      "diagnosis_type": "Primary",  
      "diagnosis_code": "B50.9",  
      "diagnosis_name": "Plasmodium falciparum malaria, unspecified",  
      "diagnosis_description": "Malaria caused by P. falciparum parasites, confirmed by blood smear",  
      "diagnosed_at": "2025-03-17T10:05:00.000+07:00",  
      "diagnosed_by": "Dr. Chhun Sovannarith"  
    }  
  ]  
}

SOAP

SOAP (Subjective, Objective, Assessment, Plan) is a structured documentation method used by healthcare providers to organize clinical notes during patient encounters.

Data Model

FieldTypeRequiredDescription
encounter_codestringYESReference to encounter unique code
subjectivetextPatient's reported symptoms and feelings
objectivetextProvider's objective
assessmenttextProvider's assessment of the patient situation
evaluationtextProvider's summary or evaluation regarding the assessment
plantextPlan for treatment or next steps
codestringUnique identifier for the SOAPs
recorded_atdatetimeDate and time SOAPs was written
recorded_bystringName of healthcare provider who wrote the SOAPs
titlestringPosition of the healthcare provider (doctor or nurse)

Prescriptions

Updated on 2026-03-06

Prescriptions are the doctor's treatment plan written down as specific medications. After diagnosing the problem, the doctor decides which medicines will help the patient get better.

Some medications are given at the hospital during treatment, while others are prescribed for the patient to take at home. Each prescription includes detailed instructions on how much to take, when to take it, and for how long.

NOTE

  • Medication dispensed during hospitalization: Requires encounter_code linking to progress_notes, outpatient, inpatient, surgery, or emergency
  • Medication dispensed for home use: Requires encounter_code to be null

Data Model

FieldTypeRequiredDescription
patient_codestringYESReference to the patient's unique code
visit_codestringYESReference to visit the unique code
encounter_codestringReference to encounter a unique code
codestringYESUnique identifier for the prescription
prescribed_atdatetimeYESDate and time the prescription was written
prescribed_bystringYESName of healthcare provider who wrote the prescription
titlestringPosition, whether doctor or nurse, or else
medicationsarray of objectsYESArray of medications is prescribed

Medication Model

FieldTypeRequiredDescription
medicine_codestringYESUnique identifier for the medication
medicine_namestringYESName of the medicine
strengthstringStrength of the medicine
methodstringYESMethod of administration
unitstringYESUnit of measurement
morningnumericMorning dose
afternoonnumericAfternoon dose
eveningnumericEvening dose
nightnumericNight dose
daysintegerYESDuration of prescription in days
intervalstringInterval between doses
notetextAdditional notes or instructions

NOTE

  • If no interval is provided, morning, afternoon, evening, night should be presented
  • strength is required if it is not presented in medicine_name

Dispense Model

FieldTypeRequiredDescription
unitstringYESUnit of measurement (e.g., "Boxes", "Bottles", "Tablets")
quantityintegerYESTotal amount dispensed to the patient

NOTE

Dispense: Specifies the total quantity of the drug provided to the patient. If the dispense field is not provided, the system calculates the quantity using this fallback logic:

  1. Quantity Formula: (morning + afternoon + evening + night) × days
  2. Zero Fallback: If days is 0 or missing, the quantity defaults to 0
  3. Unit: Defaults to the unit specified in the usage instructions

Example Calculation:

  1. Morning: 1, Afternoon: 0, Evening: 1, Night: 0
  2. Days: 7
  3. Calculated Quantity: (1 + 0 + 1 + 0) × 7 = 14 tablets

Example

json
{
  "prescriptions": [
    {
      "patient_code": "P25003877",
      "visit_code": "V420650",
      "encounter_code": "E417001",
      "code": "RX20250317001",
      "prescribed_at": "2025-03-17T10:10:00.000+07:00",
      "prescribed_by": "Dr. Chhun Sovannarith",
      "title": "Doctor",
      "medications": [
        {
          "medicine_code": "MED001",
          "medicine_name": "Artemether-Lumefantrine",
          "strength": "20/120mg",
          "method": "Oral",
          "unit": "Tablet",
          "morning": 4,
          "afternoon": 0,
          "evening": 4,
          "night": 0,
          "days": 3,
          "interval": null,
          "note": "Take with food. Complete the full course.",
          "dispense": {
            "quantity": 1,
            "unit": "Boxes"
          }
        },
        {
          "medicine_code": "MED002",
          "medicine_name": "Paracetamol",
          "strength": "500mg",
          "method": "Oral",
          "unit": "Tablet",
          "morning": 0,
          "afternoon": 0,
          "evening": 0,
          "night": 0,
          "days": 5,
          "interval": "8 hours",
          "note": "Take only when you have fever or pain.",
          "dispense": {
            "quantity": 1,
            "unit": "Boxes"
          }
        }
      ]
    }
  ]
}

Invoices

Invoices are the financial record of the patient's visit - what services were provided and what they cost. This includes everything from consultation fees to laboratory tests to medications.

In Cambodia's healthcare system, many patients are covered by health insurance programs (like HEF or NSSF), so the invoice also tracks what the patient pays versus what the insurance covers.

Data Model

FieldTypeRequiredDescription
patient_codestringYESReference to patient unique code
visit_codestringYESReference to visit unique code
encounter_codestringReference to encounter unique code
codestringYESInvoice identifier
payment_typestringYESType of payment
invoice_datedatetimeYESInvoice date
totalnumberYESTotal amount
created_atdatetimeYESCreation timestamp
updated_atdatetimeUpdate timestamp
cashierstringYESName of cashier

Service Model

FieldTypeRequiredDescription
invoice_codestringYESInvoice identifier
service_codestringYESCode identify the provided service
service_namestringYESName of the service provided
service_categorystringYESCategory name of the service
pricenumberYESUnit price
quantitynumberNumber of service provided
paymentnumberPayment received from patient
paidbooleanPayment status
discount_typestringString whether in percentage or amount
discountnumberDiscount amount or percentage

Medication Model

FieldTypeRequiredDescription
invoice_codestringYESInvoice identifier
medicine_codestringYESCode identifies the provided service
medicine_namestringYESName of the service provided
quantitynumberYESNumber of medicines provided
pricenumberYESUnit price
paymentnumberPayment received from patient
paidbooleanPayment status
discount_typestringString whether in percentage or amount
discountnumberDiscount amount or percentage

Example

json
{  
  "invoices": [  
    {  
      "patient_code": "P25003877",  
      "visit_code": "V420650",
      "encounter_code": "E417001",  
      "code": "INV20250317001",  
      "payment_type": "HEF",  
      "invoice_date": "2025-03-17T11:00:00.000+07:00",  
      "total": 45000,  
      "cashier": "Sok Kunthea",  
      "services": [  
        {  
          "service_code": "SRV001",  
          "service_name": "Blood Smear for Malaria",  
          "service_category": "Laboratory Test",  
          "price": 15000,  
          "payment": 0,  
          "paid": false,
          "discount": 15000
        }  
      ],  
      "medications": [  
        {  
          "medicine_code": "MED001",  
          "medicine_name": "Artemether-Lumefantrine 20/120mg",  
          "quantity": 24,
          "unit": "Tablet",  
          "price": 1250,  
          "payment": 0,  
          "paid": false,
          "discount": 30000
        }  
      ]  
    }  
  ]  
}

Referrals

Sometimes a patient needs care that the current hospital can't provide - maybe they need specialized treatment, advanced equipment, or a higher level of care. When this happens, the patient is "referred" to another healthcare facility.

Referrals are like passing the patient's story to the next chapter, but at a different hospital. All the information about their condition, treatment so far, and why they need to be transferred is carefully documented.

Data Model

FieldTypeDescription
referred_fromobjectInformation about the referring facility
referred_toobjectInformation about the receiving facility

Detail Model

FieldTypeRequiredDescription
codestringYESUnique identifier for the referral
referral_numberstringYESUnique reference number for the referral
transportationstringYESMode of transportation
reasonstringYESReason for referral
has_calledbooleanWhether the receiving facility was called in advance
caretaker_namestringName of the person accompanying the patient
caretaker_phonestringContact number for the caretaker
referred_bystringName of the referring provider
referred_by_phonestringContact number for the referring provider
referred_atdatetimeDate and time of referral
received_bystringName of the receiving provider
received_by_phonestringContact number for the receiving provider
received_atdatetimeDate and time the patient was received
medicationsstringMedications that the patient is taking
health_facilityobjectReceiving facility / referring facility

Health Facility Model

FieldTypeRequiredDescription
namestringYESHealth facility's name
codestringYESHealth facility's code
labelstringHealth facility's label
typestringHealth facility's type

Example

json
{  
  "referrals": {  
    "referred_from": null,  
    "referred_to": {  
      "code": "REF20250317001",  
      "referral_number": "HCPP/REF/2025/317",  
      "transportation": "Ambulance",
      "health_facility": {
        "name": "Calmette Hospital",
        "code": "121020",
        "label": "National Referral Hospital",
        "type": "Tertiary"
      },  
      "reason": "Severe malaria with complications requiring intensive care and specialized treatment not available at this facility",  
      "has_called": true,  
      "caretaker_name": "Sok Channary (wife)",  
      "caretaker_phone": "012345678",  
      "referred_by": "Dr. Chhun Sovannarith",  
      "referred_at": "2025-03-17T11:30:00.000+07:00",  
      "received_by": "Dr. Pich Vothy",  
      "received_at": "2025-03-17T12:15:00.000+07:00",  
      "medications": "Currently on Artemether-Lumefantrine (1 dose given), IV fluids started"  
    }  
  }  
}

Summary

Each component tells part of the patient's healthcare story. When connected together through their unique codes, they create a complete picture of the patient's journey from arrival to discharge, including all the care, tests, treatments, and outcomes along the way.

Consultations

A clinical encounter where a patient interacts with a healthcare provider for assessment, advice, or diagnosis, without necessarily receiving a prescription or procedure.

Data Model

FieldTypeRequiredDescription
consultationsarray of stringsNOAssesses, advises, and guides a patient regarding their health condition.

Example

json
{  
  "consultations": [ "Review of normal laboratory results and reassurance.",  "Education on benign nature of tension headaches." ]  
}