This article explains how to bill Medicare Part B for influenza and COVID-19 vaccines using MedMe, from confirming the patient's coverage and running an insurance eligibility check, through creating and submitting the claim in MedMe, to handling denials and re-submitting through the pharmacy (drug) benefit when needed.
Table of Contents
Overview
Flu and COVID-19 vaccines for Medicare patients are covered under Medicare Part B, the medical benefit, not the pharmacy benefit you may be used to billing through your pharmacy management system. These claims are professional medical claims (the same CMS-1500 / 837P format used by physician offices), and they are created and submitted in MedMe.
The good news for your patients: Medicare Part B covers flu and COVID-19 vaccines at $0 out of pocket. There is no coinsurance, no copay, and the Part B deductible does not apply, as long as the claim is billed correctly and your pharmacy accepts assignment (MedMe claims are submitted with assignment accepted).
Please Note: This article covers Original Medicare (Part B) billing. Patients with a Medicare Advantage plan (Part C) follow a different path; see Step 1 and When to Use the Drug Benefit Instead below.
Tip: New to medical billing? Start with Medical Billing 101: What to Know Before Submitting Claims in MedMe.
Which vaccines belong to which Medicare benefit?
Not every vaccine is a Part B vaccine. Getting this right up front prevents most vaccine claim denials.
Benefit | Vaccines | How it's billed |
Part B (medical), preventive | Influenza (seasonal), COVID-19, pneumococcal, hepatitis B (for intermediate/high-risk patients) | Medical claim in MedMe |
Part B (medical), treatment | Vaccines needed to treat an injury or direct exposure, e.g. tetanus after a wound, rabies after an animal bite | Medical claim, billed with the injury/exposure diagnosis (not Z23) |
Part D (drug) | All other adult vaccines: shingles (Shingrix), RSV, Tdap boosters, hepatitis A, and anything else ACIP-recommended for prevention | Pharmacy benefit through your pharmacy management system (PBM/NCPDP claim) |
Reminder: Part D vaccines that are ACIP-recommended are also $0 out of pocket for patients with Part D coverage, but they must go through the pharmacy benefit, not a medical claim. A Part D vaccine billed to Part B will be denied.
How Medicare Covers Flu and COVID-19 Vaccines
Influenza: Medicare covers one flu vaccine per flu season (additional doses are covered when medically necessary). "Per season" is not "per calendar year": a patient vaccinated in October 2026 and again in September 2027 has received one vaccine in each of two seasons, and both are covered.
COVID-19: Medicare covers COVID-19 vaccines and additional doses in line with current FDA/CDC recommendations, with no seasonal once-per-year restriction comparable to flu.
Diagnosis code: Both use ICD-10 code Z23 (Encounter for immunization). Your pharmacy's MedMe claim template prefills it.
Part B vaccine code reference
Your pharmacy's MedMe claim template suggests the right codes. This table is a complete reference for all Part B preventive vaccines, useful when reviewing claims and remittances.
Vaccine | Product code(s) | Administration code | Coverage notes |
Influenza (seasonal) | 90616 (mFluSiva, mRNA trivalent), 90653 (Fluad), 90656, 90657, 90658 (Fluzone), 90660 (FluMist), 90661 (Flucelvax), 90662 (Fluzone High-Dose), 90673 (Flublok) — 2026-27 season | G0008 | Once per flu season; more if medically necessary |
COVID-19 | 91319/91320 (Comirnaty), 91321/91322 (Spikevax), 91323 (mNexspike), 91304 (Nuvaxovid) — check the current CMS list as 2026-27 formulation codes are released | 90480 | Per current FDA/CDC recommendations; no once-per-season limit |
Pneumococcal | 90671 (PCV15, Vaxneuvance), 90677 (PCV20, Prevnar 20), 90684 (PCV21, Capvaxive), 90732 (PPSV23, Pneumovax 23), 90670 (PCV13, legacy) | G0009 | One PCV dose for patients who haven't been vaccinated; if PCV15 is given, PPSV23 follows one year or more later; patients who completed PCV13 + PPSV23 may get PCV20/PCV21 five years or more after the last dose |
Hepatitis B | 90739 (Heplisav-B), 90746 (Engerix-B / Recombivax HB), 90743, 90744, 90740/90747 (dialysis formulations) | G0010 | Covered only for intermediate/high-risk patients (e.g. ESRD/dialysis, diabetes, hemophilia); the claim must include the ordering physician's name and NPI |
Home administration add-on (any of the above given in the patient's home) | — | M0201 | Paid in place of/alongside the standard admin fee per CMS rules |
Diagnosis for all preventive vaccine encounters | Z23 | — | Treatment vaccines (tetanus/rabies after injury or exposure) instead use the injury/exposure diagnosis |
Tip: MedMe prefills each line's charge amount from your pharmacy's fee schedule when a rate is on file, so there is no need to look up pricing. All four preventive vaccine families are $0 to the patient: no coinsurance, no deductible.
Reminder: Same-day flu + COVID: When a patient receives a COVID-19 vaccine and a flu (or other Part B) vaccine on the same day, Medicare requires modifier 59 on the second administration code (e.g. 90480 and G0008-59). Without it, one of the administration lines may be denied. When both vaccines are billed on one claim, each claim template adds its own lines, so add the modifier to the second administration line before submitting.
Before You Bill: Pharmacy Requirements
Your pharmacy must be set up for Medicare Part B billing before the first claim goes out. These are completed during MedMe onboarding:
Medicare enrollment (PECOS) for the pharmacy, with an active PTAN, including a Mass Immunizer PTAN if your pharmacy enrolled as a mass immunizer for vaccine billing.
NPIs on file: the pharmacy's Type 2 NPI and the Type 1 NPI for each pharmacist who will administer vaccines.
EDI enrolment with your Medicare Administrative Contractor (MAC) for claims, and for electronic remittances (ERA) so payment details appear on the claim in MedMe. MedMe completes these on your behalf during onboarding.
Warning: Do not submit Medicare claims until the MedMe RCM team confirms that your Medicare enrollment and your EDI enrolment with the MAC are complete. Claims sent before the EDI enrolment is complete are rejected, and services provided before your Medicare enrollment is effective often cannot be billed at all.
Some payers also require a separate enrolment before eligibility checks work. For the full list of enrolments, see Medical Billing 101: What to Know Before Submitting Claims in MedMe.
Step 1: Patient Intake, What to Collect and Ask
Most vaccine claim problems are created at intake. Two minutes of verification here prevents weeks of denial follow-up later.
MedMe collects insurance at patient intake by default. When a patient books through your MedMe scheduling link (or completes walk-in intake), they are prompted to enter their medical insurance, and it is saved to their patient profile automatically; for most patients, no manual entry is needed. Pharmacy staff should still review the insurance on the patient profile for completeness and accuracy, since patients frequently enter their pharmacy card where their medical plan should be.
Pharmacy staff can also add or update insurance from the Insurance card on the patient profile. Select +, then Add Insurance Attachment to upload the insurance card; MedMe scans the card and prefills the payer and subscriber fields for review. See How to Add and Manage a Patient's Insurance in MedMe.
Verify at the counter:
The patient's medical insurance card(s). For Medicare patients this is one of: the red, white, and blue Original Medicare card showing the patient's Medicare Beneficiary Identifier (MBI), which is what you need for a Part B claim, or a Medicare Advantage plan card (UnitedHealthcare, Humana, Aetna, etc.). If the patient has Medicare Advantage, the claim goes to that plan, not to Original Medicare.
The patient's pharmacy benefit card as well (BIN / PCN / Group / Member ID). MedMe doesn't store drug-benefit details, so add them to the patient's profile in your pharmacy management system; that's your fallback path if the medical claim can't be completed (see PBM re-submission below).
Demographics exactly as they appear with Medicare: full legal name spelling, date of birth, and address. Mismatches are a leading cause of failed eligibility checks and rejected claims.
Ask:
"Do you have Original Medicare, or is your Medicare through a private plan like Humana or UnitedHealthcare?" Many patients say "I have Medicare" when they are enrolled in a Medicare Advantage plan. Always confirm with the card.
"Do you have any other insurance, such as a supplement, retiree coverage, or coverage through a spouse?" This determines whether a secondary payer exists.
"Have you already had a flu shot this season?" A second same-season flu vaccine without medical necessity will be denied as a duplicate/frequency issue.
"When was your last COVID-19 vaccine?" Confirm the patient is due per current recommendations.
Reminder: For Part B claims, the payer on file must be the patient's medical coverage, not a drug plan (e.g. OptumRx, Caremark, Express Scripts). If the profile shows a PBM as the medical insurance, correct it before running eligibility.
Step 2: Run the Insurance Eligibility Check
Once insurance is on the patient profile, run an eligibility check before (or at) the visit. MedMe sends a real-time eligibility inquiry to the payer and returns the response in seconds to a couple of minutes.
Open the patient profile and locate the Insurance card.
Select the verify button on the insurance row, confirm the Date of Service, and select Verify.
Review the response in the Insurance Details modal: Subscriber Info shows the subscriber, and Service Types shows the benefit details.
What to look for on a Medicare eligibility response:
Coverage status, Active. Confirms the patient's Part B coverage is active for the date of service.
Entered-in-error. The details sent didn't match the payer's records, usually a wrong MBI, wrong payer selection, or a name/DOB mismatch. Correct the profile and re-run.
Deductible / coinsurance amounts. For flu and COVID-19 vaccines these do not apply; the patient owes $0 regardless of deductible status, so there is normally no patient payment to collect for these services.
Please Note: A missing or failed eligibility response does not always mean the patient is uninsured. Some payers only return eligibility to enrolled providers, so a message that the provider is not on file usually means the pharmacy's eligibility enrolment with that payer is not complete. If the patient presents a valid Medicare card and the details are verified, you can proceed and let the claim adjudicate; check with the MedMe RCM team if the problem continues.
For a full walkthrough of the eligibility feature, see How to Check Insurance Eligibility in MedMe.
Step 3: Document the Encounter and Create the Claim
After administering the vaccine, complete the encounter documentation as usual, then create the claim from the appointment.
On the patient profile, open the appointment's tab and select + in the Claims card. The Create Claim modal opens linked to the appointment, with the service lines prefilled from your pharmacy's flu or COVID-19 claim template.
Confirm the payer. The Payer field defaults to the patient's primary insurance. For a Part B claim it must be Original Medicare, not a Medicare Advantage plan or a drug plan.
Confirm the CPT / HCPCS codes. The template suggests the vaccine product code and the administration code (G0008 for flu, 90480 for COVID-19). Verify that the product code matches the vaccine actually administered.
Confirm the diagnosis. Z23 applies to every vaccine line.
Confirm the units. Administration codes and standard vaccine products are 1 unit.
Select the Rendering Provider, the pharmacist who administered the vaccine, and confirm the Billing Provider.
Select Submit for Billing. The claim moves to Ready for Submission and is sent overnight.
Flu and COVID-19 on the same day
When a patient receives both vaccines at the same visit, both appointments can be billed on one claim. Open the claim from one appointment, then add the other under Include same-day appointment: in Linked Entity. Each appointment adds the lines from its own claim template.
Add modifier 59 to the second administration code (for example G0008-59). MedMe does not add it automatically when two templates are combined.
If a line is missing Z23, select Copy ICD Codes from Service 1 above that line's Diagnosis (ICD) field to copy the codes from the first line.
Reminder: After selecting Submit for Billing, there are 24 hours to select Undo before the claim is sent. After it is sent, a rejected or denied claim can be corrected with Edit and sent again with Resubmit.
For every field on the claim, see How to Create and Submit a Claim in MedMe.
Step 4: Track Your Claim
Track the claim on the Claims page, the patient's Billing tab, or the appointment's Claims card:
Once the claim is sent, its status is Submitted, then Accepted when the clearinghouse and payer acknowledge it.
Medicare adjudication typically completes in about 14 days; payment follows by direct deposit shortly after the remittance is issued.
The final status is Paid, Partially Paid, or Denied. The payer's reason codes appear on the claim's Remittances tab when a claim isn't paid in full.
Tip: The Timely filing filter on the Claims page lists draft, rejected, and denied claims with the oldest date of service first.
Handling Denials and Rejections
Vaccine claims are among the cleanest claims in medical billing; most denials trace back to a small set of causes. When a claim is denied, the remittance includes a CARC (reason) code.
Please Note: The MedMe RCM team monitors your pharmacy's claims and helps resolve rejections and denials. The table below helps you assess the most common issues on your own.
What you see | What it usually means | What to do |
CO-109, Not covered by this payer/contractor | Patient is enrolled in a Medicare Advantage plan, so Original Medicare has no jurisdiction | Re-run eligibility, add the Medicare Advantage plan to the patient's insurance and create a new claim to it, or re-bill through the pharmacy benefit (see next section). Do not appeal to Medicare; it can't pay a claim it has no jurisdiction over |
Patient not found / ID mismatch (rejection) | MBI, name spelling, or DOB doesn't match Medicare's records | Verify against the Medicare card, correct the insurance on the patient profile, then Edit the claim and Resubmit |
CO-18, Duplicate | Same vaccine already billed for this patient (e.g. second flu shot this season, or the claim was submitted twice) | Confirm with the patient/records; if it's a true duplicate, no action; if medically necessary, contact the MedMe RCM team to review |
Administration line denied when flu + COVID same day | Missing modifier 59 on the second administration code | Edit the claim, add modifier 59 to the second administration line, and Resubmit |
CO-16, Missing/incomplete information | A required field (NPI, POS, etc.) was missing or invalid | Review the remark codes on the Remittances tab, correct the claim with Edit, and Resubmit |
Vaccine not covered under Part B | A Part D vaccine (e.g. Shingrix, RSV, Tdap) was billed as a medical claim | Re-bill through the pharmacy benefit, see next section |
Medicare's timely filing limit is 12 months from the date of service, so act on denials promptly. If a denial reason isn't clear, contact the MedMe RCM team. For the full steps, see How to Fix and Resubmit a Rejected or Denied Claim in MedMe.
When to Use the Drug Benefit Instead (PBM Re-Submission)
Sometimes the medical claim isn't the right path, or fails, and the vaccine should be billed through the patient's pharmacy (drug) benefit instead. This is why we recommend collecting the patient's drug benefit card (BIN / PCN / Group / Member ID) at intake and adding it to their profile in your pharmacy management system, even for a Part B vaccine; MedMe doesn't store drug-benefit details.
When this applies:
The patient has a Medicare Advantage plan (MA-PD). Many MA-PD plans process flu and COVID-19 vaccines administered at a pharmacy through the pharmacy benefit at the point of sale. If your Part B claim was denied CO-109 and your pharmacy isn't contracted with the patient's MA plan for medical claims, running the vaccine through the plan's PBM in your pharmacy management system is usually the fastest way to get paid.
The vaccine is a Part D vaccine. Shingles, RSV, Tdap, and most other adult vaccines are never Part B for prevention; they belong on an NCPDP claim to the patient's Part D plan. Patients pay $0 for ACIP-recommended vaccines under Part D.
Your Medicare Part B enrollment isn't active yet and the patient has drug coverage that will pay, as a stop-gap while enrollment completes.
How to re-submit through the PBM:
Pharmacy-benefit (NCPDP) claims are adjudicated in real time through your pharmacy management system, not through MedMe. To re-submit:
Retrieve the patient's drug benefit details (BIN / PCN / Group / Member ID) from their pharmacy card or their profile in your pharmacy management system.
Process the vaccine claim in your pharmacy management system as you would a dispensing claim, using the vaccine's NDC and your system's vaccine-administration workflow.
The PBM adjudicates in seconds and returns the patient copay (typically $0 for ACIP-recommended vaccines under Part D and most MA-PD plans).
Reminder: Never bill both the medical claim and the pharmacy claim for the same vaccine. If a medical claim is later re-billed to the PBM, don't resubmit the medical claim in MedMe, and if it was accepted, withdraw it with Cancel Claim, to avoid duplicate billing.
Troubleshooting and FAQ
The eligibility check returns "entered-in-error." The submitted details don't match the payer's records. Verify the MBI (11 characters, letters and numbers, no spaces or dashes), exact name spelling, and DOB against the Medicare card, then re-run.
The eligibility check says the provider is not on file. Your pharmacy's eligibility enrolment with that payer may not be complete. Check with the MedMe RCM team.
The patient says they have Medicare but their card is from Humana / UnitedHealthcare / Aetna. That's a Medicare Advantage plan. Bill that plan (if your pharmacy is set up for it) or process the vaccine through the plan's pharmacy benefit in your pharmacy management system; do not submit to Original Medicare.
Can I charge the patient if I'm unsure the claim will pay? For flu and COVID-19 vaccines under Part B there is no patient cost-sharing, and MedMe claims are submitted with assignment accepted. If coverage itself is in doubt, resolve eligibility first rather than collecting payment for these vaccines.
Does the patient need a prescription? No prescription is required for Medicare Part B flu or COVID-19 vaccination, and no physician order or referring provider is needed on the claim.
We ran an off-site flu clinic; is anything different? Yes: the service location on the claim matters (it determines claim routing and place of service). Let the MedMe RCM team know before billing for off-site or employer-clinic events so your setup is configured correctly.
The claim says no claim template was found. The appointment's service doesn't have a claim template yet. Select Contact MedMe to have one set up, or Continue Manually and enter the codes from the table above.
Conclusion
Billing flu and COVID-19 vaccines to Medicare Part B in MedMe comes down to a few habits: confirm your Medicare and EDI enrolments are complete, confirm the patient truly has Original Medicare (card + eligibility check), collect the drug benefit card as a fallback, let the claim template drive the coding (Z23, G0008 / 90480) and add modifier 59 for same-day co-administration, and act on denials quickly, routing Medicare Advantage and Part D situations through the pharmacy benefit instead. Patients pay nothing for these vaccines when billed correctly.
For additional help, contact the MedMe RCM team.
References: CMS Vaccine Pricing · CMS Flu Shot Provider Resources · Medicare Part B Immunization Billing (MLN006799) · Medicare Part D Vaccines (MLN908764)
