VoIP.info Diagnostic

3CX mobile calls stop after the push subscription expires

Distinguish a versioned seven- or fourteen-day push-subscription lifetime from device permissions, notification delivery, PBX reachability and call routing before re-enrolling a 3CX mobile app.

Reviewed 2026-10-093CX September 18, 2026 push-expiry announcement, September 29, 2026 V20 Update 10 beta announcement, iOS manual updated September 30, 2026, Android push guide updated September 3, 2026 and current firewall guide reviewed October 9, 2026; Update 10 remained beta and was explicitly designated for testing rather than production in the reviewed release record; no PBX, app, device, QR code, push subscription, notification service, firewall, log, call or media path was inspected or testedIntermediateDocumentation based · not lab tested

Freeze PBX version, app build and last connection

Record the exact 3CX PBX version and update lane, Android or iOS version, 3CX app build, device identity, user extension, last time the app connected successfully, first missed-call time and whether the phone was offline, powered down, replaced or reinstalled. Reproduce one authorized inbound call while the app is closed and retain synchronized PBX and client evidence.

Do not begin by regenerating the QR code. Re-enrollment can remove the stale-state evidence needed to distinguish subscription expiry from an operating-system permission, network, notification-service or routing fault.

Apply the lifetime that belongs to the installed PBX

3CX announced on September 18, 2026 that V20 Update 10 changes the mobile push-subscription expiry from seven days to fourteen days. Its September 29 Update 10 record still labels that update beta, intended for testing and evaluation rather than production. Treat fourteen days as versioned Update 10 behavior, not a universal value for every 3CX deployment.

Compare the installed PBX version, update lane and last client connection with the applicable lifetime. A calendar interval that fits the boundary is a hypothesis; it is not proof that the subscription expired or that the PBX attempted a push for the missed call.

Separate subscription state from phone notification state

3CX says its mobile apps use push notifications to wake the phone for incoming calls and messages. Confirm that the PBX still has a current mobile push subscription for the intended device, then separately check the device's network access, notification permission, background data, battery policy, focus or do-not-disturb state and locked-screen alert permission.

The Android guide also calls out accurate client and server time, cleaner applications and device-vendor power controls. Keep those checks distinct from subscription age: an unexpired subscription cannot compensate for a blocked notification, and a permitted notification cannot revive an expired PBX subscription.

Prove the PBX-to-push-service path

For self-hosted or on-premises systems, correlate the missed call with PBX push activity and the current 3CX firewall requirements. Confirm name resolution, time, TLS inspection policy and authorized outbound reachability for the documented push-service endpoints without creating a broad allow rule. A passing PBX firewall check is narrower than proof that one notification reached Apple or Google and woke one device.

Do not expose QR enrollment material, user credentials, push tokens or full telephone numbers in captures. Bound verbose logging to a controlled reproduction and remove it after the evidence is collected.

Re-enroll only after preserving the failed state

3CX's current iOS and Android guidance says a device offline longer than the applicable lifetime may need to register again with the PBX using a fresh QR code. Before doing that, preserve the prior device and subscription records, verify that the intended user and PBX generated the QR code, and revoke any superseded device enrollment.

After scanning, prove that the app connects, a new push subscription belongs to the intended device and an incoming call wakes and alerts it while closed or locked. A successful foreground call is not an acceptance test for background delivery.

Keep Android Keep Active as a bounded fallback

The 3CX Android guide presents Keep Active as a fallback when push cannot be made to work and warns that it significantly increases battery use. It also says automatic Keep Active after reboot is unavailable on Android 15 and later, requiring a manual start. Do not convert this fallback into an estate-wide default or evidence that the underlying push fault is fixed.

If it is authorized temporarily, document the device, duration, battery effect, reboot behavior and removal condition. Retest the normal push path after the demonstrated owner is corrected.

Accept expiry recovery and call delivery separately

Run a lifecycle matrix covering app open, app closed, locked screen, reboot, Wi-Fi, cellular, an authorized offline interval and return to service. Correlate current subscription, push request, notification receipt, app wake-up, call alert, answer, two-way audio and hangup as separate stages.

Record the installed version boundary and rollback, remove temporary diagnostics and protect enrollment artifacts. No 3CX system, mobile application, notification path or call was validated for this diagnostic.

Sources & applicability

Primary references for the technical details above. Operational examples and planning checklists are VoIP.info editorial guidance.

Examples require adaptation to your topology. No live PBX or hardware testing is claimed.