Call records are at the heart of usage billing. Every phone call, SMS, or data session handled by your carriers produces a call detail record (CDR). The platform imports these CDRs, rates them against your tariffs, and turns them into charges on your customers’ invoices.
Each call has two cost perspectives:
- Retail cost: what your customer pays, based on the tariff assigned to their number
- Wholesale cost: what your carrier charges you, as reported in the CDR file
The difference between these is your margin.
Where calls appear
Calls are shown on several pages throughout the platform. Each page shows calls filtered to the relevant context, and offers different tabs depending on what’s useful.
| Page | Tabs available |
|---|---|
| Number | Charts, Unbilled Calls, Calls (combined), Call Details, Deleted Calls |
| Customer | Charts, Calls (combined), Call Details, Deleted Calls |
| Invoice | Charts, Calls (combined), Call Details |
| Transaction | Calls (combined), Call Details |
Every tab shows a filterable, sortable list with CSV download options.
Combined Calls vs Call Details
These two views show the same underlying call data, but present it differently. The distinction matters when your numbers handle inbound calls that are forwarded on to another destination.
A-leg and B-leg calls
When a call arrives at a billed number and is forwarded to another destination, the platform records two separate legs:
- A-leg (inbound): the external caller rings your billed number
- B-leg (outbound): your billed number forwards the call to the final destination
Each leg has its own cost. The A-leg has an inbound cost from the carrier, and the B-leg has an outbound cost for the forwarded portion.
Calls tab (combined view)
The Calls tab merges both legs into a single row. It shows the third-party caller, the final destination, and the total cost across both legs. This prevents double-counting and gives you the clearest picture of what each call actually cost.
The combined view uses the B-leg call type where available, since the outbound portion typically determines the billing classification.
Call Details tab
The Call Details tab shows every leg as its own row. Use this when you need to:
- See costs broken down by leg
- Check which carrier handled each leg
- Investigate rating or routing queries
- View the raw CDR data for a specific leg
Example: an inbound call with two legs
A customer calls 020 7946 0000 (your billed number). The call forwards to 0121 496 0000 (the destination).
The platform creates two CDR records:
- A-leg: external caller → 020 7946 0000 (inbound, 2.5p)
- B-leg: 020 7946 0000 → 0121 496 0000 (outbound, 1.2p)
In the Call Details tab, you see two rows with separate costs.
In the Calls tab (combined), you see one row showing the external caller, the destination 0121 496 0000, and a total retail cost of 3.7p.
Without the combined view, you’d see double the call count and could misread the true cost of each call.
Admin view vs customer view
Call lists have two viewing modes:
Admin view
The standard view for platform users. It shows all cost fields, including:
- Wholesale costs (what the carrier charges you)
- Calculated wholesale costs (from your internal rate tables)
- Profit margins
- Full termination numbers
- Carrier information and CDR file references
Customer view
A simplified view suitable for sharing with end customers. It:
- Hides all wholesale cost fields
- Excludes free-to-caller numbers from the display
- Shows simplified termination numbers
- Removes carrier-specific information
Customer view CSVs are available from the download menu on each calls page. Use these when providing call data to your customers.
Unbilled calls
The Unbilled Calls tab appears only on Number pages. It shows calls that have been imported and rated but haven’t yet appeared on an invoice.
These calls are waiting for the next billing run. Once a billing run produces an invoice for the customer, the calls move from “unbilled” to the standard Calls and Call Details tabs.
Unbilled calls are useful for:
- Checking that CDR imports are arriving correctly
- Previewing what will appear on the next invoice
- Spotting rating issues before invoices go out
Deleted calls
The Deleted Calls tab provides an audit trail of call records that have been removed. It appears on Number and Customer pages for users with the appropriate permissions.
Each deleted call record retains the original CDR data (dates, duration, numbers, wholesale costs) along with a reference to the user activity log entry that recorded the deletion.
Users with the right permissions can restore deleted calls if they were removed in error.
Deleted call records are not kept permanently. After a retention period, they are fully removed from the platform and made available through disaster recovery files.
Key fields
Here are the most important fields you’ll encounter on call records:
| Field | What it shows |
|---|---|
| Billed Number (CDR) | The number as it appeared in the carrier’s CDR file |
| Third Party Number | The external caller (inbound) or destination (outbound) |
| Termination Number | Where the call ultimately terminated |
| Call Leg | Whether this is an A-leg (inbound) or B-leg (outbound) |
| Call Type | The billing classification (e.g. UK Geographic, UK Mobile, International) |
| Rating Period | The time band applied (daytime, evening, weekend) |
| Duration (s) | Call length in seconds |
| Retail Cost (p) | What the customer pays, in pence, before discounts |
| Retail Cost (Discounted) (p) | What the customer pays after discount plans are applied |
| Wholesale Cost (p) | What the carrier charged, in pence |
| Carrier | The carrier that provided the service |
| CDR File | Which import file contained this call |
For the full list of fields, including cost breakdowns and surcharge components, see the Calls API endpoint.
Call processing
CDR import
Call records are imported from carrier CDR files. The platform processes these files, matches calls to your numbers, and rates them against the appropriate tariffs. See Supply Files for details on CDR file imports.
Rating
Each call is rated through this process:
- Match the call to a number on the platform
- Identify the call type from number analysis
- Look up the rate from the number’s tariff
- Apply any discount plans
- Calculate surcharges (access charges, mobile origination, etc.)
- Add the call to the customer’s unbilled usage
Rerating
If tariffs change or a call was rated incorrectly, calls can be rerated. This recalculates the retail cost using updated tariff rates while keeping the original CDR data intact.