HCPCS code S0155 – Sterile dilutant for epoprostenol
S0155 is the HCPCS Level II code for sterile dilutant for epoprostenol, 50 ml. One unit is one 50 ml vial of the diluent used to reconstitute epoprostenol for continuous IV infusion in pulmonary arterial hypertension.
S0155 is a temporary national code for non-Medicare payers, so Medicare does not pay it. Commercial insurers and some Medicaid programs accept it. The drug itself bills on a separate line under J1325, with one unit per 0.5 mg.
- Level
- Level II
- Category
- S — Temporary national codes (non-Medicare)
- Status
- Active (effective 1 January 2002)
- Billable
- No
- Code also known as
- epoprostenol diluent, Flolan diluent, prostacyclin diluent
Let Pabau's smart automation suggest the right codes, reduce claim denials, and keep your practice compliant—effortlessly.
- AI-powered code suggestions
- Real-time compliance checks
- Faster claims, fewer denials
Automate repetitive tasks and focus on what matters most—your patients.
Reduce coding errors and ensure compliance with the latest regulations.
Clean claims, fewer denials, and faster reimbursements.
Powerful insights and reporting to help your practice thrive.
HIPAA compliant SOC 2 certified GDPR-compliant Trusted by 4,000+ clinics worldwide
Key takeaways
S0155 covers only the sterile dilutant vial (50 ml), not epoprostenol itself or any administration service.
Traditional Medicare fee-for-service does not pay S0155, and Medicare covers epoprostenol through the DME external infusion pump benefit instead.
One unit equals one 50 ml vial, so bill the vial count dispensed rather than the number of epoprostenol doses.
The epoprostenol drug bills on its own line under J1325, one unit per 0.5 mg, never under S0155.
Prior authorization for S0155 is usually linked to the epoprostenol authorization and varies by payer and state.
HCPCS Code S0155: official descriptor and code details
HCPCS Code S0155 bills sterile dilutant for epoprostenol, with one unit per 50 ml vial of the diluent used to reconstitute the drug. It sits in the S-series of HCPCS Level II codes, published in the CMS HCPCS code set.
S-codes are temporary national codes (non-Medicare). They were established for private insurers, and some Medicaid programs use them too. Medicare does not use them, so S0155 has no place on the Medicare Part B fee schedule.
What epoprostenol is and why the dilutant codes separately
Epoprostenol (brand names Flolan and Veletri) is a prostacyclin analogue FDA-approved for pulmonary arterial hypertension. It is supplied as a lyophilized powder that is reconstituted before continuous IV infusion through an ambulatory pump. Flolan and generic epoprostenol use a dedicated sterile diluent, while Veletri is reconstituted with sterile water or saline. That dedicated diluent is dispensed as a separate supply item, so it carries its own HCPCS code.
On a commercial or Medicaid claim, two codes therefore appear side by side. S0155 covers the diluent vial, and J1325 (Injection, epoprostenol, 0.5 mg) covers the drug. Confusing the two is a frequent unit-billing error on these claims. S0155 does not cover the drug, the infusion pump, or the administration service.
Payer coverage: which payers accept S0155?
Commercial insurers and some state Medicaid programs accept S0155, while traditional Medicare does not pay it. Medicare Advantage and Medicaid managed care plans decide plan by plan. Confirming acceptance is the first step in the medical billing workflows for these PAH claims, because it decides which lines the claim carries.
Medicare and S-code limitations
Traditional Medicare fee-for-service does not pay S0155, because the S-series exists for non-Medicare payers. Medicare covers epoprostenol through the DME external infusion pump benefit instead. There, the pump bills as K0455 and the drug as J1325, under the DME MAC’s LCD L33794.
How the diluent is handled on those claims is set by the DME MAC policy, not by S0155. Confirm it with the DME MAC before billing. The matrix below shows how the diluent and drug lines change from one payer type to the next.

Billing S0155: step-by-step instructions
A clean S0155 claim takes six steps, completed in order. Skipping any one of them is enough to trigger a denial. Once the claim is built, Pabau, the practice management platform we build, includes claims management software that submits it and tracks its status.

- Verify payer acceptance. Confirm the patient’s payer accepts HCPCS S-codes before billing S0155. Medicare FFS does not pay S0155, so follow the DME MAC’s external infusion pump policy and confirm with the payer.
- Confirm unit count. One unit of S0155 equals one 50 ml vial of sterile dilutant. Count the number of vials actually dispensed in the claim period and bill that quantity. Do not use the number of epoprostenol doses or cassettes as a proxy.
- Attach the NDC. Medicaid and most commercial payers require the 11-digit National Drug Code for the specific diluent product. Report it in the 5-4-2 layout with no hyphens or spaces, since the hyphenated form is for labels. Missing NDC is a top denial trigger.
- Apply any payer-required modifiers. Modifier use on S0155 is payer-specific, so check the plan’s policy (see the modifier table below).
- Link supporting diagnosis codes. Attach the ICD-10-CM code(s) documenting PAH (see the ICD-10 section below).
- Attach the prior authorization number. If the payer requires PA for specialty drug supplies, include the authorization number in the appropriate claim field before submission. Check your superbill documentation to confirm every required field is captured.
Units of service and quantity billing
One unit of S0155 equals one 50 ml vial of sterile dilutant. When a patient receives multiple vials in a single dispense, bill the total number of vials as the quantity on the claim. The most common unit error is billing the number of epoprostenol drug vials instead of diluent vials. Depending on the reconstitution ratio, that over-counts or under-counts the diluent.
Modifiers some payers require for S0155
No modifier is a documented requirement for S0155 across payers. Modifier use is payer-specific, and the table lists the ones a plan may ask for.
Pro Tip
Verify modifier requirements directly with each payer before the first claim submission. Modifier policies for S-series supply codes vary significantly between state Medicaid programs and Medicare Advantage plans. Applying the wrong modifier can trigger an edit as readily as omitting one.
Required ICD-10-CM diagnosis codes for S0155
The ICD-10-CM diagnosis code on the claim must match the documented condition in the patient’s medical record. For S0155, the supporting diagnosis is PAH. Coders should verify against the current-year ICD-10-CM tabular list and any applicable payer local coverage determinations, as diagnosis linkage requirements can change annually.
Prior authorization requirements for S0155
Prior authorization (PA) for S0155 is typically bundled with the PA for epoprostenol itself. Payers treating epoprostenol as a specialty drug almost always require PA for the full therapy regimen, which includes the diluent as a necessary supply. Requirements vary by payer and state, so confirm with the individual plan rather than assuming PA applies.
- Who initiates PA: the prescribing physician or the dispensing specialty pharmacy, depending on payer policy.
- Clinical documentation typically required: PAH diagnosis confirmed by right heart catheterization and evidence that oral PAH therapies were tried or are contraindicated. The file also needs the prescribing physician’s order for continuous IV epoprostenol.
- Validity period: commonly 3 to 12 months. Confirm the length with the payer, and submit the reauthorization before the current approval expires so later claims don’t deny.
- Diluent-specific PA: most payers fold the diluent PA into the epoprostenol PA. A small number require a separate PA line item for S0155. Check the plan’s specialty pharmacy benefit guide.
Documentation requirements for S0155 claims
Complete documentation before submission keeps these claims within medical billing compliance rules. With the five records below on file, each S0155 line can go out as a clean claim.
What to bill when a payer does not accept S0155
There is no standard crosswalk code for S0155. When a payer rejects it, the right line depends on who the payer is, and the payer’s own policy decides.
Ask the payer whether the substitute line also needs the diluent’s NDC, as Medicaid and most commercial drug supply lines do. Use the AAPC HCPCS code lookup to verify current descriptors before submission, and confirm any substitute code with the payer directly.
Codes commonly confused with S0155
Coding errors on epoprostenol claims rarely involve a random wrong code. They almost always involve one of three specific mix-ups. The table below documents each one and how to avoid it.
The critical rule is that S0155 covers only the sterile dilutant. The active epoprostenol drug is never included in S0155, regardless of how many drug doses the patient receives. When both the diluent and the drug appear on one claim, they need separate line items with separate code entries and separate NDCs.
Common S0155 claim denial reasons and how to fix them
Most S0155 denials fall into six categories. The denial management process for these claims follows a predictable pattern once the root cause is identified. Each denial type below includes the typical claim adjustment reason code and the resolution step.
How Pabau keeps S0155 claims moving after submission
Without a claims tool, the biller keys each S0155 claim into a payer portal or clearinghouse. Then someone checks back by hand to see whether it paid. A diluent line rejected for a missing NDC can sit unnoticed until the next dispense repeats the same error.
Pabau’s claims management submits the claims your team has built and tracks each one’s status. It does that in the same system that holds the patient record and appointment history. Your coders still choose the codes, the NDC and any modifiers.
The result is one view of which claims are paid, pending or rejected. Your team can correct and resubmit a rejected S0155 line while the dispense record is still fresh.
Submit and track S0155 claims in one place
Pabau’s claims management submits the claims your team builds and tracks their status, so a rejected diluent line surfaces quickly.
Conclusion
Settle three questions for each patient before the first dispense. Does the payer take S-codes, which line carries the drug, and does the PA cover the diluent? Answer them once, and the refills that follow bill on the same pattern.
For Medicare patients, the answer is different from the start. S0155 drops away, and the DME external infusion pump policy sets the rules. Treat those patients as a separate workflow rather than a variation on the commercial claim.
If your practice wants every submitted claim and its status in one place, book a demo to see how Pabau handles claim submission and tracking.
Continue your research
Need guidance on managing claim denials systematically? Denial management in healthcare covers the end-to-end process for identifying, appealing, and preventing billing denials.
Want a reference on specialty drug billing compliance? Medical billing compliance requirements outlines the documentation and regulatory standards that apply to specialty drug claims.
Looking to understand the full billing workflow? Medical billing workflows explains the claims lifecycle from patient encounter through final payment posting.
Checking payer acceptance before the first dispense? Insurance eligibility verification walks through confirming coverage and benefits before a claim is built.
Seen epoprostenol billed under an unlisted code? HCPCS code J3490 explains when the unclassified drugs code applies and what payers expect with it.
Frequently asked questions
What does HCPCS Code S0155 cover?
HCPCS Code S0155 covers sterile dilutant for epoprostenol, specifically one 50 ml vial used to reconstitute epoprostenol before continuous IV infusion. It does not cover the epoprostenol drug itself, the infusion pump, or any administration services. Those bill under separate codes.
Is S0155 accepted by Medicare?
No. Traditional Medicare fee-for-service does not pay S0155, because S-codes are for non-Medicare payers. Medicare covers epoprostenol through the DME external infusion pump benefit, so follow the DME MAC policy and confirm diluent billing with the payer. Some Medicare Advantage plans accept S-codes, so verify with the individual plan before billing.
What is one billable unit of S0155?
One unit of S0155 equals one 50 ml vial of sterile dilutant. Bill the total number of vials actually dispensed in the claim period, not the number of epoprostenol drug doses or cassettes.
Does S0155 require prior authorization?
Prior authorization requirements vary by payer and state. Most payers that require PA for epoprostenol include the diluent in the same PA. A small number require a separate PA line item for S0155. Confirm with each payer before the first dispense, and reauthorize before the current approval expires so later claims don’t deny.
Is there a crosswalk code for S0155 when it is denied?
There is no standard crosswalk code for S0155. For Medicare FFS, follow the DME MAC external infusion pump policy, where the drug bills as J1325 and the pump as K0455. For other payers that reject S-codes, ask the plan which code it wants and confirm before resubmitting.
Which ICD-10-CM codes support S0155 claims?
The primary supporting diagnosis codes are I27.0 (primary pulmonary hypertension) and the I27.2x subcategory (other secondary pulmonary hypertension), including I27.20, I27.21, and I27.29. The diagnosis must be documented in the patient’s medical record, not only on the claim form. Verify against the current-year ICD-10-CM tabular list and any applicable payer local coverage determinations.