Customers often require the processing of usage data from a number of different Carrier sources. These sources all share a distinct usage format and may contain one or more types of usage (e.g. Data, Voice, SMS …). Mediation is the process of interpreting these usage fields and mapping them to internal constructs that the rating engine can then rate and charge. Usage feeds that are to be mediated can either be pushed into EngageIP programmatically via API or sent to the system via SFTP. Mediation is essentially an exercise in data mapping. Engage IP provides a visual, UI driven mechanism for mapping feed data and transforming it into entities that the core rating engine can interpret.

Screen Shot

Feed Filtering and Exclusions

One or more filters can be applied for any of the sources of data. Filters that can be used to determine if a line in a source data set (File) should be processed through mediation or ignored. As an example, a given source of data may contain a field called Record Type (First Ordinal position on the line) that indicated a “Record Type”. A filter can be setup such that Only lines with a Record Type value of “6” are to be processed. All other lines are ignored.

Conditional Mapping

Many data Sources have variable mappings of source data elements to a Usage record. The mediation process can be set up to account for this. For example, if the line is identified as an "SMS-MO" record the system may use field 5 for the Usage identifier where as if it is SMS-MT it may use field 6. It is also possible to have different source fields mappings based on Conditional statements. For example, a Carrier might send twenty fields. When field 5 has a value of "SMS" the mediation process would use fields 1-6, 10,14,19 ignore the rest and when it has a value of "DATA" it would use 1-6, 9, 11, 13-16. Determination of a usage class is usually a function based on conditions specific to data in the source or the source itself. EngageIP provides options for managing this thereby allowing reuse of rules and consistency in setting Usage Class values.


One or more "normalization" functions can be created to format things like phone numbers, IP addresses into common inputs. The following types of normalization can be performed on the feed:

Normalization Function TypeDefinition
Phone NumberNormalize the Phone Number
CountryNormalize Country and Country Code
CarrierNormalize Carrier
NetworkNormalize the network
Date/TimeNormalize the date and or time
Usage IdentifiersNormalize usage identifiers
Units of TimeNormalize units of measure (time, data etc.)

Mathematical functions like Sum or Multiplication can also be performed on feeds in order to prepare them for rating. For example, a source that sends data usage in Upload and Download will have to have a sum process applied as well as possible normalization on the whole or parts to a standard unit (i.e. KB).

The mediation process may generate exceptions if the incoming feed that does match the mediation rules that were set up for processing the feed. Mediation exceptions are logged in the systems and can be accessed through the operations panel and via reports.