Skip to main content
DialNexa batch call recipient files provide the phone numbers and dynamic variable values for outbound campaigns. The create page can download a CSV template based on the selected agent version default variables, then map uploaded recipient headers into the fields DialNexa needs before creating the review table. DialNexa Create Batch Call page showing campaign name, outbound number, template download, uploaded CSV, recipient preview, scheduling, retry controls, draft, and send actions.
CSV files are simple right up until one header has an invisible extra space. Then they become a personality test.

Expected CSV Shape

Keep recipient files boring and predictable.
ColumnPurpose
phone numberRecipient number in a format the selected outbound route can validate. Use full international format when possible.
Dynamic variable columnsValues for placeholders used by the selected published agent version.
Additional columnsCan be shown in the recipient table when parsed, but should not replace required variables.
One recipient per rowEach row represents one outbound call target.
The upload flow reads headers from CSV files and supported spreadsheet files. For Excel uploads, DialNexa converts the mapped sheet data to CSV before sending it for campaign parsing.

Template Behavior

The download template changes with the selected number and agent version.

Agent defaults first

The template uses default dynamic variable keys from the selected agent version when available.

Fallback placeholders

If no agent variables are available, the template includes generic placeholder variable columns.

Recipient preview

Parsed recipients are displayed in a table before launch.

File upload checks

The page validates CSV type and rejects large or invalid uploads.

Match Uploaded Columns

After upload, the Match CSV Columns modal lets you align the file with the selected agent version before the table is created. DialNexa Match CSV Columns modal showing phone number mapping, dynamic variable defaults, unmapped fields, and the confirm action.
Modal areaBehavior
Phone numberAuto-detects common headers such as phone, mobile, contact_number, or telephone. You can choose a different column if needed.
Dynamic variablesAuto-matches exact, case-insensitive, and normalized header names for expected variables.
DefaultsShows agent default values next to variables that have fallbacks.
Unmapped fieldsWarns when expected variables are not mapped. Defaults are used where available, otherwise values are empty.
Extra columnsShows columns that will remain visible in the table but will not be used during calls.
When you confirm the mapping, DialNexa normalizes the selected phone column to phonenumber and renames mapped variable columns to the expected agent variable keys. This lets operators upload files with readable business headers without editing the source spreadsheet first.

Review AI Name Suggestions

If the uploaded file has a mapped name column and fewer than 1,000 leads, the create page can check the names for cleanup suggestions before building the recipient table. This is an optional dashboard review step. If name cleanup fails, DialNexa continues with the original names. The Review AI Name Suggestions modal shows the original value, the suggested value, and row-level controls. DialNexa Review AI Name Suggestions modal showing original names, AI suggestions, row actions, Download CSV, and Proceed.
ControlBehavior
AcceptUses the suggested clean name for that row.
RejectKeeps the original uploaded name.
EditLets the operator type a custom replacement.
Accept All or Reject AllApplies the same decision to every suggested row.
Download CSVDownloads a reviewed CSV before proceeding.
ProceedApplies accepted or edited names, then continues recipient parsing.
For batches over 1,000 contacts, the dashboard skips AI name cleanup and shows a warning. Review names in the source file before upload when large campaigns need standardized salutations.

Duplicate Phone Number Handling

The create page skips duplicate phone numbers by default before the recipient table is built. When the same non-empty phone number appears more than once, DialNexa keeps the first mapped row and removes later rows with that number. After upload, the page shows how many duplicate phone numbers were skipped.
ControlBehavior
Skip duplicate phone numbersEnabled by default before file upload. Leave it on when each phone number should receive one call.
Duplicate non-empty phone numbersOnly the first mapped row for that number is kept. Later rows are removed before campaign parsing.
Empty phone numbersRows without a phone number still pass through so backend validation can report the missing value.
Changing the duplicate settingRemove the uploaded file first, then turn the setting on or off before uploading again.
Turn duplicate skipping off only when repeated calls to the same phone number are intentional for that campaign.

Prepare A Clean File

1

Select the outbound number first

This lets the page know which agent version variables to use.
2

Download the template

Start with headers that match the selected agent.
3

Fill realistic values

Use production-ready names, dates, amounts, and transfer destinations.
4

Upload and inspect rows

Check the preview table before saving or starting.
5

Fix errors before launch

Do not launch a file whose preview already looks wrong.

File Requirements

RequirementValue
File typeCSV or Excel
Maximum file size10 MB
StructureOne recipient per row, headers matching the downloaded template or mapped in the upload modal

When Rows Fail Validation

The upload parser checks recipient phone numbers against the same destination validation rules used by single outbound calls. Duplicate removal happens before this validation when Skip duplicate phone numbers is enabled. Failed rows are grouped by reason, and larger failures offer a downloadable errors CSV. See Common Upload Errors for each error type, what it means, and how to fix the file.

Dynamic Variables

Map variables to CSV columns.

Common Upload Errors

Fix file issues.

Recipient Results

Review row outcomes.