Why Can I Register but Not Make Calls?
Registration proves your credentials; calling tests the dialplan, outbound routes, dial format, codecs, trunks and caller ID. Learn to read 404, 403, 488 and 503 replies and find the setting that blocks your outbound call.
Published 8 November 2026 · 5 min read · By SpaGreen Creative
Short answer
Registration and calling are checked by different parts of the server. A green registered dot means your credentials work. A failed call means the dialled number did not match a dialplan rule or outbound route, the number format was wrong, no common codec was found, or the trunk refused the call. The SIP response code tells you which.
Registering and calling are two separate tests. REGISTER proves that the server knows your extension and accepts your password. INVITE asks the server to route a call to a number, and that request passes through the dialplan, the outbound routes, codec negotiation and, for external numbers, a trunk. Any one of those can refuse. The good news is that the server tells you which, in the form of a SIP response code, and the softphone's log shows it.
Quick checklist
- Call another extension on the same PBX. If that works, the problem is in outbound routing or the trunk.
- Read the response code in the log: 404, 403, 488, 503 or something else.
- Check the dial format the PBX expects: leading 9, country code, number of digits.
- Make sure the extension allows a codec the phone offers. G.711 ulaw or alaw is the safe choice.
- If you set Encrypt audio to Required, confirm the server supports SRTP, or set it to Optional.
- Ask the administrator to check outbound routes, trunk status and caller ID rules.
Start with an internal call
Dial another extension on the same server. If it rings, your registration, your network and codec negotiation all work for the simple case. The fault is confined to external routing. If even an internal call fails, concentrate on the codec and dialplan sections below before looking at trunks.
Which response code did you get?
Turn on detailed SIP logging and dial again. Find the final reply to your INVITE. The common ones:
| Code | Meaning | Usual cause |
|---|---|---|
| 404 Not Found | No match for the dialled number | Wrong dial format, no outbound route |
| 403 Forbidden | Call not permitted | Context, route permissions, caller ID, trunk |
| 486 Busy Here | Far end busy | Not a configuration fault |
| 488 Not Acceptable Here | No common codec or encryption | Codec list, SRTP setting |
| 503 Service Unavailable | Trunk or server cannot handle the call | Trunk down, provider rejecting |
| 480 Temporarily Unavailable | Destination not reachable now | Target extension not registered |
RFC 3261 section 21.4 defines the 4xx codes. The SIP error code lookup tool covers the rest.
404: the number did not match anything
On an Asterisk-based PBX, every extension belongs to a context, and the context contains the patterns that calls may match. If the number you dialled fits no pattern, the server answers 404. Systems such as Issabel and FreePBX generate those patterns from outbound routes, which have dial patterns of their own.
Check the format the PBX expects:
- Does it require a trunk access prefix such as 9 or 0?
- Does it strip or add a country code? Some routes expect
0044..., others+44...or the national format. - Does the pattern limit the number of digits?
Dial exactly as a desk phone on the same system would, including the prefix. Softphones send the digits as typed, so a saved contact with spaces or a leading plus sign may not match a pattern written for plain digits.
403: the call is not permitted
A 403 on INVITE means the server understood the call and refused it. On a PBX, typical reasons are an outbound route restricted to certain extensions, a context that lacks the outbound rules, a route that requires a PIN, or a trunk that rejected the caller ID. Hosted providers also send 403 for destinations not enabled on the account, such as international or premium numbers. How to Fix SIP 403 Forbidden covers each case.
488: no common codec or encryption
The INVITE lists the codecs the phone can use. The server answers with the ones it also allows. If the lists do not overlap, the result is 488 Not Acceptable Here (RFC 3261 section 21.4.26). SIPdia offers Opus, G.711 ulaw and G.711 alaw according to its documentation; it does not offer G.722 or G.729. If the extension on the PBX only allows G.722 or G.729, no match is possible. Enable ulaw or alaw on the extension. Most trunks also expect G.711, so this fixes external calls too.
Encryption can produce the same code. If the phone's Encrypt audio setting is Required, the INVITE offers only encrypted media. A server with no SRTP support refuses it. Set the option to Optional to let the two sides negotiate, or enable SRTP on the server. SIP codecs explained describes how the negotiation works.
503 or a quick drop: the trunk is the problem
When an external call fails with 503, or rings once and dies, the PBX usually relayed a failure from the trunk. Internal calls prove nothing about the trunk. Ask the administrator to check:
- whether the trunk is registered with the provider;
- whether the provider's reply contains a reason, visible in the PBX log;
- whether the account has credit and permission for the destination;
- whether the trunk's codec list includes something the provider accepts.
The Asterisk documentation explains how to view the PBX log and trunk state.
Caller ID requirements
Many providers verify the caller ID on outbound calls. If the PBX sends an extension number or an unrecognised number as the caller ID, the provider refuses, usually with 403 but sometimes with 503 or 603. The outbound route or trunk must set a caller ID that belongs to the account. Softphones normally do not control this; it is a PBX or provider setting.
Dialling from a hosted provider rather than a PBX
With a hosted SIP provider there is no dialplan to edit. Calls fail for format reasons (the provider documents the expected format, often E.164 with a leading plus or a country code without it), for balance or permission reasons, or because the destination is blocked. The provider's portal usually has a call log that shows the rejection reason.
Next steps
If the call connects but you cannot hear anything, the problem has moved from signalling to media; see How to Fix One-Way Audio in VoIP Calls and How to Troubleshoot No Audio in a SIP Call. For PBX-side configuration of contexts, routes and codecs, start with the Asterisk integration page. The SIP codecs guide explains why G.711 is the safest default.
Frequently asked questions
What does 404 Not Found mean when I dial?
The server found no rule for the number you dialled. On a PBX this means no dialplan entry or outbound route matched. Check the dial format: prefixes, country code, number length.
What does 488 Not Acceptable Here mean?
The two sides have no codec in common, or one side demanded SRTP the other cannot provide. Enable a codec both support, usually G.711 ulaw or alaw, and check the encryption setting.
Why do internal calls work but external calls fail?
Internal calls stay on the PBX. External calls go through an outbound route and a trunk, each of which can refuse the call for permission, format or caller ID reasons. Check those two layers.
Why does the call ring once and then end?
Often the trunk answered with a failure that the PBX turned into a brief ring or busy tone. Look at the PBX log for the trunk's response code.
Sources and further reading
- RFC 3261, section 21.4: Request Failure 4xxwww.rfc-editor.org
- RFC 3261, section 21.4.4: 403 Forbiddenwww.rfc-editor.org
- RFC 3261, section 21.4.26: 488 Not Acceptable Herewww.rfc-editor.org
- Asterisk documentationdocs.asterisk.org
This article is published by SpaGreen Creative, the maker of SIPdia. Product names mentioned belong to their owners. Where it describes other software, treat the steps as general guidance and check the official documentation linked above.
