IPTp-SP Digital Support System Implementation Guide
0.1.0 - ci-build Kenya flag

IPTp-SP Digital Support System Implementation Guide, published by IPTp-SP Digital Support System Implementation Team. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/daviemukungi/IPTp-FHIR-implementationIG/ and changes regularly. See the Directory of published versions

: IPTp-SP Code System - JSON Representation

Active as of 2026-06-30

Raw json | Download

{
  "resourceType" : "CodeSystem",
  "id" : "iptp-code-system",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: CodeSystem iptp-code-system</b></p><a name=\"iptp-code-system\"> </a><a name=\"hciptp-code-system\"> </a><p>This case-sensitive code system <code>http://iptp.kemri.go.ke/fhir/CodeSystem/iptp-code-system</code> defines the following codes:</p><table class=\"codes\"><tr><td style=\"white-space:nowrap\"><b>Code</b></td><td><b>Display</b></td><td><b>Definition</b></td></tr><tr><td style=\"white-space:nowrap\">iptp-enrollment<a name=\"iptp-code-system-iptp-enrollment\"> </a></td><td>IPTp Enrollment</td><td>Registration of a pregnant woman into the IPTp-SP program</td></tr><tr><td style=\"white-space:nowrap\">iptp-dose-planned<a name=\"iptp-code-system-iptp-dose-planned\"> </a></td><td>IPTp Dose Planned</td><td>A future planned IPTp-SP dose (ServiceRequest/CarePlan activity type code)</td></tr><tr><td style=\"white-space:nowrap\">iptp-dot<a name=\"iptp-code-system-iptp-dot\"> </a></td><td>IPTp DOT</td><td>Directly Observed Therapy dose administered at clinic</td></tr><tr><td style=\"white-space:nowrap\">iptp-self-admin<a name=\"iptp-code-system-iptp-self-admin\"> </a></td><td>IPTp Self-Administration</td><td>Self-administered IPTp dose at home</td></tr><tr><td style=\"white-space:nowrap\">consent-sms<a name=\"iptp-code-system-consent-sms\"> </a></td><td>SMS Consent</td><td>Consent to receive SMS reminders</td></tr><tr><td style=\"white-space:nowrap\">language-english<a name=\"iptp-code-system-language-english\"> </a></td><td>English</td><td>Patient prefers English language messages</td></tr><tr><td style=\"white-space:nowrap\">language-kiswahili<a name=\"iptp-code-system-language-kiswahili\"> </a></td><td>Kiswahili</td><td>Patient prefers Kiswahili language messages</td></tr><tr><td style=\"white-space:nowrap\">ga-early<a name=\"iptp-code-system-ga-early\"> </a></td><td>Early GA Band</td><td>Gestational age 13–20 weeks</td></tr><tr><td style=\"white-space:nowrap\">ga-mid<a name=\"iptp-code-system-ga-mid\"> </a></td><td>Mid GA Band</td><td>Gestational age 21–27 weeks</td></tr><tr><td style=\"white-space:nowrap\">adr-mild<a name=\"iptp-code-system-adr-mild\"> </a></td><td>Mild ADR</td><td>Mild adverse drug reaction</td></tr><tr><td style=\"white-space:nowrap\">adr-severe<a name=\"iptp-code-system-adr-severe\"> </a></td><td>Severe ADR</td><td>Severe adverse drug reaction requiring immediate care</td></tr><tr><td style=\"white-space:nowrap\">chp-followup<a name=\"iptp-code-system-chp-followup\"> </a></td><td>CHP Follow-up</td><td>Community Health Promoter follow-up triggered</td></tr><tr><td style=\"white-space:nowrap\">reminder-t3<a name=\"iptp-code-system-reminder-t3\"> </a></td><td>T-3 Reminder</td><td>Reminder sent 3 days before dose date</td></tr><tr><td style=\"white-space:nowrap\">reminder-t0<a name=\"iptp-code-system-reminder-t0\"> </a></td><td>T-0 Reminder</td><td>Reminder sent on dose day</td></tr><tr><td style=\"white-space:nowrap\">reminder-24h<a name=\"iptp-code-system-reminder-24h\"> </a></td><td>24h Nudge</td><td>24-hour follow-up nudge</td></tr><tr><td style=\"white-space:nowrap\">reminder-72h<a name=\"iptp-code-system-reminder-72h\"> </a></td><td>72h Escalation</td><td>72-hour escalation to CHP queue</td></tr><tr><td style=\"white-space:nowrap\">confirmation-confirmed<a name=\"iptp-code-system-confirmation-confirmed\"> </a></td><td>Dose Confirmed</td><td>Patient replied 1 (took it); dose confirmed</td></tr><tr><td style=\"white-space:nowrap\">confirmation-pending<a name=\"iptp-code-system-confirmation-pending\"> </a></td><td>Dose Confirmation Pending</td><td>Patient replied 2 (not yet) or has not yet replied; awaiting confirmation</td></tr><tr><td style=\"white-space:nowrap\">confirmation-missed<a name=\"iptp-code-system-confirmation-missed\"> </a></td><td>Dose Confirmation Missed</td><td>No confirmation received after 72 hours; CHP notified</td></tr><tr><td style=\"white-space:nowrap\">messaging-active<a name=\"iptp-code-system-messaging-active\"> </a></td><td>Messaging Active</td><td>Patient is actively receiving SMS reminders</td></tr><tr><td style=\"white-space:nowrap\">messaging-stopped<a name=\"iptp-code-system-messaging-stopped\"> </a></td><td>Messaging Stopped</td><td>Patient sent STOP; all scheduled messages cancelled</td></tr><tr><td style=\"white-space:nowrap\">issue-type-lost-medicine<a name=\"iptp-code-system-issue-type-lost-medicine\"> </a></td><td>Lost Medicine</td><td>Patient reports lost or misplaced IPTp-SP tablets</td></tr><tr><td style=\"white-space:nowrap\">issue-type-other<a name=\"iptp-code-system-issue-type-other\"> </a></td><td>Other Issue</td><td>Other free-text patient-reported concern (issue_text encrypted, manual_review_flag = TRUE)</td></tr><tr><td style=\"white-space:nowrap\">resolution-open<a name=\"iptp-code-system-resolution-open\"> </a></td><td>Open</td><td>Issue is open and unresolved</td></tr><tr><td style=\"white-space:nowrap\">resolution-resolved<a name=\"iptp-code-system-resolution-resolved\"> </a></td><td>Resolved</td><td>Issue has been resolved</td></tr><tr><td style=\"white-space:nowrap\">pregnancy-outcome-delivery<a name=\"iptp-code-system-pregnancy-outcome-delivery\"> </a></td><td>Delivery</td><td>Pregnancy ended in delivery; messaging stops</td></tr><tr><td style=\"white-space:nowrap\">pregnancy-outcome-loss<a name=\"iptp-code-system-pregnancy-outcome-loss\"> </a></td><td>Pregnancy Loss</td><td>Pregnancy ended in loss; messaging stops</td></tr><tr><td style=\"white-space:nowrap\">feedback-program-helpfulness<a name=\"iptp-code-system-feedback-program-helpfulness\"> </a></td><td>IPTp Reminder Program Helpfulness</td><td>Whether the patient found the SMS reminders supportive</td></tr><tr><td style=\"white-space:nowrap\">msg-onboarding-enrollment<a name=\"iptp-code-system-msg-onboarding-enrollment\"> </a></td><td>Onboarding: Enrollment Confirmation</td><td>Onboarding message 1 sent on short code immediately after USSD enrollment</td></tr><tr><td style=\"white-space:nowrap\">msg-onboarding-how-it-works<a name=\"iptp-code-system-msg-onboarding-how-it-works\"> </a></td><td>Onboarding: How It Works</td><td>Onboarding message 2</td></tr><tr><td style=\"white-space:nowrap\">msg-onboarding-how-to-take<a name=\"iptp-code-system-msg-onboarding-how-to-take\"> </a></td><td>Onboarding: How to Take SP</td><td>Onboarding message 3</td></tr><tr><td style=\"white-space:nowrap\">msg-onboarding-safety-bridge<a name=\"iptp-code-system-msg-onboarding-safety-bridge\"> </a></td><td>Onboarding: Safety + InfoAFYA Bridge</td><td>Onboarding message 4</td></tr><tr><td style=\"white-space:nowrap\">msg-confirmation-ack-taken<a name=\"iptp-code-system-msg-confirmation-ack-taken\"> </a></td><td>Confirmation Ack: Took It</td><td>Sent after patient replies 1 (took it)</td></tr><tr><td style=\"white-space:nowrap\">msg-confirmation-ack-pending<a name=\"iptp-code-system-msg-confirmation-ack-pending\"> </a></td><td>Confirmation Ack: Not Yet</td><td>Sent after patient replies 2 (not yet)</td></tr><tr><td style=\"white-space:nowrap\">msg-issue-problem-type<a name=\"iptp-code-system-msg-issue-problem-type\"> </a></td><td>Issue Flow: Problem Type Prompt</td><td>Have-an-issue step 1 prompt</td></tr><tr><td style=\"white-space:nowrap\">msg-issue-side-effect-severity<a name=\"iptp-code-system-msg-issue-side-effect-severity\"> </a></td><td>Issue Flow: Side Effect Severity Prompt</td><td>Have-an-issue side-effect severity prompt</td></tr><tr><td style=\"white-space:nowrap\">msg-issue-mild-response<a name=\"iptp-code-system-msg-issue-mild-response\"> </a></td><td>Issue Flow: Mild Side Effect Response</td><td>Response sent for mild side effects</td></tr><tr><td style=\"white-space:nowrap\">msg-issue-severe-response<a name=\"iptp-code-system-msg-issue-severe-response\"> </a></td><td>Issue Flow: Severe Side Effect Response</td><td>Response sent for severe side effects</td></tr><tr><td style=\"white-space:nowrap\">msg-issue-lost-medicine-response<a name=\"iptp-code-system-msg-issue-lost-medicine-response\"> </a></td><td>Issue Flow: Lost Medicine Response</td><td>Response sent for lost medicine reports</td></tr><tr><td style=\"white-space:nowrap\">msg-issue-other-prompt<a name=\"iptp-code-system-msg-issue-other-prompt\"> </a></td><td>Issue Flow: Other - Free Text Prompt</td><td>Prompt asking patient to type their concern</td></tr><tr><td style=\"white-space:nowrap\">msg-issue-other-ack<a name=\"iptp-code-system-msg-issue-other-ack\"> </a></td><td>Issue Flow: Other - Auto-Reply</td><td>Auto-reply after free-text concern received</td></tr><tr><td style=\"white-space:nowrap\">msg-stop-ack<a name=\"iptp-code-system-msg-stop-ack\"> </a></td><td>STOP Acknowledgement</td><td>Sent when patient texts STOP</td></tr><tr><td style=\"white-space:nowrap\">msg-infoafya-trust<a name=\"iptp-code-system-msg-infoafya-trust\"> </a></td><td>InfoAFYA: Trust</td><td>24-48h post enrollment</td></tr><tr><td style=\"white-space:nowrap\">msg-infoafya-autonomy<a name=\"iptp-code-system-msg-infoafya-autonomy\"> </a></td><td>InfoAFYA: Autonomy Transition</td><td>3-5 days post DOT</td></tr><tr><td style=\"white-space:nowrap\">msg-infoafya-norm<a name=\"iptp-code-system-msg-infoafya-norm\"> </a></td><td>InfoAFYA: Norm Reinforcement</td><td>7 days before next dose</td></tr><tr><td style=\"white-space:nowrap\">msg-infoafya-identity<a name=\"iptp-code-system-msg-infoafya-identity\"> </a></td><td>InfoAFYA: Identity Reinforcement</td><td>3-5 days after Dose 2 confirmation</td></tr><tr><td style=\"white-space:nowrap\">msg-infoafya-reassurance<a name=\"iptp-code-system-msg-infoafya-reassurance\"> </a></td><td>InfoAFYA: Side-Effect Reassurance</td><td>Mid-cycle window between two IPTp doses</td></tr><tr><td style=\"white-space:nowrap\">msg-infoafya-completion<a name=\"iptp-code-system-msg-infoafya-completion\"> </a></td><td>InfoAFYA: Completion Mindset</td><td>7 days before final cycle</td></tr><tr><td style=\"white-space:nowrap\">msg-infoafya-anc-continuity<a name=\"iptp-code-system-msg-infoafya-anc-continuity\"> </a></td><td>InfoAFYA: ANC Continuity</td><td>After final dose confirmation</td></tr><tr><td style=\"white-space:nowrap\">msg-feedback-prompt<a name=\"iptp-code-system-msg-feedback-prompt\"> </a></td><td>Feedback Prompt</td><td>Sent 5 days after final dose confirmation</td></tr><tr><td style=\"white-space:nowrap\">msg-feedback-yes-ack<a name=\"iptp-code-system-msg-feedback-yes-ack\"> </a></td><td>Feedback Ack: Yes</td><td>Sent when patient replies 1 (Yes, supported)</td></tr><tr><td style=\"white-space:nowrap\">msg-feedback-no-ack<a name=\"iptp-code-system-msg-feedback-no-ack\"> </a></td><td>Feedback Ack: No</td><td>Sent when patient replies 2 (No), requests suggestions</td></tr></table></div>"
  },
  "url" : "http://iptp.kemri.go.ke/fhir/CodeSystem/iptp-code-system",
  "version" : "0.1.0",
  "name" : "IPTpCodeSystem",
  "title" : "IPTp-SP Code System",
  "status" : "active",
  "date" : "2026-06-30T18:47:18+00:00",
  "publisher" : "IPTp-SP Digital Support System Implementation Team",
  "contact" : [
    {
      "name" : "IPTp-SP Digital Support System Implementation Team",
      "telecom" : [
        {
          "system" : "url",
          "value" : "http://iptp.kemri.go.ke"
        }
      ]
    }
  ],
  "description" : "Code system for IPTp-SP Digital Support System concepts",
  "jurisdiction" : [
    {
      "coding" : [
        {
          "system" : "urn:iso:std:iso:3166",
          "code" : "KE",
          "display" : "Kenya"
        }
      ]
    }
  ],
  "caseSensitive" : true,
  "content" : "complete",
  "count" : 52,
  "concept" : [
    {
      "code" : "iptp-enrollment",
      "display" : "IPTp Enrollment",
      "definition" : "Registration of a pregnant woman into the IPTp-SP program"
    },
    {
      "code" : "iptp-dose-planned",
      "display" : "IPTp Dose Planned",
      "definition" : "A future planned IPTp-SP dose (ServiceRequest/CarePlan activity type code)"
    },
    {
      "code" : "iptp-dot",
      "display" : "IPTp DOT",
      "definition" : "Directly Observed Therapy dose administered at clinic"
    },
    {
      "code" : "iptp-self-admin",
      "display" : "IPTp Self-Administration",
      "definition" : "Self-administered IPTp dose at home"
    },
    {
      "code" : "consent-sms",
      "display" : "SMS Consent",
      "definition" : "Consent to receive SMS reminders"
    },
    {
      "code" : "language-english",
      "display" : "English",
      "definition" : "Patient prefers English language messages"
    },
    {
      "code" : "language-kiswahili",
      "display" : "Kiswahili",
      "definition" : "Patient prefers Kiswahili language messages"
    },
    {
      "code" : "ga-early",
      "display" : "Early GA Band",
      "definition" : "Gestational age 13–20 weeks"
    },
    {
      "code" : "ga-mid",
      "display" : "Mid GA Band",
      "definition" : "Gestational age 21–27 weeks"
    },
    {
      "code" : "adr-mild",
      "display" : "Mild ADR",
      "definition" : "Mild adverse drug reaction"
    },
    {
      "code" : "adr-severe",
      "display" : "Severe ADR",
      "definition" : "Severe adverse drug reaction requiring immediate care"
    },
    {
      "code" : "chp-followup",
      "display" : "CHP Follow-up",
      "definition" : "Community Health Promoter follow-up triggered"
    },
    {
      "code" : "reminder-t3",
      "display" : "T-3 Reminder",
      "definition" : "Reminder sent 3 days before dose date"
    },
    {
      "code" : "reminder-t0",
      "display" : "T-0 Reminder",
      "definition" : "Reminder sent on dose day"
    },
    {
      "code" : "reminder-24h",
      "display" : "24h Nudge",
      "definition" : "24-hour follow-up nudge"
    },
    {
      "code" : "reminder-72h",
      "display" : "72h Escalation",
      "definition" : "72-hour escalation to CHP queue"
    },
    {
      "code" : "confirmation-confirmed",
      "display" : "Dose Confirmed",
      "definition" : "Patient replied 1 (took it); dose confirmed"
    },
    {
      "code" : "confirmation-pending",
      "display" : "Dose Confirmation Pending",
      "definition" : "Patient replied 2 (not yet) or has not yet replied; awaiting confirmation"
    },
    {
      "code" : "confirmation-missed",
      "display" : "Dose Confirmation Missed",
      "definition" : "No confirmation received after 72 hours; CHP notified"
    },
    {
      "code" : "messaging-active",
      "display" : "Messaging Active",
      "definition" : "Patient is actively receiving SMS reminders"
    },
    {
      "code" : "messaging-stopped",
      "display" : "Messaging Stopped",
      "definition" : "Patient sent STOP; all scheduled messages cancelled"
    },
    {
      "code" : "issue-type-lost-medicine",
      "display" : "Lost Medicine",
      "definition" : "Patient reports lost or misplaced IPTp-SP tablets"
    },
    {
      "code" : "issue-type-other",
      "display" : "Other Issue",
      "definition" : "Other free-text patient-reported concern (issue_text encrypted, manual_review_flag = TRUE)"
    },
    {
      "code" : "resolution-open",
      "display" : "Open",
      "definition" : "Issue is open and unresolved"
    },
    {
      "code" : "resolution-resolved",
      "display" : "Resolved",
      "definition" : "Issue has been resolved"
    },
    {
      "code" : "pregnancy-outcome-delivery",
      "display" : "Delivery",
      "definition" : "Pregnancy ended in delivery; messaging stops"
    },
    {
      "code" : "pregnancy-outcome-loss",
      "display" : "Pregnancy Loss",
      "definition" : "Pregnancy ended in loss; messaging stops"
    },
    {
      "code" : "feedback-program-helpfulness",
      "display" : "IPTp Reminder Program Helpfulness",
      "definition" : "Whether the patient found the SMS reminders supportive"
    },
    {
      "code" : "msg-onboarding-enrollment",
      "display" : "Onboarding: Enrollment Confirmation",
      "definition" : "Onboarding message 1 sent on short code immediately after USSD enrollment"
    },
    {
      "code" : "msg-onboarding-how-it-works",
      "display" : "Onboarding: How It Works",
      "definition" : "Onboarding message 2"
    },
    {
      "code" : "msg-onboarding-how-to-take",
      "display" : "Onboarding: How to Take SP",
      "definition" : "Onboarding message 3"
    },
    {
      "code" : "msg-onboarding-safety-bridge",
      "display" : "Onboarding: Safety + InfoAFYA Bridge",
      "definition" : "Onboarding message 4"
    },
    {
      "code" : "msg-confirmation-ack-taken",
      "display" : "Confirmation Ack: Took It",
      "definition" : "Sent after patient replies 1 (took it)"
    },
    {
      "code" : "msg-confirmation-ack-pending",
      "display" : "Confirmation Ack: Not Yet",
      "definition" : "Sent after patient replies 2 (not yet)"
    },
    {
      "code" : "msg-issue-problem-type",
      "display" : "Issue Flow: Problem Type Prompt",
      "definition" : "Have-an-issue step 1 prompt"
    },
    {
      "code" : "msg-issue-side-effect-severity",
      "display" : "Issue Flow: Side Effect Severity Prompt",
      "definition" : "Have-an-issue side-effect severity prompt"
    },
    {
      "code" : "msg-issue-mild-response",
      "display" : "Issue Flow: Mild Side Effect Response",
      "definition" : "Response sent for mild side effects"
    },
    {
      "code" : "msg-issue-severe-response",
      "display" : "Issue Flow: Severe Side Effect Response",
      "definition" : "Response sent for severe side effects"
    },
    {
      "code" : "msg-issue-lost-medicine-response",
      "display" : "Issue Flow: Lost Medicine Response",
      "definition" : "Response sent for lost medicine reports"
    },
    {
      "code" : "msg-issue-other-prompt",
      "display" : "Issue Flow: Other - Free Text Prompt",
      "definition" : "Prompt asking patient to type their concern"
    },
    {
      "code" : "msg-issue-other-ack",
      "display" : "Issue Flow: Other - Auto-Reply",
      "definition" : "Auto-reply after free-text concern received"
    },
    {
      "code" : "msg-stop-ack",
      "display" : "STOP Acknowledgement",
      "definition" : "Sent when patient texts STOP"
    },
    {
      "code" : "msg-infoafya-trust",
      "display" : "InfoAFYA: Trust",
      "definition" : "24-48h post enrollment"
    },
    {
      "code" : "msg-infoafya-autonomy",
      "display" : "InfoAFYA: Autonomy Transition",
      "definition" : "3-5 days post DOT"
    },
    {
      "code" : "msg-infoafya-norm",
      "display" : "InfoAFYA: Norm Reinforcement",
      "definition" : "7 days before next dose"
    },
    {
      "code" : "msg-infoafya-identity",
      "display" : "InfoAFYA: Identity Reinforcement",
      "definition" : "3-5 days after Dose 2 confirmation"
    },
    {
      "code" : "msg-infoafya-reassurance",
      "display" : "InfoAFYA: Side-Effect Reassurance",
      "definition" : "Mid-cycle window between two IPTp doses"
    },
    {
      "code" : "msg-infoafya-completion",
      "display" : "InfoAFYA: Completion Mindset",
      "definition" : "7 days before final cycle"
    },
    {
      "code" : "msg-infoafya-anc-continuity",
      "display" : "InfoAFYA: ANC Continuity",
      "definition" : "After final dose confirmation"
    },
    {
      "code" : "msg-feedback-prompt",
      "display" : "Feedback Prompt",
      "definition" : "Sent 5 days after final dose confirmation"
    },
    {
      "code" : "msg-feedback-yes-ack",
      "display" : "Feedback Ack: Yes",
      "definition" : "Sent when patient replies 1 (Yes, supported)"
    },
    {
      "code" : "msg-feedback-no-ack",
      "display" : "Feedback Ack: No",
      "definition" : "Sent when patient replies 2 (No), requests suggestions"
    }
  ]
}