MNP in Ireland
In accordance with the European Union Law, all mobile phone users in Ireland must be able to retain their mobile numbers when switching providers. In Ireland it is the Commission for Communications Regulation (ComReg), which enforces and specifies practical requirements under these laws.
By ComReg Rules, typical porting duration for an immediate port in request from start to finish needs to be completed in 2 Hours total, while we see that an immediate Port-In on average will be completed in less then 30 mins. Users can also schedule a Port-In a maximum of 30 days ahead of time.
As a provider of mobile phone contracts we must support:
-
Port-In (new customers moving their number from a donor provider to us)
-
Port-Out (existing customers moving their number from us to a different provider)
Example:
-
If a user wants to move their number from another service provider to us, we are the recipient provider and, on our side, it is a “port-in”, so we need to start the process with a request.
-
If a user wants to move their number from us to another service provider, we are the donor provider and, on our side, it is a “port-out”, so the new provider needs to request the process.
In Ireland Porting is considered “recipient-led”, which means the recipient side is in charge of initiating the portability process for the customer.
The data needed to request a port-in differs between prepaid and post-paid contracts and between a so called “Multiline” and “Singleline” Porting.
Multiline is a type of porting where the number belongs to a group of numbers, this could be the case for a Business, which has multiple numbers under one account. It is important to distinguish the account type of the Number (Multi- vs Singleline) from the type of porting, which would be batch vs singular porting. We only perform Single portings, so even if the Number belongs to a Multiline, we we only port the one number at a time.
Port-In Account Service Type
For IE port-in requests, send the donor account selection in donor_details.account.service_type. IE porting responses also return the donor account selection in donor_details.account.service_type.
Use prepaid or postpaid when the precise donor account variant is not known. These values allow the IE retry flow to try configured account variants after eligible donor account-type rejections. Use one of the five specific values when the donor account variant is already known; those values submit exactly that variant and no account-type retry is attempted.
account_number is required for postpaid, postpaid_single_line, and postpaid_multi_line.
service_type | Purpose | Retry behavior |
|---|---|---|
prepaid | Generic prepaid service type. | Account-type retry can be attempted. |
postpaid | Generic postpaid service type. Requires account_number. | Account-type retry can be attempted. |
prepaid_unregistered | Exact unregistered prepaid donor account variant. | No account-type retry is attempted. |
prepaid_registered | Exact registered prepaid donor account variant. | No account-type retry is attempted. |
prepaid_multi_line | Exact prepaid multi-line donor account variant. | No account-type retry is attempted. |
postpaid_single_line | Exact postpaid single-line donor account variant. Requires account_number. | No account-type retry is attempted. |
postpaid_multi_line | Exact postpaid multi-line donor account variant. Requires account_number. | No account-type retry is attempted. |
MNP Lifecycles

Porting Lifecycle (Port-In)
Draft
The porting request is initially created in this state. While in Draft, cancelation requests can be submitted.
Pending
In this state, the request is sent to the donor service provider for validation and acceptance.
Scheduled
The request moves to Scheduled once it has been accepted by the donor service provider and a porting date/time has been agreed upon. The scheduled date indicates when the porting activity is planned to occur. Cancelation requests can still be submitted in this state.
Processing
The request transitions to Processing when the scheduled porting date/time is reached. Active provisioning and technical porting activities are carried out during this phase. Once Processing has started, no further changes or cancelations are allowed.
Completed
The porting request is marked as Completed once the process has been successfully finalized by both the recipient and donor service providers.
Cancelation Requested
The customer may request cancelation while the request is in Draft or Scheduled.
- If the request is received before it is sent to the donor service provider during Draft or before provisioning begins while Scheduled, the porting request will be canceled.
Rejected
If validation fails or the donor service provider rejects the request while in Pending, the request transitions to Rejected.
Canceled
The porting request has been canceled by the recipient.
MNP-Out

Porting Lifecycle (Port-Out)
Pending
The port-out process begins when the donor receives a request from the regulator in the Pending state. During this phase, validations are performed.
- If all validations pass, the request transitions to Scheduled.
- If any validation fails, the request moves to Rejected with an appropriate reason.
Scheduled
The request has been accepted and is awaiting action from the recipient service provider to initiate the porting process. The recipient may cancel the request at any time, in which case it transitions to Canceled.
Processing
The deprovisioning process has started, and all required actions for the port-out are executed.
Completed
The porting request is marked as Completed once the process has been successfully finalized by both the recipient and donor service providers.
Canceled
The request has been canceled by the recipient service provider.
Rejected
If validation fails, the porting request transitions to Rejected.
Rejection Reasons
| Rejection Reason | Reason | Description | Action |
|---|---|---|---|
msisdn_not_portable | MSISDN not available to donor | The number cannot be ported from the donor network. | Inform the customer that the number can no longer be ported. |
account_number_mismatch | Post-paid account number mismatch | The account number provided does not match the MSISDN on the donor side. | Verify and correct the account number before retrying. |
porting_already_in_progress | Port in progress | The MSISDN is already involved in an ongoing port-in request. | Inform the customer to cancel the existing porting request before retrying. |
registered_unregistered_mismatch | Registered/unregistered mismatch | The request was submitted with an incorrect registered/unregistered status. | Verify and correct the account type before retrying. |
prepaid_postpaid_mismatch | Prepaid/postpaid mismatch | The request was submitted with an incorrect prepaid/postpaid selection. | Verify and correct the account type before retrying. |
single_multiline_mismatch | Single/multi-line mismatch | The request was submitted with an incorrect single-line/multi-line selection. | Verify and correct the account type before retrying. |
portation_request_too_late | Date out of range | The selected porting date is outside the allowed range (e.g., more than 30 days ahead). | Select a valid date within the allowed timeframe. |
unable_to_cancel | Unable to cancel | The cancellation request was submitted too late in the process. | Inform the customer that the request can no longer be canceled. |
unable_to_reverse | MSISDN not approved to reverse | The reversal mechanism cannot be used for this MSISDN. | Submit a standard port request instead. |
multiline_unauthorized | Multi-line port unauthorized | Missing authorization to port the number from a multi-line account. | Obtain proper authorization before retrying the request. |
donor_not_found | Donor not found | If a donor service provider is not found for the provided msisdn in porting IN creation | Verify and correct the port-in msisdn |
other | Other | Other reason. | Check the message to have more details about the rejection. |