Troubleshooting · SIP Codes
SIP 603 Decline: Refused Everywhere
603 is SIP's most definitive response: a global failure. Where 486 says 'busy here', 603 says 'declined, everywhere, do not try another contact for this user'. It is generated when the called party (or a system acting for them) refuses the session categorically — the user hit Decline with prejudice, a screening service rejected the call, or a policy at their domain refuses calls from your network, class of caller, or presentation.
Because 603 asserts a decision, troubleshooting it is about identifying whose decision — a person's, an app's, or a carrier policy's — and what input would change it.
Who issues 603s in the modern network
- The user, deliberately: 'Decline' on a mobile or UC client, particularly with 'block/report spam' attached, can surface upstream as a 603 rather than a local busy.
- Call-screening and spam defenses: carrier and third-party screening services that reject calls failing their policies (unattested caller ID, flagged numbers, anonymous presentation) express rejection as 603 in many implementations.
- Domain/enterprise policy: a company SBC that refuses calls from unauthenticated or unlisted sources, after-hours global policies, or geo-restrictions at the callee's border.
- Interworked mobile networks: declines and blocks on mobile destinations can map into SIP as 603 through the carrier gateways — the mobile user may have done nothing more exotic than reject an unknown caller.
What 603 rules in and out
A 603 clears your media, your codecs and your registration state — the call was refused as a matter of will or policy, and retrying the same call unchanged is definitionally pointless. It also usually clears your routing: the request reached the authority for that user and got a considered no. What it does not tell you is the ground of refusal. Grounds live in three buckets — caller-ID presentation/attestation (fixable in your trunk and carrier setup), reputation (your numbers flagged in analytics systems), and the callee's genuine intent (not fixable, and not a fault). The tests below separate them, because the first two are engineering problems and the third is a fact of life.
Proceed by elimination
- Reproduce with full presentation: call the destination presenting your correct, owned caller ID (no anonymous/withheld presentation) — screening systems treat withheld identity as a category.
- Vary the calling number: call from a different DID (ideally a different range/carrier). Success from another number convicts reputation/presentation on the first.
- Reach the party by another channel (email, a known contact) and ask the ground truth: did they decline, do they run screening (carrier spam filtering, a screening app), or is this the first they've heard of it?
- If screening is implicated: check your STIR/SHAKEN attestation with your provider (see the caller-ID guide) and submit your numbers to the major carriers' caller-ID registration/false-positive programs.
- If the callee's enterprise border is the refuser (business destination), their IT can allowlist your numbers/ranges — provide your presenting DIDs and egress identity in the request.
- Accept genuine declines gracefully: a person who declines is a completed diagnosis, not a ticket. Remove and respect — and never engineer around a callee's expressed refusal.
Frequently asked questions
- Is 603 the same as being blocked?
- Functionally, often — many blocks surface as 603. The code itself only certifies a global refusal; whether it was a human block, a spam filter's verdict or an enterprise policy is what the elimination sequence discovers.
- Why do we get 603 from mobile numbers more than landlines?
- Mobile ecosystems screen aggressively: OS-level silence-unknown-callers, carrier analytics and user reporting all feed rejections that interwork to 603. Presentation and attestation quality decide most of these — your numbers' reputation is a maintainable asset.
- Our whole office gets 603 from one company we work with.
- That's a border policy, not personal declines: their SBC is refusing your source or presentation. The fix is administrative — their IT allowlists your DIDs/identity once your own house (attestation, correct caller ID) is verifiably in order.