Overview
VoIP push notifications are handled differently by Apple than standard push notifications. Because of these platform constraints, OneSignal supports sending VoIP notifications—but does not manage VoIP token registration for you. You must:- Register VoIP tokens yourself using Apple PushKit
- Upload a VoIP-specific APNs certificate
- Use OneSignal’s API to register tokens and send notifications
Platform differences at a glance
| Platform | VoIP push supported? | How it works |
|---|---|---|
| iOS | ✅ Yes | Uses Apple PushKit and a VoIP APNs certificate |
| Android | ❌ No | Uses data-only pushes to simulate call-style behavior |
If you are building a cross-platform calling app, you will use different approaches per platform.
Android: simulate VoIP-style behavior (not true VoIP)
Android does not support VoIP push notifications. There is no equivalent to Apple PushKit. Instead, Android calling apps simulate VoIP behavior using:- Data-only push notifications
- Foreground services
- Custom call-style UI
- Send data-only notifications
- Handle them in your app to:
- Start a foreground service
- Launch a call UI activity
- Display a custom incoming call notification
Android setup is not specific to OneSignal. OneSignal only delivers the push payload; your app handles call behavior.
iOS: send true VoIP push notifications
On iOS, VoIP notifications use Apple PushKit and have special delivery rules that differ from standard push notifications. How iOS VoIP works with OneSignal: For iOS VoIP notifications:- Your app registers a VoIP token using PushKit
- You upload a VoIP Services APNs certificate to OneSignal
- You register the VoIP token with OneSignal using the API
- You send VoIP pushes using apns_push_type_override: “voip”
1. Register a VoIP token using PushKit
Use Apple’s PushKit framework to register for VoIP notifications and receive a VoIP token.- Implement PushKit in your app
- Store and refresh the VoIP token as Apple rotates it
- Follow Apple’s VoIP policies closely
2. Create a new OneSignal app for VoIP users
You must maintain two separate OneSignal apps:- Main Push App: For standard push notifications
- VoIP App: For VoIP-only notifications
- Use the same iOS bundle ID
- Be associated with the same native iOS app
3. Upload a VoIP Services Certificate
In your VoIP OneSignal app:- Upload a VoIP Services Certificate (.p12)
- Do not reuse your standard APNs certificate

VoIP certificate in Keychain Access

VoIP certificate uploaded in OneSignal dashboard
4. Register the VoIP token with OneSignal
Use the Create User API to register the VoIP token with your VoIP OneSignal app.5. Send VoIP notifications
Use the Create Notification API and include the following parameters:"apns_push_type_override": "voip"- The
app_idof your VoIP app - The
subscription_idof the VoIP token you registered
6. Verify your VoIP setup
Your iOS VoIP integration is working if:- The VoIP token appears as an iOS push subscription in your VoIP app
- A VoIP push triggers
pushRegistry(_:didReceiveIncomingPushWith:for:completion:) - The app wakes even when terminated or backgrounded