---
title: Messages Overview
slug: rtpb-pbm-payers/guide/messages-overview
docTags: 
createdAt: 2026-06-11T13:19:33.472Z
---

## Message Description(s)

**RTPBRequest**

The RTPBRequest message is used to request patient-specific estimated cost and benefit information.

**RTPBResponse**

The RTPBResponse message returns patient-specific estimated cost and benefit information, or the response may return business errors (e.g., No Patient Match Found, etc.) or system errors.

## Error Response Message

This NCPDP SCRIPT message indicates that an error has occurred and the RTPBRequest has been terminated. An error can be generated when there is a communication problem or when the message had an error (e.g., a formatting problem).

## Real-Time Prescription Benefit Message Flow

::Image[]{src="https://api.archbee.com/api/optimize/fNEeV2bO-J-V0NK1eH_VR/J-8lawi0sv2C-lflFVYYX_rtpbflow764x471.png" position="flex-start" size="76" initialPath="../../Resources/Images/RTPBPV/RTPBFlow_764x471.png" githubPath="Content/Resources/Images/RTPBPV/RTPBFlow_764x471.png" width="764" height="471" darkWidth="764" darkHeight="471" showCaption="false"}

\*1) The Eligibility Request (270) is sent by the provider vendor system to Surescripts to obtain eligibility information.

\*2) Surescripts validates the request, locates the patient based on demographic information, and sends the Eligibility Request (270) to the applicable PBM/payer.

\*3) The PBM/payer verifies the patient and responds to Surescripts with an Eligibility Response (271) indicating the patient’s eligibility status.

\*4) Surescripts validates the format of the incoming Eligibility Response (271), consolidates all 271 responses, and sends the information back to the requester.

:::hint{type="info"}
**Note:&#x20;**&#x54;he information noted with an asterix (\*) above is related to the Eligibility process. For more information on the Eligibility process, please see the Surescripts Eligibility Companion Guide.
:::

5\) Once the medication, days' supply, quantity, quantity unit of measure and pharmacy have been selected, the provider vendor sends RTPBRequest for patient-specific estimated cost and benefit data.

6\) Surescripts receives the RTPBRequest message and then requests the patient benefit information from the PBM/payer.

7\) The PBM/payer processes the request, formats an RTPBResponse message with patient-specific estimated cost and benefit information and sends to Surescripts.

8\) Surescripts forwards the RTPBResponse synchronously to the provider vendor.

## Real-Time Prescription Benefit Pharmacy Message Flow

::Image[]{src="https://api.archbee.com/api/optimize/fNEeV2bO-J-V0NK1eH_VR/OZT2Hcexs6RwchU9PgvsM_rtpbpbmflow677x218.png" position="flex-start" size="68" initialPath="../../Resources/Images/RTPB/RTPBPBMFlow_677x218.png" githubPath="Content/Resources/Images/RTPB/RTPBPBMFlow_677x218.png" width="677" height="218" darkWidth="677" darkHeight="218" showCaption="false"}

1\) Once the patient, medication, days supply, quantity, and quantity unit of measure have been selected, the pharmacist sends Surescripts, via their pharmacy system, an RTPBRequest for the patient-specific estimated cost and benefit data. Surescripts receives the RTPBRequest message.

2\) If the BenefitsCoordination information is present in the message, Surescripts forwards the RTPBRequest to the PBM/payer.

2a) If the BenefitsCoordination information is not present, Surescripts will look up the patient to retrieve the required data. Once obtained, Surescripts will add the necessary information to the RTPBRequest that will be sent to the PBM/payer.

3\) The PBM/payer processes the request, formats an RTPBResponse message with the patient-specific estimated cost and benefit information and sends it to Surescripts.

4\) Surescripts processes the message and returns the RTPBResponse synchronously to the pharmacy system.

:::hint{type="info"}
**Note:&#x20;**&#x54;he RTPBResponse sent to the pharmacy system will not include coverage information obtained by Surescripts.
:::

## Real-Time Prescription Benefit Error Message Scenarios

The following diagram depicts various scenarios where Error messages or Error messages with business errors are sent in response to a RTPBRequest.

![](https://api.archbee.com/api/optimize/fNEeV2bO-J-V0NK1eH_VR/xiLWMdPlnMgtcGtE8BGUo_rtpberror.png)

**Scenario 1: Surescripts cannot recognize the message. Surescripts returns an Error message.**

1a) A provider vendor sends a RTPBRequest to Surescripts.

1b) Surescripts cannot recognize the message (e.g., improperly formed XML) and sends an Error message back to the provider.

**Scenario 2: Surescripts finds message errors in RTPBRequest. Surescripts returns an Error message.**

2a) A provider vendor sends a RTPBRequest to Surescripts.

2b) Surescripts recognizes the format but finds errors (e.g., schema validation error) in the message. Surescripts returns an Error message.

**Scenario 3: PBM/payer finds message errors in RTPBRequest. PBM/payer returns an Error message.**

3a) A provider vendor sends a RTPBRequest message to Surescripts.

3b) Surescripts forwards the RTPBRequest to the PBM/payer.

3c) During validation, the PBM/payer finds message errors and sends an Error message to Surescripts.

3d) Surescripts forwards the Error message to the provider vendor.

**Scenario 4: PBM/payer finds business errors in RTPBRequest. PBM/payer returns an RTPBResponse message with business errors.**

4a) A provider vendor sends a RTPBRequest to Surescripts.

4b) Surescripts forwards the RTPBRequest to the PBM/payer.

4c) During business processing, the PBM/payer finds business errors (e.g., Patient Not Found, Drug Not Found, No Benefit Information Available, etc.) and returns an RTPBResponse message to Surescripts.

4d) Surescripts forwards the RTPBResponse to the provider vendor.

**Scenario 5: Patient does not have coverage with a participating PBM. The patient demographics match a single patient in the Surescripts coverage lookup, but the patient’s PBM/payer is not available to return an RTPBResponse.**

5a) A system sends a RTPBRequest to Surescripts that does not contain the PBMMemberID and the PayerID.

5b) Surescripts performs a coverage lookup for the patient. The patient does not have active coverage for prescription benefit coverage, or the patient’s PBM/payer is not contracted with Surescripts to obtain data, or the PBM/payer did not provide coverage for the patient.

5c) PBM/payer sends an Error message to Surescripts.

5c) Surescripts sends an Error message to the provider vendor with an Error Code "951" and Description: “Surescripts unable to locate coverage for patient.

## Message Validation

Surescripts will ensure that customers are in compliance with the message specifications outlined in this guide during testing and will continue to enforce once in production.

At a minimum, Surescripts validations include:

- XML schema validation
- The sender identification and authentication
- The recipient identification
- Syntax of the message, including field lengths, data types, and code values
- Surescripts business rules

:::hint{type="info"}
**Note:&#x20;**&#x53;urescripts ACRs are not enforced as part of validations, but instead through the certification process.
:::

## Extensibility

Extensibility was added to allow trading partners a consistent way to include additional information in the messages. It was created to enable the integration of extra information in messages in a safe and meaningful way, it can help streamline testing of new data elements, maintain the standard's simplicity while accommodating uncommon use cases, and most importantly, paves a quicker path to introducing new features that benefit patients, providers, pharmacies, and payers.

- Surescripts will not validate data in extensions beyond the schema requirements.
- It is recommended that partners do not reject transactions that include an extension that is not expected and instead ignore the information. When using extensions, the following rules must be observed:
  - The core schema must be followed.
  - Extensions must not contradict the base standard.
  - Extensions must not alter content from the base standard.
  - Extensions must not be used when standard fields are available.
  - External Code List values cannot be modified by extensions.

:::hint{type="info"}
**Note:&#x20;**&#x50;lease work with your Surescripts Account Manager or Surescripts resource for more information.
:::

