Bulk Rate Updates
Overview
Section titled “Overview”Changing one rate on a tariff is quick. Changing three hundred is not. Bulk rate updates let you download a tariff’s rates as a spreadsheet, make your changes there, and upload the file back. The platform checks every row before anything is saved, and keeps a full record of what changed.
This works on call tariffs and fixed fee tariffs, and it understands the two things that make rates special:
- Based-upon rates: a tariff can borrow its rates from a parent tariff, so the rate sheet you see is a mix of the tariff’s own rates and borrowed ones. See Tariff inheritance.
- Dated versions: where rate dates are enabled, changing a price usually means adding a new version of the rate that starts on a chosen date, rather than overwriting the old one. See Dated rates.
You need Expert Mode and the Bulk Action Files permission. The upload itself follows the same test-then-apply steps as every bulk action: nothing changes until you have seen the per-row results and chosen to apply them.
Getting Started
Section titled “Getting Started”Open the tariff and go to Expert > Bulk Actions. You will see Bulk Edit Rates and Bulk Add Rates.
- Download a rate sheet (the choices are described below)
- Make your changes in Excel or another spreadsheet
- Upload the file back on the same page
- Review the test results, then click “Apply”
Choosing a Download
Section titled “Choosing a Download”Bulk Edit sheets
Section titled “Bulk Edit sheets”- “All rates (including based-upon)”: everything the tariff’s rates tab shows, including rates borrowed from the parent tariff. This is the sheet to use for most jobs.
- “Direct rates only”: just the rates set on this tariff itself.
The sheets are laid out in the same order as the on-screen rate list. Rates belonging to this tariff have an id; borrowed rates do not, which is how the platform tells them apart when you upload.
Bulk Add templates
Section titled “Bulk Add templates”- “Pre-filled with all rates (including based-upon)” and “Pre-filled with direct rates only”: the current rates, ready to be changed and re-uploaded as new rates. Where dated versions are in use, these sheets show each rate’s latest version with the date columns left blank, so you can fill in the new start date.
- “Empty with call types” (call tariffs only): a row for every call type, with just the Call Type and Call Time columns filled in. This is the quickest way to price a brand-new tariff, because you never have to type a call type name.
- “Blank”: just the headers.
What Happens When You Upload
Section titled “What Happens When You Upload”- A row with an id updates that rate. The usual spreadsheet conventions apply: a blank cell clears the value, a deleted column is left alone, and rows you have not touched are skipped as “No changes”.
- A row without an id creates a new rate. Where dated versions are in use, this is how you add a new version. The platform refuses a row that duplicates an existing rate’s call type and start date, so uploading the same file twice cannot create duplicates.
- One file can do both at once: corrections alongside new rates.
Borrowed (based-upon) rates
Section titled “Borrowed (based-upon) rates”Changing a borrowed rate never touches the parent tariff. Instead, the platform saves your change on the tariff you are working on:
- On a call tariff, only the values you changed are saved. Everything else on that rate keeps following the parent, including the parent’s future price changes.
- On a fixed fee tariff, the whole amended row is saved on your tariff, because fixed fee rates are borrowed row by row.
Borrowed rows you have not changed are simply skipped, so re-uploading a sheet never breaks the link to the parent by accident.
Bulk Add works differently, on purpose. Adding a row that matches a borrowed rate creates a real copy of it on your tariff. That pins the price: future changes to the parent tariff no longer affect it. So:
- To keep following the parent, use Bulk Edit and only change what you need.
- To pin the current prices, use Bulk Add with a pre-filled sheet.
Sheets from other tariffs
Section titled “Sheets from other tariffs”You can download a sheet from a parent tariff and upload it to a child: the parent’s rate ids are recognised and become new rates on the child. Ids from an unrelated tariff fail their row, so a sheet cannot land on the wrong tariff by mistake.
Call type names
Section titled “Call type names”Call type names in your file are matched the same way as ratesheet imports: exact names, the displayed “Name [BAND]” form, and carrier aliases. A file that uses a carrier’s spelling of a destination still finds the right call type.
Carrier Rate Files
Section titled “Carrier Rate Files”A rate file from a carrier, covering many tariffs at once, goes through Bulk Update instead. Choose the Tariff Rates (or Fixed Fee Tariff Rates) object type and upload the file.
- A “Tariff Name” column sends each row to the right tariff.
- Within the tariff, the platform finds the rate by call type, call time and start date. Common carrier headings such as “Destination”, “PPM” and “Peak” are recognised, and a row with no date matches the rate version currently in effect.
- Fixed fee rates are found by what they apply to (the number, feature and transaction types, and carriers) plus the start date.
- A row for a rate the tariff does not have yet becomes a new rate, so a carrier file re-pricing a based-upon tariff saves just the changed values, exactly as an edit sheet would.
Most carrier files need no extra setup. A couple of optional extras, such as matching a specific carrier’s aliases or creating tariffs that do not exist yet, are switched on with update rules; ask support if you would like a ruleset set up for a supplier’s file.
Reading the Results
Section titled “Reading the Results”Rate files are often large, so the file’s log totals things up by reason rather than making you read every row. For example:
Rows unresolved: 320 no matching call type (e.g. "Karibati Mobile" line 12, ...)Rows failed: 12 A rate for this call type and start date already exists (e.g. lines 2, 3, 4)Rows skipped: 214 Matches the effective (based-upon) rate - no override neededThis tells you which column or value needs fixing without hunting through the results. Each row’s full message is still there in the results grid if you need it.
Related Pages
Section titled “Related Pages”- Call Tariffs: tariff structure, inheritance, dated rates and editing single rates
- Fixed Fee Tariffs: fixed fee rates, priority and inheritance
- Bulk Actions: the test-then-apply steps and audit trail every bulk change follows
- Bulk Edit and Bulk Add: the spreadsheet conventions shared with these sheets
- Bulk Update and Bulk Action Lists: the route carrier rate files take
- Price Increases: percentage increases across a whole tariff, including in bulk