Numbers

8 global number porting issues and how to solve them

Number porting issues stall a cutover when the losing carrier rejects the order. See the 8 rejection causes, what carriers cannot refuse and the fix for each.

Number porting issues and fixes

Takeaways

Number porting issues usually surface as a rejection from the losing carrier, and each one carries an exact reason you can read, fix and resubmit the same business day instead of guessing.

  • Under Federal Communications Commission (FCC) rules your old carrier cannot refuse to port your number because you owe it money or a termination fee.
  • Simple US ports must be processed in one business day. Multi-line, wireline and international ports fall outside that rule, and Telnyx plans them at 15 business days or more.
  • Telnyx checks portability for up to 2,500 numbers at a time, validates the Letter of Authorization with FastPort and reports every exception code through the porting API.

How does number porting work behind the scenes?

Number porting moves a phone number between carriers by updating a shared routing database once the losing carrier approves the request. In the US that database is run by the Number Portability Administration Center (NPAC), and the FCC allows ports between wireline, IP and wireless providers within the same geographic area.

The gaining carrier submits a Letter of Authorization (LOA) and a recent invoice. The losing carrier checks both against its Customer Service Record (CSR) and either rejects the order with a reason or accepts it with a Firm Order Commitment (FOC) date, the day routing changes. Most number porting issues start at that validation step.

Number porting lifecycle diagram

A rejection sends the order back to the gaining carrier, and the FOC date exists only once validation passes.
Keep the old service live: The FCC tells consumers not to terminate service with the existing company before starting new service. A number that is cancelled before the FOC date has nothing left to port.
Port numbers to Telnyx and FastPort flags incorrect LOA details in real time, before the losing carrier sees them.

The 8 most common number porting issues and how to fix them

Eight causes cover most rejections and delays: seven validation failures the account holder can clear, and one slow losing carrier. The table shows each rejection as it appears, with the Telnyx porting API exception code where there is one.

Number porting issues matched to their fix

IssueWhat the rejection looks likeThe fix
  1. CSR mismatch
ENTITY_NAME_MISMATCH, POSTAL_CODE_MISMATCH or BTN_ATN_MISMATCHCopy every field from the CSR and resubmit
  1. LOA problem
LOA missing, unsigned or in another name from the invoiceThe named account holder signs, with a matching invoice
  1. Inactive number
The portability check returns portable: falseReactivate the line before submitting
  1. Port-out PIN
"Passcode/PIN required" or PASSCODE_PIN_INVALIDThe account holder retrieves the PIN
  1. Unauthorized signer
AUTH_PERSON_MISMATCHA contact listed on the CSR signs
  1. Transfer lock
Every request rejected while the lock is onThe account holder lifts the lock
  1. Mobile authentication
The consent text or code goes unansweredBrief the user, or resend the code by call
  1. Slow losing carrier
OSP_IRRESPONSIVE, LSR_PENDING or FOC_EXPIREDEscalate through the gaining carrier's porting team

1. Information that does not match the Customer Service Record

The order comes back in exception with a mismatch code such as ENTITY_NAME_MISMATCH, POSTAL_CODE_MISMATCH or BTN_ATN_MISMATCH. The losing carrier compares the port request field by field with its CSR: the account name, the address, the account number and the billing telephone number (BTN). A trading name where the CSR holds the legal entity name is a frequent cause.

Number porting CSR mismatch

The losing carrier compares every field on the port request with its CSR, and one mismatch rejects the order.

Ask the losing carrier for the CSR first, then copy each field onto the LOA exactly, suite numbers included. Telnyx FastPort verifies the details you enter on the LOA and flags incorrect information in real time.

Prevent it: Treat the CSR as the only source for account fields, because each mismatch found after submission costs another validation round.

2. Missing, unsigned or mismatched Letter of Authorization

The order stops because the LOA is missing, unsigned or illegible, or names a different company from the invoice attached to it. Telnyx requires it signed by the end customer, with the signer matching what the existing carrier has on file, plus the most recent bill from that carrier.

Number porting LOA failures

An unsigned LOA or an invoice in another company's name stops the port before the losing carrier checks anything else.

A complete LOA carries the company name, service address, current carrier, billing telephone number, every number to port, a legible signature, the signer's printed name and the date. If the invoice does not list the numbers, Telnyx accepts a screenshot of the current carrier's portal or a CSR in its place. Ports outside North America add country documents, and the Telnyx porting order lists the requirements for each country and number type.

Prevent it: Pull the invoice first and write the LOA in the exact legal name printed on it. Toll-free ports need one more line: the LOA must name the new Responsible Organization (RespOrg), which for Telnyx is QIT02.

3. Inactive, suspended or disconnected number

A number can only port while it is active on the losing carrier's network. A suspended line, a line cut off for non-payment, or a number returned to the carrier's pool fails validation.

Number porting line status

Only an active number can port, and a suspended line becomes portable again once the account holder reactivates it.

Reactivation is the fix, and only the account holder can ask for it. A suspended line usually returns once the account is brought current, but a number the carrier has reassigned is gone. The Telnyx portability check catches this before an order exists, with a not_portable_reason for each number that cannot move.

Prevent it: Run the portability check when you draft the LOA and again the day before you submit. An inactive number found after rejection costs days, or the number.

4. Port-out PIN required or invalid

Wireless carriers protect accounts with a port-out PIN or passcode. A request without one is rejected as "Passcode/PIN required", and a wrong or expired PIN comes back as PASSCODE_PIN_INVALID in the Telnyx porting API. The PIN is a fraud control against unauthorized port-outs and subscriber identity module (SIM) swaps.

Number porting PIN location

The port-out PIN lives in the losing carrier's account settings, and only the account holder can generate it.

The account holder generates or retrieves the PIN from the current carrier's app, online account or support line. It goes into the pin_passcode field of the Telnyx porting order, beside the account number, so both reach the losing carrier together.

Prevent it: Ask for the PIN on the same call as the CSR. A wrong PIN is a same-day fix only if someone with access to the old account is on hand.

5. Request signed by an unauthorized user

The losing carrier checks the LOA signature against the authorized contacts on the account. When the engineer or project manager running the migration signs and that person is not on the CSR, the order returns AUTH_PERSON_MISMATCH.

Number porting LOA signers

Only the account holder or an admin the losing carrier lists as authorized can sign the LOA.

Two fixes work. The named account holder signs, or the account holder first adds the signer as an authorized user with the losing carrier and waits for the change to reach the CSR. The Telnyx porting order carries the signer in auth_person_name, next to the company in entity_name, so a signer mismatch surfaces as its own exception code.

Prevent it: Name the signer when the migration is planned, check that name against the CSR, and add them as an authorized user if they are missing.

6. Transfer lock or port-out lock on the account

Many carriers let customers lock a number against port-outs, under names such as number lock, port freeze or transfer lock, as protection against SIM swapping. While the lock is on, the losing carrier rejects every port request, whoever submits it and however correct the paperwork is.

Number porting port-out lock

A port-out lock rejects every request until the account holder removes it, and the new carrier cannot lift it.

Only the account holder can remove the lock, in the current carrier's app or account settings or by calling its support line. A lock added months earlier is easy to forget, so check every account in the batch. Once the lock is off, resubmit the same order. Nothing else on it has to change.

Prevent it: Put the lock on the pre-port checklist next to the PIN, and have the account holder confirm in writing that it is off.

7. Authentication code never arrives (Canadian and Australian mobile numbers)

Some countries add a consent step for mobile numbers. In Canada, every wireless carrier texts the phone's user before a port-out, and the user must reply YES within 90 minutes or the port does not happen. In Australia, a unique code goes to each mobile number by SMS or call, and the port cannot proceed until every number is verified.

Mobile number porting verification

Mobile ports in Canada and Australia wait on the phone's user, so the code must reach a working handset.

The code goes missing when the SIM has left the phone, the phone is off, or the user does not expect a message. For ports that need a code, the Telnyx porting order sends it with the verification_codes/send endpoint, by SMS or by call, so a code that never arrives by text can be resent as a voice call.

Prevent it: Schedule mobile ports when every user can reply, and warn them the day before. An unanswered Canadian request lapses after 90 minutes.

8. Slow responses from the losing carrier

Days pass with no FOC date and no rejection. The FCC requires simple ports, which "generally do not involve more than one line or more complex adjustments to telephone switching equipment", to be processed in one business day, so a single-line US port that stalls is overdue. Multi-line, wireline and international ports fall outside that rule and move at the pace of the losing carrier's manual process.

Number porting timelines compared

A simple US port is due in one business day, while a non-simple port can run 15 business days or more.

The Telnyx porting API names the stall: OSP_IRRESPONSIVE when the old service provider (OSP) stops answering, LSR_PENDING while the local service request (LSR) waits, and FOC_EXPIRED. Telnyx submits simple ports to the losing carrier within 2 business days and non-simple ports within 4, and estimates completion end to end at 7 and at 15 or more business days. Past those windows the Telnyx porting team escalates with the losing carrier, and you can follow it in the order's comments.

Prevent it: Split large or mixed orders so single-line numbers qualify as simple ports, and set the cutover from the non-simple estimate. Telnyx flags an order that needs it with PORTING_ORDER_SPLIT_REQUIRED.

Can a phone company refuse to port your number?

A phone company can reject a port when the request fails validation against its own records. Under FCC rules it cannot refuse because the customer owes it money.

Is the losing carrier allowed to reject this?

Pick the reason on your rejection to see whether it holds and what to do next.

It cites an unpaid balance

Not a valid reason under FCC rules

Resubmit the same order and put the FCC rule in writing to the losing carrier. If it rejects again, move to the escalation ladder below.

Outstanding balance → resubmit and cite the FCC guide

It cites a termination fee or a contract term

Not a valid reason under FCC rules

A fee or an unfinished contract is a billing matter. The carrier can charge it, but the port goes ahead.

It names a field that does not match

Valid, and you can fix it the same day

Copy the field exactly as the CSR shows it, correct the LOA and resubmit.

ENTITY_NAME_MISMATCH → use the legal name from the CSR

It cites the PIN, the signer or a lock

Valid, and the account holder has to act

Only the account holder can fetch a new PIN, sign or add a signer, or lift a port-out lock. Resubmit the same order once that is done.

PASSCODE_PIN_INVALID → account holder retrieves the current PIN

No FOC date and no rejection after days

A stall, not a refusal

Ask the gaining carrier to chase the losing carrier, then request the FOC date or the reason in writing.

What the FCC says about unpaid balances and termination fees

The FCC porting guide is explicit: "Once you request service from a new company, your old company cannot refuse to port your number, even if you owe money for an outstanding balance or termination fee." The debt still stands and can be collected separately, but the number cannot be held back for it.

Escalation ladder: Ask the losing carrier in writing for the FOC date or rejection reason, then file with the FCC Consumer Complaint Center. For a rural carrier with a state waiver, go to the state public utilities commission.

Can I port a US number to Canada?

No. The FCC limits porting to providers serving the same geographic area, so a Canadian carrier cannot take a US number. A team in Canada can still port it to a provider that serves US numbers. Telnyx holds numbers in both countries on one account, so the US number keeps working, and you can get a VoIP number in Canada beside it.

Numbers that cannot be ported

Check the types of phone numbers in the batch before setting a date. These will not port whatever the paperwork says:

  • Numbers already disconnected and released by the losing carrier
  • Numbers moving to a different geographic area
  • Numbers in a rate center the gaining carrier does not serve, which Telnyx reports as RATE_CENTER_NOT_PORTABLE
  • Numbers held by rural wireline carriers with a state waiver from the porting requirement

MNP time duration and how long a port takes by route

Mobile number portability (MNP) time duration depends on the route. In the US only simple ports, one line with no switching changes, have a regulatory deadline, and elsewhere each national regulator sets its own. The Telnyx figures below run end to end.

Number porting timelines by route

RouteTypical timeSet by
Simple US port, one lineOne business dayFCC rule
US wireless to wirelessWithin a few hoursFCC guide
US wireline to wirelessA few daysFCC guide
Simple port to Telnyx, end to endAbout 7 business daysTelnyx porting policy
Non-simple port to Telnyx15 business days or moreTelnyx porting policy
Australian mobile number1 to 5 business daysTelnyx Australia porting
Australian complex port (CAT C)5 weeks or moreTelnyx Australia porting

How much time a SIM port takes

A SIM port is usually the fastest route: the FCC says changes among wireless providers can work within a few hours. The new SIM takes over at activation, and its ICCID number, the card's serial number, changes while the phone number stays. Each carrier sets how soon a new SIM can be ported again, so ask for its port-out window before booking a date. To bring numbers into your own device fleet, provision a SIM card on the new account first.

Wireline to wireless: The FCC warns that during the transfer two phones may briefly share the number, and that 911 operators may not be able to call back if a wireless call drops.

Wireline, multi-line and VoIP port timelines

Plan these from the estimate of 15 business days or more, plus a buffer, and avoid moving a confirmed FOC date. Telnyx treats changes within 48 hours of the FOC as best effort, because some losing carriers still drop the lines on the original date.

Messaging moves separately from voice on US and Canadian numbers, and Telnyx activates messaging on about 90% of ported local numbers within 10 minutes.

Tracking number porting issues at scale with an API

At hundreds of numbers, exceptions arrive one order at a time and the cutover depends on every order reaching its FOC date, the usual picture for a contact center moving its lines. Telnyx runs its own carrier network, so porting, phone numbers and the voice and messaging on them share one account, one API and one porting team available 24/7.

Number porting API flow

The portability check, the porting order and the status webhook turn every rejection into an event you can act on.

Check portability before you submit

A portability check on every number stops the inactive-number and out-of-area rejections before an order exists, and flags the numbers eligible for FastPort. The Number Lookup API adds the carrier and line type behind each one. The Mission Control portal can check number portability for up to 2,500 numbers at a time. The same check runs through the API with the Telnyx Python SDK:

Python
import osfrom telnyx import Telnyxclient = Telnyx(api_key=os.environ["TELNYX_API_KEY"])example_numbers = ["+13125550123", "+13125550187", "+14155550142"]results = client.portability_checks.run(phone_numbers=example_numbers)for result in results.data: if not result.portable: print(f"{result.phone_number}: not portable ({result.not_portable_reason})") elif result.fast_portable: print(f"{result.phone_number}: portable, FastPort eligible") else: print(f"{result.phone_number}: portable, standard port")

Track porting orders with status webhooks

Each porting order can carry a webhook_url, and Telnyx sends a porting_order.status_changed event every time the order moves, with the new status and a list of exception codes. The Flask handler below verifies the Telnyx signature, then texts the migration owner through the SMS API the moment an order lands in exception, with the codes to fix:

Python
import jsonimport osfrom flask import Flask, requestfrom telnyx import Telnyxclient = Telnyx(api_key=os.environ["TELNYX_API_KEY"], public_key=os.environ["TELNYX_PUBLIC_KEY"])app = Flask(__name__)@app.post("/webhooks/porting")def porting_event(): raw = request.get_data(as_text=True) try: client.webhooks.unwrap(raw, headers=dict(request.headers)) except Exception: return "", 401 event = json.loads(raw)["data"] if event["event_type"] != "porting_order.status_changed": return "", 200 order = event["payload"] if order["status"]["value"] == "exception": codes = ", ".join(detail["code"] for detail in order["status"]["details"]) client.messages.send( from_=os.environ["ALERT_FROM"], to=os.environ["ALERT_TO"], text=f"Port {order['customer_reference']} needs a fix: {codes}", ) return "", 200

Bulk and multi-line ports with SLA monitoring

A bulk port goes in as orders under one customer_group_reference, and the script below flags any still open past its service-level agreement (SLA) window: 10 calendar days for one line and 21 for more, roughly the Telnyx estimates of 7 and 15 business days.

Python
import osfrom datetime import datetime, timezonefrom telnyx import Telnyxclient = Telnyx(api_key=os.environ["TELNYX_API_KEY"])OPEN = {"in-process", "submitted", "exception"}now = datetime.now(timezone.utc)orders = client.porting_orders.list(filter={"customer_group_reference": "q4-migration"})for order in orders: if order.status.value not in OPEN: continue window = 10 if order.porting_phone_numbers_count == 1 else 21 age = (now - order.created_at).days if age > window: print(f"{order.support_key}: {order.status.value}, open {age} days (window {window})")
Port your numbers to Telnyx and track every order, exception code and FOC date through one API, with a porting team on call 24/7.

FAQ

What is number porting and how is it done?
On Telnyx you start on the Port Numbers page in Mission Control and run the portability check. Requests go out Monday to Friday, 7am to 7pm Central and 9am to 5pm CEST.
How does number porting work between carriers?
Local numbers move through the carriers and the NPAC routing database. Toll-free numbers move between RespOrgs instead, so a toll-free LOA names the new one.
Can an outstanding balance prevent porting?
No, but the old carrier may charge a porting fee of its own. The FCC suggests asking whether that fee can be waived or negotiated.
Will I experience service disruption during porting?
Not if every number has a connection assigned before the FOC date, so calls reach your application the moment the port activates. Messaging that misses the first 10 minutes usually follows within 1 to 2 business days.
Can I cancel a number porting request?
Yes, until activation. The porting order's actions/cancel endpoint does it, and the order moves to cancel-pending and then cancelled.
What numbers cannot be ported?
Besides released and out-of-area numbers, a number with special features on the old line can be held until they are removed, which Telnyx reports as PHONE_NUMBER_HAS_SPECIAL_FEATURE. Porting an account's main billing number while keeping other lines needs a new billing number for those lines.

See every porting rejection the moment it lands

Read the exact reason a port was rejected, know whether the losing carrier is allowed to hold it, and resubmit with the right fix the same business day. Telnyx checks portability, validates the LOA with FastPort and reports every exception through one API, backed by a porting team on call 24/7.

Start porting numbers
Share on Social
Deniz Yakışıklı
Deniz Yakışıklı
Sr. Product Marketing Manager

Deniz is a Senior Product Marketing Manager at Telnyx with 10 years of experience in technology and healthtech marketing. She previously led go-to-market initiatives at Philips Healthcare, Vodafone, and The Coca-Cola Company. Originally from Türkiye and based in Amsterdam, she ho