Refunds / Cancellations Guide

This guide explains how refunds and cancellations work from a Customer Support and clinic operations point of view. It covers order refunds, order cancellations, subscription cancellations, scheduled cancellations, Beluga visit cancellation, pharmacy voids, intake rejection cancellation behavior, and when CS should escalate.

Key Rule

Refunds and cancellations are related, but they are not the same thing.

  • Refunding an order sends money back through the original payment gateway and marks the order REFUNDED.
  • Canceling an order changes operational status to CANCELLED.
  • Canceling a subscription stops future billing.
  • Canceling a Beluga visit updates the Beluga medical visit state only.
  • Voiding a pharmacy order updates the pharmacy integration only.

CS should always verify which thing needs to happen before taking action.

Main Statuses

Order Statuses

Relevant order statuses:

  • CANCELLED
  • REFUNDED
  • REJECTED
  • RETURNED
  • SHIPPED
  • COMPLETED

Important: once an order is REFUNDED, it is locked from normal status edits.

Invoice Statuses

Relevant invoice statuses:

  • SENT
  • PAID
  • CANCELLED

When an order is refunded through the app, the linked invoice is marked CANCELLED.

Subscription Statuses

Relevant subscription statuses:

  • ACTIVE
  • PAUSED
  • CANCELLED
  • EXPIRED

Cancelled subscriptions cannot be reactivated in the app.

Order Refunds

Order refunds are handled from EMR order tools by changing the order status to:

  • REFUNDED

What the app does:

  1. finds the linked invoice
  2. finds the original successful payment
  3. refunds through the same gateway as the original payment
  4. creates a new payment record with status REFUNDED
  5. marks the invoice CANCELLED
  6. marks the order REFUNDED
  7. writes audit history
  8. fires order.refunded and order.updated workflows

Supported gateways:

  • Stripe
  • NMI

If no successful payment exists, the app cannot refund the order automatically.

What Refund Does Not Automatically Do

Refunding an order does not necessarily:

  • cancel the patient's subscription
  • cancel a Beluga visit
  • void a pharmacy order
  • stop a shipment already in progress
  • reverse an intake decision
  • undo prescription records
  • cancel a replacement subscription from a switch

CS must check related records before and after refunding.

When Refund Can Fail

Refund can fail when:

  • order has no invoice
  • invoice has no successful payment
  • original payment has no transaction id
  • gateway refund fails
  • payment gateway is not configured
  • gateway credentials changed or are invalid
  • order is already refunded

If refund fails, do not mark the order refunded manually. Escalate to billing/admin operations.

Order Cancellation

Order cancellation means the order status becomes:

  • CANCELLED

This is operational cancellation. It does not automatically prove money was refunded.

Order cancellation may be used when:

  • order should not proceed
  • order was created by mistake
  • order is unpaid and should be closed
  • fulfillment should stop before shipment
  • pharmacy or medical review should not continue

CS should check invoice/payment status before canceling a paid order. If the patient needs money back, a refund may also be required.

Subscription Cancellation

Subscriptions can be canceled from:

  • EMR -> Subscriptions
  • EMR -> Patient Profile -> Subscriptions
  • Patient Portal -> Subscriptions, when allowed

When canceled:

  • subscription status becomes CANCELLED
  • cancelledAt is set
  • future billing stops
  • subscription.cancelled workflow may fire
  • linked pending intake cleanup may run

Important:

  • cancelled subscriptions cannot be reactivated
  • cancellation does not automatically refund past orders
  • cancellation does not automatically cancel paid orders already created
  • cancellation does not automatically stop a shipment already in progress

Patient Cancellation Limits

Patients may be blocked from pausing or canceling if the subscription still has a financed recovery balance.

In that case, the app may show scheduled cancellation behavior instead of immediate cancellation.

CS explanation:

This subscription still has remaining financed balance. Cancellation can be scheduled after the remaining recovery payments are complete, or billing/admin can review the account.

Scheduled Subscription Cancellation

Scheduled cancellation is used when the subscription should cancel after required recovery/payment-only cycles finish.

What happens:

  1. cancellation request is stored on the subscription
  2. subscription continues through required recovery cycles
  3. after the final required payment-only phase completes, the app marks the subscription CANCELLED
  4. cancellation workflow fires

Scheduled cancellation can be canceled before it executes.

CS should check scheduled cancellation notes before telling a patient their subscription is still active unexpectedly.

Intake Rejection Cancellation

When medical staff rejects an intake response:

  • linked order can be marked REJECTED
  • linked subscriptions can be marked CANCELLED
  • subscription cancellation workflows can fire
  • pending intake cleanup can run

Use Needs Correction instead of rejection when the patient should fix answers and continue.

CS note: if a subscription was canceled because intake was rejected by mistake, escalate. Reversal may require manual review.

Beluga Visit Cancellation

Beluga visit cancellation is separate from HLC order/subscription cancellation.

Staff can cancel a Beluga visit from:

  • EMR -> Orders -> Beluga Telehealth
  • EMR -> Beluga Logs

What it does:

  • calls Beluga cancel visit endpoint
  • updates Beluga visit status in HLC
  • may mark Beluga resolved status closed

What it does not automatically do:

  • refund the patient
  • cancel the HLC order
  • cancel the subscription
  • void pharmacy fulfillment

Escalate before canceling Beluga if payment, prescription, fulfillment, or subscription impact is unclear.

Pharmacy Voids and Shipment Cancellation

Pharmacy cancellation depends on the pharmacy/integration.

DispensePro supports a void action before shipment in the integration API. When successful, the app updates the order's DispensePro status to:

  • voided

This is not the same as refunding the order or canceling the subscription.

For Beluga pharmacies, OWN pharmacies, and Belmar/LifeFile, CS should verify the fulfillment state and pharmacy process before promising a cancellation.

If an order has already shipped, cancellation may no longer be possible and the case may become a return/refund policy issue.

Subscription Switching and Payoff Refunds

Subscription switching can create separate financial records:

  • payoff order/invoice
  • replacement subscription order/invoice

Important:

  • payoff money and replacement subscription money are separate
  • refunding one does not automatically refund the other
  • old subscription is canceled only after replacement subscription charge succeeds
  • payoff should not be automatically refunded just because replacement charge failed

Escalate switch-related refunds to billing/admin operations.

Payment Recovery Cancellations

If a subscription renewal payment fails:

  • related order may be AWAITING_PAYMENT
  • subscription may be PAUSED
  • recovery invoice may remain open

Do not create a duplicate order or cancel the subscription before checking whether the patient only needs to update/pay the recovery invoice.

See Payment Recovery Guide.

What CS Should Check Before Refunding

Check:

  • order number
  • order status
  • invoice status
  • original payment status
  • original gateway: Stripe or NMI
  • transaction id exists
  • whether order is already shipped
  • whether pharmacy fulfillment has started
  • whether Beluga visit exists
  • whether prescription was written
  • whether order is linked to a subscription
  • whether refund should also trigger cancellation or manual follow-up

What CS Should Check Before Canceling

Check:

  • is this an order, subscription, Beluga visit, or pharmacy cancellation?
  • order payment/invoice status
  • shipment status
  • prescription status
  • Beluga visit status
  • pharmacy integration status
  • subscription status
  • recovery balance
  • pending switch request
  • pending dose change
  • patient refund expectation

Common Patient Questions

Does canceling my subscription refund my last charge?

No. Subscription cancellation stops future billing. A refund is a separate action and depends on billing/refund policy.

I canceled my order. Why do I not see a refund?

Order cancellation and refund are different. CS should check whether a refund was actually processed through the payment gateway.

Can you cancel after it shipped?

It may be too late to cancel shipment. CS should check fulfillment/pharmacy status and follow return/refund policy.

Why was my subscription canceled after intake review?

If intake was rejected, linked subscriptions may be canceled. CS should review the intake rejection note and escalate to medical operations if more explanation is needed.

Can a refunded order be edited?

No. Refunded orders are locked from normal status edits.

Troubleshooting

Refund button/status fails

Check:

  • order has an invoice
  • invoice has a successful payment
  • payment has transaction id
  • gateway configuration is active
  • order is not already refunded

Escalate if the gateway refund failed.

Order is cancelled but patient was charged

Check:

  • invoice status
  • payment records
  • whether a REFUNDED payment record exists
  • gateway dashboard
  • audit history

If no refund exists, cancellation alone did not return funds.

Subscription canceled but order still active

Check:

  • related orders
  • order status
  • invoice/payment status
  • fulfillment/shipping status
  • Beluga/pharmacy status

Subscription cancellation stops future billing but does not automatically close every existing order.

Patient cannot cancel subscription

Check:

  • recovery balance
  • switch state
  • scheduled cancellation availability
  • subscription status
  • unpaid recovery invoice

Escalate if cancellation is blocked but the account should be reviewed manually.

Intake rejection canceled subscription by mistake

Escalate to medical operations/admin. Reversing this safely may require reviewing the order, intake response, subscription, payment, and patient communications.

Beluga visit canceled but order still active

That can be expected. Beluga visit cancellation does not automatically cancel the HLC order, refund payment, or cancel subscription.

CS Escalation Checklist

Escalate to billing/admin, fulfillment, or medical operations when:

  • gateway refund failed
  • patient was charged but no refundable payment is found
  • order is refunded but shipment/pharmacy still appears active
  • subscription was canceled unexpectedly
  • canceled subscription billed again
  • patient cannot cancel due to recovery balance but needs manual review
  • intake rejection cancellation appears incorrect
  • Beluga visit/order/subscription statuses disagree
  • switch payoff or replacement subscription refund is requested
  • refund policy decision is unclear

Include these details when escalating:

  • patient name/email
  • order number
  • invoice number
  • payment id/transaction id, if visible
  • gateway: Stripe or NMI
  • order status
  • invoice status
  • payment/refund status
  • subscription id/status, if linked
  • Beluga visit status, if linked
  • pharmacy/fulfillment status
  • reason patient is requesting refund/cancellation
  • screenshot or exact patient/staff-facing message