A discount plan reduces or waives call charges after the tariff rates have been calculated. You can offer inclusive minute bundles, data allowances, percentage discounts, fixed per-call savings, or any combination. Discount plans are the building blocks for attractive call packages and bundles.
Key benefits
- Inclusive minutes — give customers a pool of free minutes each billing period
- SMS and event allowances — include a set number of SMS messages or other events per period
- Data allowances — bundle mobile data or broadband usage into the plan
- Free calls by count — offer a fixed number of free calls regardless of duration
- Flexible discounts — percentage, per-call, or per-minute discounts that work independently or together
- Shared allowances — pool allowances across some or all numbers on a customer account
- Compound bundles — cap an allowance with multiple limits (e.g. “500 minutes or £50, whichever comes first”)
How discount plans work
Discount plans work in two stages:
- Fill the pool — features on a customer or number add allowances to a pool of available minutes, calls, data, or cash
- Draw from the pool — during billing, qualifying calls draw from the allowance pool. Calls within the allowance are discounted (fully free, or reduced by the discount percentage/amount). Once the pool is exhausted, remaining calls are charged at the full tariff rate.
The allowance limits (minutes, calls, data, cash) control how many calls receive the discount. If you want the discount to apply to all qualifying calls with no limit, leave all allowance fields blank.
Common allowance types
Discount plans support four types of usage allowance. You can use them individually or combine several in a single plan.
Minutes
The most common allowance type. A pool of free call duration that qualifying calls draw from during billing. Set via the Discounted Minutes field.
Use the feature multiplier to create flexible bundle sizes from a single plan. For example, set Discounted Minutes to 1 and attach the feature with a multiplier of 500 to give the customer 500 free minutes.
SMS and events
A pool of free events, where each SMS or event-based charge counts as one event. Set via the Discounted Events field. The events billing module must be active on your platform.
For example, set Discounted Events to 1 and use a multiplier of 100 to give 100 free SMS per month. Make sure the call type groups on the plan cover SMS or messaging call types.
Data
A pool of free data usage measured in bytes. Set via the Discounted Data (Bytes) field. The data billing module must be active on your platform.
Enter the value in bytes. Common conversions:
- 1 MB = 1,048,576 bytes
- 1 GB = 1,073,741,824 bytes
- 5 GB = 5,368,709,120 bytes
The Round Used Bytes Up To Next field is particularly useful for data allowances, letting you round each data session to the nearest MB or similar unit before deducting from the pool.
Free calls (by count)
A fixed number of free calls regardless of how long each call lasts. Set via the Discounted Calls field.
This is useful when you want to offer something like “50 free calls per month” where call length does not matter. Unlike minutes-based allowances, a 1-minute call and a 30-minute call each consume one unit from the pool.
Combining allowance types
To offer a package covering minutes, SMS, and data, create a separate discount plan for each allowance type, then add all of them to the same feature. Each plan’s allowance is tracked independently, so using up all the minutes does not affect the SMS or data pool.
Do not put multiple allowance types on a single discount plan unless you want them to act as combined limits. When a single plan has both minutes and data set, the allowance stops as soon as either limit is reached (see Compound bundles below).
The discount plan list
View all discount plans from List Discount Plans on the main menu. The list has two tabs:
| Tab | Shows |
|---|---|
| All Discount Plans | Current discount plans (excludes historic by default) |
| Discount Pool Usage | Allowance consumption for active pools |
Bespoke discount plans linked to a specific customer are highlighted in green.
Discount plan details
Name
- Discount Plan Name — the display name for this plan. Not shown to customers.
- Discount Plan Name (Short) — an abbreviated name (up to 10 characters) for reports and summaries.
- Discount Plan Description — optional notes about what this plan provides.
Availability
| Value | Meaning |
|---|---|
| Headline | Shown at the top of plan lists and highlighted |
| Standard | Available for use on any customer |
| Historic | Only usable by customers already on it; hidden from new assignments |
| Base | Used as a template for other plans |
Additional availability fields:
- Customer — restrict this plan to a single customer (leave blank for general use)
- Customer Groups — restrict to customers in these groups
- Currency — the currency for cash values in this plan (when multi-currency is enabled)
Discounts
These fields control the discount applied to each qualifying call that draws from the pool.
- Discount Percent — reduce the call cost by this percentage (e.g. 20% takes a 10p call down to 8p)
- Discount Per Call — reduce the call cost by a fixed amount per call (in pence)
- Discount Per Minute — reduce the call cost by a fixed amount per minute (in pence)
If none of these discount fields are set, calls within the allowance are fully free.
Allowances
Allowances define a pool of free usage that is consumed during billing.
When no allowance limits are set (minutes, calls, data, and cash all left blank), the discount applies to all qualifying calls with no limit. When allowance limits are set, the discount applies only while the pool has remaining allowance.
Allowance limits
You can set one or more limits on a single plan. The allowance is used up when any limit is reached.
| Field | What it limits | Typical use |
|---|---|---|
| Discounted Minutes | Total minutes in the pool | Voice bundles such as “500 inclusive minutes” |
| Discounted Data (Bytes) | Total bytes in the pool (when data billing is active) | Data bundles such as “5 GB per month” |
| Discounted Events | Total events in the pool (when events billing is active) | SMS/messaging bundles such as “100 free texts” |
| Discounted Calls | Total number of calls in the pool | Call-count bundles such as “50 free calls” |
| Cash Discount | Total monetary value of discount available | Value-capped bundles such as “up to £50 of free calls” |
Compound bundles: Set multiple limits to create a bundle such as “500 minutes limited to £50 of value”. The allowance stops when either limit is reached.
Nominal value
- Nominal Value — a reporting-only value representing what you consider the bundle to be worth. Use this to track how much value customers gain compared with the bundle’s nominal cost. It does not affect billing.
Allowance pool behaviour
These fields control how the allowance pool is shared across numbers on a customer account:
- Customer-Wide — when set to Yes, the allowance pool is visible across the whole customer account rather than per-number
- Fill / Use Allowance Pool — whether this plan uses the shared allowance pool system
- Allowance Pool Used By Attached Number — the number that the feature is attached to can draw from this pool
- Allowance Pool Used By All Numbers — all numbers on the customer account can draw from this pool
- Allowance Pool Used By Number Types — only numbers of these types can draw from the pool
For more advanced sharing, you can use named pools. Set a pool name on the discount plan allowance, then configure numbers to draw from that named pool. This lets you create multiple independent pools on the same customer.
Multi-leg calls
- Discount Matching A Leg — for multi-leg inbound calls, set this to Yes to also discount the A leg when it matches a discounted B leg.
Part-free calls
When a call is only partially covered by the remaining allowance, the platform needs to calculate the charge for the uncovered portion:
| Option | Behaviour |
|---|---|
| Re-rate | Re-rates the non-free portion as if it were a standalone call of that shorter duration. Connection fees and rounding apply in full, so the charge may be slightly higher than pro-rata. |
| Pro-rata | Splits the original call cost by a simple ratio of free versus non-free duration. Connection fees and rounding are spread proportionally, giving a lower charge on short overruns. |
Rounding
These fields control how usage is rounded when consuming allowances:
- Round Used Duration Up To Next — round call duration up to the next specified number of seconds before deducting from the pool
- Round Used Bytes Up To Next — round data usage up before deducting (when data billing is active)
- Round Used Events Up To Next — round event count up before deducting (when events billing is active)
- Round Used Cost Up To Next — round cost up to the next specified amount in pence before deducting
Applies to
Call types
You must specify which call types the discount covers. There are three ways to do this, and each has separate selections for Daytime, Evening, and Weekend periods:
- All Call Types — set to Yes to discount every call type. When enabled, the selections below are ignored.
- Standard Call Type Groups — pick from predefined groups such as Major Mobiles or Europe Landlines
- Custom Call Type Groups — pick from groups you have created for commonly-discounted sets of destinations
- Individual Call Types — pick specific call types for a highly bespoke discount
Using call type groups is easier to manage and update than picking individual types.
Carrier filter
- Call Carriers — limit the discount to calls carried by specific carriers. Leave blank to apply to all carriers.
Call cost filter
- Call Costs — limit the discount by cost type: Chargeable, Rebate, or Zero. For example, create a rebate threshold by only applying a discount to rebate calls, so numbers don’t earn rebate until a threshold is reached.
Duration filter
- Minimum Call Duration — only discount calls longer than this (in seconds)
- Maximum Call Duration — only discount calls shorter than this (in seconds)
Use these to offer free short calls, or to exclude very short calls from using up the allowance.
Calls with access charges
Control how calls with access charges (e.g. non-geographic numbers) interact with the discount:
| Option | Behaviour |
|---|---|
| Discount Call | Discount the base call cost only; access charge still applies |
| Discount Call + Access Charge | Discount both the base cost and the access charge |
| Only Discount Access Charge | Leave the base cost alone; discount the access charge only |
| Skip Call (No Discount) | Do not discount calls that have an access charge |
| Don’t Discount | Do not apply any discount to these calls |
| Only Discount Calls with Access Charge | Only discount calls that have an access charge; skip others |
When the weighted discounts module is active, you can also set an Access Charge Weight — a percentage that controls how much allowance these calls consume (e.g. 200% means each minute uses two minutes of allowance).
Calls with origination surcharges
The same six options apply to calls with mobile or payphone origination surcharges:
| Option | Behaviour |
|---|---|
| Discount Call | Discount the base cost only; surcharge still applies |
| Discount Call + Surcharge | Discount both base cost and surcharge |
| Only Discount Surcharge | Discount the surcharge only |
| Skip Call (No Discount) | Do not discount calls with this surcharge |
| Don’t Discount | No discount applied |
| Only Discount Calls with Surcharge | Only discount calls that have this surcharge |
An Origination Surcharge Weight percentage is available when weighted discounts are active.
Calls with recording surcharges
The same six options and weight percentage apply to calls with call recording surcharges.
Call type weights
When the weighted discounts module is active, you can set Use Call Type Weights to Yes. This lets you assign a weight to different call types, so some calls consume allowance at a faster or slower rate. For example, international calls might consume two minutes of allowance for every one minute of call.
Actions
Use the Actions menu on a discount plan for these operations:
- Clone — create an independent copy of the plan with all its settings
- Delete — remove the plan. Only available if it is not in use.
Applying discount plans
There are two stages to getting a discount plan working:
Stage 1: Fill the pool
Add a feature to the customer or number that references the discount plan. The feature creates the allowance pool for each billing period.
When adding the feature, you can set a multiplier. For example, if the discount plan offers 1 free minute per unit, setting a multiplier of 500 gives 500 free minutes. This lets you use the same plan for different allowance sizes.
Allowances can also come from fixed fee tariff rates. When a rate references a discount plan, the billing run adds allowances to the pool each time it creates a service charge from that rate. This is useful when bundle inclusions are part of the carrier pricing rather than set up as separate features.
Stage 2: Draw from the pool
During billing, the platform checks each qualifying call against the available pool. If allowance remains, the call is discounted (fully or partially). The pool is drawn down until the limits are reached.
Which numbers can draw from the pool depends on the sharing settings on the plan:
- Attached number only — only the number with the feature
- All numbers — every number on the customer account
- By number type — only numbers of specified types
- Named pools — numbers configured to use a specific named pool
Feature discount schemes
Feature discount schemes are a separate system for promotional discounts on features (e.g. “free line rental for 3 months”). They work differently from discount plans and are configured on the feature rather than as a separate plan.
Practical examples
500 inclusive UK minutes
Create a discount plan with:
- Discounted Minutes: 1
- Standard Call Type Groups (Daytime): UK Landlines, Major Mobiles
- Standard Call Type Groups (Evening): UK Landlines, Major Mobiles
- Standard Call Type Groups (Weekend): UK Landlines, Major Mobiles
Add a feature to the customer referencing this plan with a multiplier of 500. The customer gets 500 free minutes across UK landline and mobile calls each billing period.
Shared data allowance
Create a discount plan with:
- Discounted Data (Bytes): 1073741824 (1 GB)
- Customer-Wide: Yes
- Allowance Pool Used By All Numbers: Yes
- All Call Types: Yes
All numbers on the customer share a single 1 GB data pool. When any number uses data, it draws from the shared pool.
20% international landline discount
Create a discount plan with:
- Discount Percent: 20
- Standard Call Type Groups (Daytime): International Landline
- Standard Call Type Groups (Evening): International Landline
- Standard Call Type Groups (Weekend): International Landline
Every qualifying international call is charged at 80% of the tariff rate. No allowance pool is used — the discount applies to all calls with no limit.
100 inclusive SMS per month
Create a discount plan with:
- Discounted Events: 1
- Standard Call Type Groups (Daytime): SMS, Messaging (or your SMS-related call type groups)
- Standard Call Type Groups (Evening): SMS, Messaging
- Standard Call Type Groups (Weekend): SMS, Messaging
Add a feature to the customer referencing this plan with a multiplier of 100. Each SMS sent consumes one event from the pool. The events billing module must be active.
50 free calls of any length
Create a discount plan with:
- Discounted Calls: 50
- All Call Types: Yes
Each call the customer makes uses one unit from the pool, regardless of duration. Unlike a minutes-based plan, a 1-minute call and a 60-minute call both count as one call. This is useful for customers who make long calls and prefer predictability.
Combined bundle: minutes + SMS + data
Create three separate discount plans:
- Minutes plan — Discounted Minutes: 1, call type groups set to UK Landlines, Major Mobiles
- SMS plan — Discounted Events: 1, call type groups set to SMS/Messaging
- Data plan — Discounted Data (Bytes): 1073741824 (1 GB), All Call Types: Yes
Add all three plans to the same feature on the customer. Set multipliers on the feature as needed (e.g. 500 for minutes, 100 for SMS).
Each plan’s allowance is tracked independently. Using all 500 minutes does not affect the SMS or data pool. This is the correct way to offer a bundled package covering voice, messaging, and data.
Important: Do not put all three allowance types on a single discount plan. A single plan with multiple limits acts as a compound bundle where the allowance stops as soon as any limit is reached.
Related pages
- Call Tariffs — how usage charges are calculated
- Fixed Fee Tariffs — pricing for non-usage charges
- Features — how features link discount plans to numbers
- Numbers — number setup and plan assignment