Flexible configuration for number portability lookups

Link copied to clipboard

Number porting allows users to switch from one service provider to another while keeping their phone number. When handling outbound calls from their subscribers, service providers need to identify whether the destination number has been ported to ensure that calls are routed to the correct operator and charged at the correct rate. To determine which network the number belongs to, service providers can either:

  • Receive the information about newly ported numbers from the central authority and insert that data into the internal PortaBilling database. This can be done by using PortaOne Workflows or other tools.
  • Use third-party providers, such as Telnyx, that maintain the database of ported numbers, directly connecting to authorities and offering APIs to retrieve the porting status of a specific phone number. Service providers typically incur costs for each lookup when checking the porting status.

With MR114, a new framework for number portability lookup has been implemented. This allows you to optimize the costs associated with lookups in external number portability services.

The new framework offers the following capabilities:

  • Configuring number portability lookups in a preferred external service not only for voice calls but also for SMS. The SMS messages sent to ported numbers will be correctly routed, guaranteeing delivery to the end users without incurring additional costs for sending an SMS to an “incorrect” network.
    You can use Telnyx service for both voice calls and SMS out-of-the-box or add your preferred number portability service, such as your local provider, that uses ENUM (Telephone Number Mapping) protocol.
  • Configure how the number portability lookups are handled per virtual environment. For example, if you as a service provider operate virtual environments 1 and 2 and lease environments 3 and 4 to your partners, you can choose to limit paid lookups with an external service to environments 1 and 2. The partners can adjust their settings independently.
  • It’s also possible to set up caching and even to use lookup results across environments for additional cost savings. For example, if a user in environment 1 just made a call to +4206021234567 and the lookup shows that a number has been ported to network A, it is highly unlikely that the number will get ported to another network within a few hours. Therefore, there’s no need for another paid lookup when sending a call or SMS to the same number +4206021234567 from any user in environment 1 (or any other environment) shortly after.
  • In an environment setup, you can configure different number portability sources based on the destination. This allows you to apply least-cost number portability lookup, similar to least-cost call routing. For example, if “ABC” offers cheaper lookups for European numbers while “XYZ” provides cheaper lookups for North American numbers, then you can configure the system to use them respectively, thereby saving costs on number lookups.
  • Route SMS correctly based on up-to-date information from a preferred number portability data source.
  • Tailor number portability lookups, optimizing for cost-effectiveness.

How it works

Link copied to clipboard

You can create a set of rules for number portability lookup for each environment. These rules define which of the predefined number portability data sources to use depending on the service (voice call or SMS) and the destination phone prefix.

Currently, you can use the following number portability data sources out-of-the-box: internal database, Telnyx (via ENUM/XML), or HLR lookup for SMS.

To set up failover, you can create multiple rules for the same service and destination but with different number portability data sources. In this scenario, the system will prioritize these rules in the order they are configured. For instance, when delivering an SMS, the system will first attempt to use the portability data source from the first matching rule (e.g., Telnyx). However, if Telnyx is unavailable (e.g., due to a failed connection), the system will then try the next matching rule with another data source.

For each 3rd party provider of the data, you can specify how long the cached lookup results should be stored (up to a maximum of 24 hours), enabling their use across environments.

The cached lookup results can be used across virtual environments only if the same number portability data source (i.e., the same 3rd party provider of the data) is configured for these environments.


Link copied to clipboard
  • For backward compatibility, the old number portability framework with your existing settings will keep working after the update to MR114.
    If you use HLR lookup for SMS, it should be reconfigured using the new framework.
  • The migration to the new framework is planned for future releases.


Link copied to clipboard

On the Configuration server web interface:

  1. To enable the number portability framework, set the global option NumberPortaBility.Enabled to Yes.

    The NumberPortaBility.Enabled option

  2. Select a specific environment, and configure the number portability data sources (“Authoritative Sources”).
    NOTE: You can add your preferred 3rd party data providers that support ENUM protocol within the AuthoritativeSources_ENUM option.

    Number portability data sources

  3. Create rules for number portability lookup for the environment within the Rules option.

    Configure the lookup rules

    The system attempts to use rules in the specified order. Once a matching rule is found and the data source provides a result, the other rules are ignored.

    You can use the already configured rules for other environments using the AuthoritativeSources_Relay option. For example, when configuring environment 2, you can specify that the rules from environment 1 should be used.

On this page

What's new
Admin manuals
UI help
Back to main menu