How to integrate information from the Real Time Exemption Checking Service API with EPS Prescription messaging

The existing EPS claim message is to be used when submitting reimbursement messages with exemptions confirmed by the Real Time Exemption Checking service. In order to differentiate patient exemptions confirmed by the service, additional EPS values must be used for indicating patient prescription charge exemption. Information on the values used within the Real Time Exemption Checking service can be found below. Where the patient wishes to claim a different exemption not confirmed by the service, suppliers should utilise existing exemption values as part of the EPS process. Information on existing EPS values can be found within the NHSBSA Requirements and Guidance for Endorsement in EPS: https://www.nhsbsa.nhs.uk/pharmacies-gp-practices-and-appliance-contractors/prescribing-and-dispensing/endorsement-guidance

RTEC EPS Values

The following vocabulary must be used in EPS claim messages.

Value Description Note
9005 has a valid maternity exemption certificate - confirmed by RTEC source This is a future proof requirement to ensure systems can display the exemption type if this was provided by the NHSBSA in the RTEC response.
Any other 9xxx value receieved by BSA in an RTEC confirmed response Patient does not need to pay the prescription charge - confirmed by RTEC source This allows the exemption status to be confirmed without actually stating the reason for the exemption. E.G ‘9999’

Exemption Type in the EPS Claim message

Exemption type is included in the Dispense Claim Information interaction (PORX_IN090101UK31). It is held at the XPath DispenseClaim/coverage/coveringChargeExempt/value/@code

<coverage typeCode="COVBY" contextConductionInd="true">
  <seperatableInd value="false" />
  <coveringChargeExempt classCode="OBS" moodCode="EVN" negationInd="false">
    <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.30" code="EX" />
    <value codeSystem="2.16.840.1.113883.2.1.3.2.4.16.33" code="9999" />
  </coveringChargeExempt>
</coverage>

Example

A complete example claim incorporating the extended vocabulary is below:

POST https://mm-rmasync.national.ncrs.nhs.uk/reliablemessaging/reliablerequest HTTP/1.1
Content-Type: multipart/related; boundary="--=_MIME-Boundary"; type="text/xml"; start="<ebXMLHeader@spine.nhs.uk>"
SOAPAction: "urn:nhs:names:services:mm/PORX_IN090101UK31"
Host: mm-rmasync.national.ncrs.nhs.uk
Content-Length: 27775
Connection: Close

----=_MIME-Boundary
Content-Id: <ebXMLHeader@spine.nhs.uk>
Content-Type: text/xml; charset=UTF-8
Content-Transfer-Encoding: 8bit

<soap:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:hl7ebxml="urn:hl7-org:transport/ebxml/DSTUv1.0" xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <eb:MessageHeader soap:mustUnderstand="1" eb:version="2.0">
      <eb:From>
        <eb:PartyId eb:type="urn:nhs:names:partyType:ocs+serviceInstance">RHM-814382</eb:PartyId>
      </eb:From>
      <eb:To>
        <eb:PartyId eb:type="urn:nhs:names:partyType:ocs+serviceInstance">YEA-0000806</eb:PartyId>
      </eb:To>
      <eb:CPAId>S3114A114825</eb:CPAId>
      <eb:ConversationId>D21676DF-EFFC-4C51-814F-5F7BE7CF3875</eb:ConversationId>
      <eb:Service>urn:nhs:names:services:mm</eb:Service>
      <eb:Action>PORX_IN090101UK31</eb:Action>
      <eb:MessageData>
        <eb:MessageId>D21676DF-EFFC-4C51-814F-5F7BE7CF3875</eb:MessageId>
        <eb:Timestamp>2018-09-04T18:22:45</eb:Timestamp>
      </eb:MessageData>
      <eb:DuplicateElimination />
    </eb:MessageHeader>
    <eb:AckRequested soap:mustUnderstand="1" eb:version="2.0" eb:signed="false" soap:actor="urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH" />
    <eb:SyncReply soap:mustUnderstand="1" eb:version="2.0" soap:actor="http://schemas.xmlsoap.org/soap/actor/next" />
  </soap:Header>
  <soap:Body>
    <eb:Manifest soap:mustUnderstand="1" eb:version="2.0">
      <eb:Reference xlink:href="cid:attachment1@spine.nhs.uk">
        <eb:Schema eb:location="http://www.nhsia.nhs.uk/schemas/HL7-Message.xsd" eb:version="1.0" />
        <eb:Description xml:lang="en-GB">HL7 payload</eb:Description>
        <hl7ebxml:Payload style="HL7" encoding="XML" version="3.0" />
      </eb:Reference>
    </eb:Manifest>
  </soap:Body>
</soap:Envelope>

----=_MIME-Boundary
Content-Id: <attachment1@spine.nhs.uk>
Content-Type: application/xml; charset=UTF-8
Content-Transfer-Encoding: 8bit

<PORX_IN090101UK31 xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:hl7-org:v3">
  <id root="E58AF8CC-1F39-6D22-E040-007F0100149D" />
  <creationTime value="20180904182245" />
  <versionCode code="V3NPfIT4.2.00" />
  <interactionId root="2.16.840.1.113883.2.1.3.2.4.12" extension="PORX_IN090101UK31" />
  <processingCode code="P" />
  <processingModeCode code="T" />
  <acceptAckCode code="NE" />
  <communicationFunctionRcv typeCode="RCV">
    <device classCode="DEV" determinerCode="INSTANCE">
      <id root="1.2.826.0.1285.0.2.0.107" extension="338068513039" />
    </device>
  </communicationFunctionRcv>
  <communicationFunctionSnd typeCode="SND">
    <device classCode="DEV" determinerCode="INSTANCE">
      <id root="1.2.826.0.1285.0.2.0.107" extension="915130719044" />
    </device>
  </communicationFunctionSnd>
  <ControlActEvent xmlns="urn:hl7-org:v3" classCode="CACT" moodCode="EVN">
    <author typeCode="AUT">
      <AgentPersonSDS classCode="AGNT">
        <id root="1.2.826.0.1285.0.2.0.67" extension="942006338565" />
        <agentPersonSDS classCode="PSN" determinerCode="INSTANCE">
          <id root="1.2.826.0.1285.0.2.0.65" extension="893809016032" />
        </agentPersonSDS>
        <part typeCode="PART">
          <partSDSRole classCode="ROL">
            <id root="1.2.826.0.1285.0.2.1.104" extension="S8000:G8000:R8003" />
          </partSDSRole>
        </part>
      </AgentPersonSDS>
    </author>
    <author1 typeCode="AUT">
      <AgentSystemSDS classCode="AGNT">
        <agentSystemSDS classCode="DEV" determinerCode="INSTANCE">
          <id root="1.2.826.0.1285.0.2.0.107" extension="915190729047" />
        </agentSystemSDS>
      </AgentSystemSDS>
    </author1>
    <subject typeCode="SUBJ" contextConductionInd="false">
      <DispenseClaim classCode="INFO" moodCode="EVN">
        <id root="E58AF8CC-1F39-6D22-E040-007F0100149D" />
        <code codeSystem="2.16.840.1.113883.2.1.3.2.4.15" code="163541000000107" displayName="Dispensed Medication" />
        <effectiveTime value="20130904182245" />
        <typeId root="2.16.840.1.113883.2.1.3.2.4.18.7" extension="PORX_MT142001UK31" />
        <primaryInformationRecipient typeCode="PRCP">
          <AgentOrg classCode="AGNT">
            <agentOrganization classCode="ORG" determinerCode="INSTANCE">
              <id root="1.2.826.0.1285.0.1.10" extension="T1450" />
              <name>NHS BSA Prescription Services</name>
            </agentOrganization>
          </AgentOrg>
        </primaryInformationRecipient>
        <pertinentInformation1 typeCode="PERT" contextConductionInd="true">
          <templateId root="2.16.840.1.113883.2.1.3.2.4.18.2" extension="CSAB_RM-NPfITUK10.pertinentInformation" />
          <pertinentSupplyHeader classCode="SBADM" moodCode="EVN">
            <id root="F98EE1A6-8CE4-4287-BBF0-3C6027454328" />
            <code codeSystem="2.16.840.1.113883.2.1.3.2.4.15" code="225426007" />
            <effectiveTime nullFlavor="NA" />
            <repeatNumber>
              <low value="1" />
              <high value="1" />
            </repeatNumber>
            <legalAuthenticator typeCode="LA" contextControlCode="OP">
              <time value="201809040723" />
              <signatureText nullFlavor="NA" />
              <AgentPerson classCode="AGNT">
                <id root="1.2.826.0.1285.0.2.0.67" extension="942006338565" />
                <code codeSystem="1.2.826.0.1285.0.2.1.104" code="S8000:G8000:R8003" />
                <agentPerson classCode="PSN" determinerCode="INSTANCE">
                  <id root="1.2.826.0.1285.0.2.0.65" extension="893809016032" />
                  <name use="L">Steve Williams</name>
                </agentPerson>
                <representedOrganization classCode="ORG" determinerCode="INSTANCE">
                  <id root="1.2.826.0.1285.0.1.10" extension="FML48" />
                  <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.94" code="003" />
                  <name>Williamsco</name>
                  <telecom use="WP" value="tel:01133974000" />
                  <addr use="WP">
                    <streetAddressLine>The Primary Care Centre</streetAddressLine>
                    <streetAddressLine>Whitehall Road</streetAddressLine>
                    <streetAddressLine>Leeds</streetAddressLine>
                    <postalCode>LS1 4HY</postalCode>
                  </addr>
                </representedOrganization>
              </AgentPerson>
            </legalAuthenticator>
            <pertinentInformation3 typeCode="PERT" contextConductionInd="true">
              <seperatableInd value="false" />
              <pertinentPrescriptionStatus classCode="OBS" moodCode="EVN">
                <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.30" code="PS" />
                <value codeSystem="2.16.840.1.113883.2.1.3.2.4.16.35" code="0006" displayName="Dispensed" />
              </pertinentPrescriptionStatus>
            </pertinentInformation3>
            <pertinentInformation1 typeCode="PERT" inversionInd="false" contextConductionInd="true" negationInd="false">
              <seperatableInd value="true" />
              <templateId root="2.16.840.1.113883.2.1.3.2.4.18.2" extension="CSAB_RM-NPfITUK10.sourceOf2" />
              <pertinentSuppliedLineItem classCode="SBADM" moodCode="PRMS">
                <id root="9D71192F-D17A-46C8-AF5F-EB3032284042" />
                <code codeSystem="2.16.840.1.113883.2.1.3.2.4.15" code="225426007" />
                <effectiveTime nullFlavor="NA" />
                <repeatNumber>
                  <low value="1" />
                  <high value="1" />
                </repeatNumber>
                <component typeCode="COMP">
                  <seperatableInd value="false" />
                  <suppliedLineItemQuantity classCode="SPLY" moodCode="EVN">
                    <code codeSystem="2.16.840.1.113883.2.1.3.2.4.15" code="373784005" />
                    <quantity value="100" unit="1">
                      <translation value="100" codeSystem="2.16.840.1.113883.2.1.3.2.4.15" code="428673006" displayName="tablet" />
                    </quantity>
                    <product typeCode="PRD" contextControlCode="OP">
                      <suppliedManufacturedProduct classCode="MANU">
                        <manufacturedSuppliedMaterial classCode="MMAT" determinerCode="INSTANCE">
                          <code codeSystem="2.16.840.1.113883.2.1.3.2.4.15" code="1251111000001105" displayName="Paracetamol 500mg tablets 100 tablet">
                            <originalText>Paracetamol 500mg tablets</originalText>
                          </code>
                        </manufacturedSuppliedMaterial>
                      </suppliedManufacturedProduct>
                    </product>
                    <pertinentInformation1 typeCode="PERT" contextConductionInd="true">
                      <seperatableInd value="false" />
                      <pertinentChargePayment classCode="OBS" moodCode="EVN">
                        <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.30" code="CP" />
                        <value value="false" />
                      </pertinentChargePayment>
                    </pertinentInformation1>
                    <pertinentInformation2 typeCode="PERT" contextConductionInd="true">
                      <seperatableInd value="true" />
                      <pertinentDispensingEndorsement classCode="OBS" moodCode="EVN">
                        <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.30" code="DE" />
                        <value codeSystem="2.16.840.1.113883.2.1.3.2.4.16.29" code="NDEC" />
                      </pertinentDispensingEndorsement>
                    </pertinentInformation2>
                  </suppliedLineItemQuantity>
                </component>
                <pertinentInformation1 typeCode="PERT" contextConductionInd="true">
                  <seperatableInd value="false" />
                  <pertinentRunningTotal classCode="OBS" moodCode="EVN">
                    <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.30" code="RT" />
                    <value value="100" unit="1">
                      <translation value="100" codeSystem="2.16.840.1.113883.2.1.3.2.4.15" code="428673006" displayName="tablet" />
                    </value>
                  </pertinentRunningTotal>
                </pertinentInformation1>
                <pertinentInformation3 typeCode="PERT" contextConductionInd="true">
                  <seperatableInd value="false" />
                  <pertinentItemStatus classCode="OBS" moodCode="EVN">
                    <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.30" code="IS" />
                    <value codeSystem="2.16.840.1.113883.2.1.3.2.4.17.23" code="0001" displayName="Item fully dispensed" />
                  </pertinentItemStatus>
                </pertinentInformation3>
                <inFulfillmentOf typeCode="FLFS" inversionInd="false" negationInd="false">
                  <seperatableInd value="true" />
                  <templateId root="2.16.840.1.113883.2.1.3.2.4.18.2" extension="CSAB_RM-NPfITUK10.sourceOf1" />
                  <priorOriginalItemRef classCode="SBADM" moodCode="RQO">
                    <id root="D8D6D523-4691-4751-B2D5-1221B725EC99" />
                  </priorOriginalItemRef>
                </inFulfillmentOf>
              </pertinentSuppliedLineItem>
            </pertinentInformation1>
            <pertinentInformation4 typeCode="PERT" contextConductionInd="true">
              <seperatableInd value="false" />
              <pertinentPrescriptionID classCode="OBS" moodCode="EVN">
                <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.30" code="PID" />
                <value root="2.16.840.1.113883.2.1.3.2.4.18.8" extension="2BE1EA-L36920-0353AW" />
              </pertinentPrescriptionID>
            </pertinentInformation4>
            <inFulfillmentOf typeCode="FLFS" inversionInd="false" negationInd="false">
              <seperatableInd value="true" />
              <templateId root="2.16.840.1.113883.2.1.3.2.4.18.2" extension="CSAB_RM-NPfITUK10.sourceOf1" />
              <priorOriginalPrescriptionRef classCode="SBADM" moodCode="RQO">
                <id root="AA46B163-4DD4-4CEA-9511-74D560C9E3BE" />
              </priorOriginalPrescriptionRef>
            </inFulfillmentOf>
            <predecessor typeCode="SUCC" inversionInd="false" negationInd="false">
              <seperatableInd value="true" />
              <templateId root="2.16.840.1.113883.2.1.3.2.4.18.2" extension="CSAB_RM-NPfITUK10.sourceOf1" />
              <priorSupplyHeaderRef classCode="SBADM" moodCode="EVN">
                <id root="D8407BB4-2B6D-4B17-BFA6-55C96AD8B246" />
              </priorSupplyHeaderRef>
            </predecessor>
          </pertinentSupplyHeader>
        </pertinentInformation1>
        <coverage typeCode="COVBY" contextConductionInd="true">
          <seperatableInd value="false" />
          <coveringChargeExempt classCode="OBS" moodCode="EVN" negationInd="false">
            <code codeSystem="2.16.840.1.113883.2.1.3.2.4.17.30" code="EX" />
            <value codeSystem="2.16.840.1.113883.2.1.3.2.4.16.33" code="9999" />
          </coveringChargeExempt>
        </coverage>
        <sequelTo typeCode="SEQL">
          <priorPrescriptionReleaseEventRef classCode="INFO" moodCode="RQO">
            <id root="51F6E330-BC4A-4CDA-B6D3-FB0110D45C22" />
          </priorPrescriptionReleaseEventRef>
        </sequelTo>
      </DispenseClaim>
    </subject>
  </ControlActEvent>
</PORX_IN090101UK31>
----=_MIME-Boundary--
Tags: