Skip to main content
The Call Campaigns page at https://pharmacy.voxo.co/outbound-calling lets you run automated call campaigns that contact patients on behalf of your pharmacy. Campaigns deliver pre-recorded or AI-generated messages and can accept key press responses from patients — such as confirming a pickup or requesting a transfer to staff. The page has three tabs: Report, Campaigns, and Settings.

Campaign types

VOXO Pharmacy supports five campaign types. The campaign type determines the message delivered to patients and the response options they receive.
Campaign typePurpose
Pickup ReminderNotifies patients that a prescription is ready to pick up. The patient can confirm they will pick it up, decline, or request a transfer to the pharmacy.
Refill ReminderReminds patients to refill a prescription before it runs out. Useful for maintenance medications or patients who may forget to request refills on time.
Contact PharmacyGeneral outreach asking the patient to call or visit the pharmacy. Use this for situations that do not fit the pickup or refill reminder templates. Rx Number and Drug Name are optional for this type.
BirthdayPlaces a birthday greeting call to patients on their birthday. Can be queued daily from PMS birthdays — see Birthday campaign settings.
CustomA campaign you define for a specific outreach scenario. Custom campaigns always run in Assistant mode and you can create as many as you need per location.
The four system types — Pickup Reminder, Refill Reminder, Contact Pharmacy, and Birthday — are limited to one campaign per location. If a system type already exists for your location, the wizard greys it out. Custom campaigns have no limit.

Campaign modes

Each campaign runs in one of two modes, which you select when you create or edit a campaign:
  • IVR — The system plays a pre-recorded or text-to-speech menu and collects key press responses from the patient.
  • Assistant — The pharmacy agent places the call and handles the interaction conversationally. The agent introduces the call, explains the reason for it, captures the patient’s response, and detects voicemail so the disposition is recorded correctly.
Custom campaigns always run in Assistant mode.

Campaign schedule

Each campaign uses one of two schedule types:
  • Always-on — The campaign places calls continuously during its configured calling hours whenever queued records are present.
  • One-time — The campaign runs once at a specific date and time you select. Useful for a single outreach event such as a clinic day or store closure notice.

Viewing campaign records

The Report tab shows the records associated with your campaigns. Use the campaign type dropdown at the top of the tab to choose which campaign’s records to view — system types are listed first, followed by your custom campaigns. Additional filters let you narrow the results further:
  • Search — find records by patient name or phone number.
  • Status — filter by Queued (call not yet placed), Complete (call attempt finished), or view All.
  • Date range — set a start and end date to limit results to a specific time window.
Each row in the records table represents one patient contact attempt:
ColumnDescription
Rx NumberThe prescription number associated with the record (if applicable)
NameThe patient’s name
NumberThe number the system dialed
Drug NameThe name of the medication (if applicable)
TimestampWhen the call was placed, shown in your local timezone
DurationHow long the call lasted
DispositionHow the call was answered: HUMAN (live person), MACHINE (answering machine or VOICEMAIL), or NO ANSWER
ResultThe patient’s response: CONFIRMED, DENIED, or TRANSFERRED
Use the pagination controls at the bottom of the table to move through large record sets.

Exporting campaign records

Click Export CSV above the records table to download the current view as a CSV file. The export honors your active campaign, date range, status, and search filters.
  • The file downloads directly in your browser — you do not receive an email link.
  • The filename includes the location name, campaign type, and selected date range (for example, Main Street Pharmacy - pickupReminder 5-1-2026-5-15-2026.csv).
  • Timestamps in the CSV are converted to your dashboard’s local timezone.
Exports are capped at 512,000 records. If your selection exceeds that, the export is rejected with a message explaining the limit — narrow the date range or apply more filters and try again.

Managing campaigns

The Campaigns tab lists every campaign configured for your location. Each row shows the campaign name, type, mode, schedule, and status, along with controls to edit, archive, or add records. Use the toolbar to:
  • Search for a campaign by name.
  • Filter by Status — All / Active / Inactive.
  • Toggle between Archived and active campaigns.
  • Click Create Campaign to open the campaign wizard.

Adding records to a campaign

Open a campaign’s row actions to add records. You can import a CSV file or enter records manually. For Pickup Reminder and Refill Reminder campaigns, every record requires a patient name, phone number, Rx Number, and Drug Name. For Contact Pharmacy, Birthday, and Custom campaigns, only the patient name and phone number are required. Rx Number and Drug Name are optional and can be left blank.
Patients who have opted out of voice contact are excluded automatically. Attempting to add a record for an opted-out number is rejected, and pickup-ready or refill-ready uploads sent from PioneerRx and BestRx skip those numbers before they reach the queue.

Importing a CSV file

1

Open the Campaigns tab

On the Call Campaigns page, select the Campaigns tab.
2

Choose Add records

On the campaign you want to add records to, open the row actions and select Add records → Import CSV.
3

Prepare your file

Format your CSV with the columns your campaign type requires (patient name, phone number, and Rx Number / Drug Name where applicable). Download the example CSV from the dialog if you need a template.
4

Upload the file

Drag the CSV into the upload zone or click to browse. The dialog steps you through mapping each CSV column to the campaign field it represents, then previews the first five rows so you can confirm the mapping.
5

Confirm the import

Review the preview and click Import. The records are added to the campaign queue and calls go out according to the campaign’s schedule and calling hours.

Adding records manually

1

Open Add records

On the campaign row, select Add records → Manual entry.
2

Enter patient information

Fill in the patient name and phone number, plus Rx Number and Drug Name when the campaign type requires them. Optional fields are labeled (Optional) and can be left blank.
3

Add the record

Click Add to save the record. Repeat for each additional patient.
4

Close the dialog

When you have finished, close the dialog. The records appear in the campaign with a Queued status.

Creating a campaign

Campaigns are created with a step-by-step wizard from the Campaigns tab.
1

Open the wizard

On the Campaigns tab, click Create Campaign.
2

Pick a type, name, mode, and schedule

Choose the campaign type — Pickup Reminder, Refill Reminder, Contact Pharmacy, Birthday, or Custom — and enter a name that identifies the campaign in your list. Pick Assistant or IVR mode (Custom is Assistant-only). Then choose Always-on or One-time; for one-time, set the date and time the campaign should run.
3

Configure calling hours and message

Select the business hours block that defines when calls can be placed. For IVR mode, pick an audio file to play as the Initial message. For Assistant mode, write a short Description of what the campaign is about — the agent uses it to introduce the call.
4

Set a transfer destination

Choose the extension, queue, call group, or custom destination patients are connected to if they request a transfer to staff.
5

Review and save

Confirm the summary, then click Save. The campaign appears in the Campaigns tab list. You can now add records to it.
A campaign only places calls during the calling hours you configure. Records added outside that window stay queued until the next allowed time block.

Editing or archiving a campaign

Click a campaign row to open the wizard in edit mode. Type changes are locked once a campaign exists; other fields can be updated and saved. To archive a campaign, use the row actions. Archived campaigns are hidden from the default list — toggle Archived on the toolbar to view them, and restore one by un-archiving from its row actions.

Campaign settings

The Settings tab holds location-wide settings that apply across your campaigns.

Birthday campaign settings

The Birthday Campaign Settings card on the Settings tab includes:
  • Enable Automated Birthday Calls — a toggle that, when on, runs a daily job that pulls today’s birthdays from your PMS and queues them into your location’s Birthday campaign.
The toggle is only effective once a Birthday campaign has been created for your location. If you turn it on without a configured Birthday campaign, the dashboard surfaces an error and the setting is not saved.

Campaign reports

Aggregate metrics for your campaigns are available within the Report tab when a campaign is selected. Use them to evaluate how well your campaigns are reaching patients. Summary stats:
  • Total Calls — the number of call attempts placed in the reporting period.
  • Completed Calls — calls that reached a conclusion (answered, voicemail, or no answer).
  • Answered Calls — calls answered by a live person.
  • Transferred Calls — calls where the patient chose to be transferred to pharmacy staff.
  • Voicemail — calls that reached an answering machine.
Charts:
  • Human vs. voicemail breakdown — a pie chart showing the proportion of calls answered by a live person versus those that went to voicemail.
  • Confirmed / denied / transferred breakdown — a bar chart showing the distribution of patient responses.
Use these metrics to assess whether your campaign messages are landing effectively and whether the right patients are being reached at the right time.