FusionPBX Sync
Synchronize users and extensions from FusionPBX to CrystalQore. Manual sync from Sync page. Syncs users, extensions, domains, groups, permissions. Creates/updates CrystalQore accounts.
FusionPBX Sync
FusionPBX sync imports users and extensions from your FusionPBX installation into CrystalQore. This creates CrystalQore user accounts and keeps them in sync with your phone system. Sync can be triggered manually from the Superadmin Sync page.
Overview
When you run a sync, CrystalQore:
- Reads user and extension data from the FusionPBX database
- Creates CrystalQore user accounts for new FusionPBX users
- Updates existing CrystalQore users with current extension and domain data
- Maps FusionPBX domains to CrystalQore tenants
What Gets Synced
| Data | Description |
|---|---|
| Users | User accounts (email, name, etc.) |
| Extensions | Extension numbers and associations |
| Domains | FusionPBX domains (mapped to tenants) |
| Groups | Group memberships |
| Permissions | Permission mappings (where applicable) |
Running a Manual Sync
Navigate to Admin → Sync — Open the FusionPBX sync page.
Select PBX instance — Choose which FusionPBX instance to sync (if you have multiple).
Click Sync — Trigger the synchronization.
Monitor progress — Watch the sync status and any messages or errors.
Review results — Check how many users were created or updated.
User Matching
CrystalQore matches FusionPBX users to CrystalQore accounts using:
- Email — Primary matching field when available
- Extension — Fallback when email is not present or unique
- Domain — To ensure correct tenant assignment
New Users
When a FusionPBX user has no matching CrystalQore account:
- A new CrystalQore user is created
- Email, name, and extension are populated
- User is assigned to the tenant mapped from the FusionPBX domain
- Default role (typically User) is applied
- An initial password may be generated or require manual set/reset
Existing Users
When a match is found:
- User details (name, extension, etc.) are updated
- Tenant and domain association are updated if mapping changed
- Passwords are not overwritten (FusionPBX does not store CrystalQore passwords)
Sync does not delete CrystalQore users. If a user is removed from FusionPBX, they remain in CrystalQore until manually disabled or deleted.
Domain and Tenant Mapping
FusionPBX uses domains to separate tenants. CrystalQore maps:
- FusionPBX domain → CrystalQore tenant
Ensure domain-to-tenant mapping is configured correctly. Mismatched mapping can assign users to the wrong tenant.
Sync Frequency
Sync is manual by default. You run it when:
- Onboarding new FusionPBX users
- After bulk changes in FusionPBX
- During initial CrystalQore setup
- Periodically (e.g., daily or weekly) to keep data current
Some deployments may support scheduled sync (cron, background job). Check your deployment documentation.
Troubleshooting Sync
| Issue | Solution |
|---|---|
| No users synced | Verify PBX instance connection; check database permissions; ensure FusionPBX has users |
| Wrong tenant assignment | Review domain-to-tenant mapping |
| Duplicate users | Check matching logic; ensure email/extension uniqueness in FusionPBX |
| Sync fails | Check database connectivity; review error messages; verify FusionPBX schema compatibility |
| Missing extensions | Ensure extensions are linked to users in FusionPBX |
Best Practices
- Test connection first — Use the PBX instance test before sync
- Run sync after FusionPBX changes — Keep CrystalQore in sync with user/extension updates
- Review new users — After sync, verify new accounts have correct tenant and role
- Document mapping — Keep a record of domain-to-tenant mapping for troubleshooting
Related Documentation
| Page | Description |
|---|---|
| PBX Instance Management | Configure FusionPBX connection |
| User Management | Manage users created by sync |
| Tenant Management | Configure tenant and domain mapping |