Helpdesk migration
Field-level mapping, validation, and rollback between Foqal and Salesforce Service Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Service Cloud.
Foqal
Source
Salesforce Service Cloud
Destination
Compatibility
10 of 11
objects map 1:1 between Foqal and Salesforce Service Cloud.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Foqal to Salesforce Service Cloud is a structural migration where a messaging-channel ticketing model translates to a traditional case management architecture. Foqal Tickets carry status, priority, assignee, and conversation threads; we map these to Salesforce Cases with EmailMessage threads attached. Foqal Teams map to Salesforce Queues or Groups depending on routing scope. SLA configurations from Foqal become Entitlement Processes and Milestones in Service Cloud. Automation rules (routing triggers, approval chains, SLA policies) are not first-class API objects in Foqal — we export their definitions as a written inventory for the customer's admin to rebuild in Salesforce Flow. We use the Foqal GraphQL API with dynamic Origin header injection, paginated batch extraction, and Salesforce Bulk API 2.0 for the destination load, handling parent-record lookup resolution and exponential backoff on rate-limit responses. Historical timestamps on tickets, conversations, and SLA events are preserved throughout.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Source platform
Foqal platform overview
Scorecard, SWOT, gotchas, and pricing for Foqal.
Destination platform
Salesforce Service Cloud platform overview
Scorecard, SWOT, gotchas, and pricing for Salesforce Service Cloud.
Data migration guide
The complete Salesforce Service Cloud migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
Salesforce Service Cloud migration checklist
Pre- and post-cutover tasks for moving onto Salesforce Service Cloud.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Foqal object lands in Salesforce Service Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Foqal
Ticket
Salesforce Service Cloud
Case
1:1Foqal Tickets map directly to Salesforce Case records. We preserve ticket status (open, pending, resolved, closed), priority (low, medium, high, urgent), Foqal ticket ID as a custom external reference field (foqal_ticket_id__c), and all standard Foqal metadata. The Case Origin maps from Foqal's channel field (Slack, Teams, email, web). Historical timestamps on CreatedDate and ClosedDate are preserved from the Foqal response. Foqal ticket channels map to Case Origin values configured in the destination Salesforce org.
Foqal
Conversation
Salesforce Service Cloud
EmailMessage + CaseComment
1:1Foqal conversation threads attached to a Ticket migrate to Salesforce as EmailMessage records (for email-style messages) and CaseComment records (for internal notes). Each message preserves its timestamp, attributed user or agent, and message body. Attachment references migrate as ContentDocumentLink records pointing to the parent Case. Thread chronology is preserved by ordering messages against the original Foqal timestamp. If the Foqal export returns messages with a non-standard structure, we reconstruct the thread from the API response and flatten it into the appropriate Salesforce object.
Foqal
Agent
Salesforce Service Cloud
User
1:1Foqal Agent records (name, email, role, team assignment) map to Salesforce User records. We match agents by email against the destination org's User table. Any Foqal Agent without a matching User goes to a reconciliation queue for the customer's Salesforce admin to provision before record migration. Agent role (admin, agent) maps to Salesforce Profile and Role assignments that we configure in the destination org before migration.
Foqal
Team
Salesforce Service Cloud
Queue or Group
1:1Foqal Teams map to Salesforce Queues for case routing or Groups for team-level visibility. We determine the correct Salesforce object type during scoping based on whether the Foqal team owns SLA policies and routing rules. Team membership migrates as QueueGroupMember records (for Queues) or GroupMember records (for Groups). If the destination org uses Omnichannel, the Queue maps to an Omnichannel Configuration for skill-based routing.
Foqal
SLA Policy
Salesforce Service Cloud
Entitlement Process + Milestone
lossyFoqal SLA configurations (TTFR targets, wait times, tier definitions per Enterprise/Premium/Free) map to Salesforce Entitlement Processes and Milestones. Each Foqal SLA tier becomes a Salesforce Entitlement Process with Milestones representing First Response and Resolution targets. We export the Foqal SLA definitions during discovery and configure the equivalent Entitlement Process in the destination org before ticket migration begins, then link Entitlement records to Cases during the migration load.
Foqal
Workflow
Salesforce Service Cloud
Salesforce Flow (manual rebuild)
1:1Foqal automation rules (routing triggers, approval chains, SLA enforcement) are stored as configuration settings, not as queryable API objects. We export the workflow definitions from Foqal's UI-level settings where accessible and document them as a written inventory with trigger conditions, actions, and recommended Salesforce Flow equivalents. We do not migrate workflows as code because the underlying automation models are incompatible. The customer's admin rebuilds them in Salesforce Flow post-migration.
Foqal
Approval Request
Salesforce Service Cloud
Approval Process (manual rebuild)
1:1Foqal ApprovalRequest objects use a URN identifier format (ApprovalRequestUrn) and are referenced by workflow approvals. These URNs have no Salesforce equivalent and must be reconstructed. We document every active ApprovalRequest with its triggering rule, approver chain, and SLA dependency, then deliver this as a written handoff for the customer's admin to model as a Salesforce Approval Process. We do not migrate approval logic as executable code.
Foqal
HubSpot Integration (Companies, Deals, Contacts)
Salesforce Service Cloud
Account, Contact, Opportunity (Sales Cloud)
1:1Foqal maintains a bidirectional sync with HubSpot for Companies, Deals, and Contacts. If the customer moves HubSpot data to Salesforce Sales Cloud as part of this migration, we migrate the HubSpot Company as Account, HubSpot Contact as Contact, and HubSpot Deal as Opportunity in the same migration scope. If the customer keeps HubSpot, we preserve the Foqal sync pointers as reference notes in the destination and recommend a HubSpot-Salesforce native sync post-migration.
Foqal
Jira Integration
Salesforce Service Cloud
Salesforce record (not migratable)
1:1Foqal's Jira sync creates ticket context links between Foqal Tickets and Jira issues. These integration pointers are connection-level configs with no exportable URN-to-URN mapping. We document which Jira projects were linked to which Foqal queues and deliver a written list of the connections for the customer to re-establish via the Jira-Salesforce connector (or a third-party integration tool) after migration.
Foqal
ServiceNow Integration
Salesforce Service Cloud
Salesforce record (not migratable)
1:1Same as Jira: Foqal's ServiceNow sync creates bidirectional links between support tickets and ServiceNow records. These link pointers are not exportable as standalone data. We document which ServiceNow tables were linked to which Foqal queues and deliver the inventory for manual reconnection in the destination org using Salesforce's native integration or MuleSoft.
Foqal
Reports and Metrics
Salesforce Service Cloud
Salesforce Reports (not migratable)
1:1Foqal's productivity and CSAT reporting is computed from ticket data at query time, not stored as standalone objects. These reports cannot be exported and do not migrate. We do not migrate report snapshots. The customer's admin builds equivalent Salesforce Reports on the migrated Case object post-migration. We provide a metric mapping table listing Foqal report dimensions (ticket volume, CSAT score, first response time) and their Salesforce report equivalents (Case reports, Entitlement reports, Service Contract reports) to guide the rebuild.
| Foqal | Salesforce Service Cloud | Compatibility | |
|---|---|---|---|
| Ticket | Case1:1 | Fully supported | |
| Conversation | EmailMessage + CaseComment1:1 | Fully supported | |
| Agent | User1:1 | Fully supported | |
| Team | Queue or Group1:1 | Fully supported | |
| SLA Policy | Entitlement Process + Milestonelossy | Fully supported | |
| Workflow | Salesforce Flow (manual rebuild)1:1 | Fully supported | |
| Approval Request | Approval Process (manual rebuild)1:1 | Fully supported | |
| HubSpot Integration (Companies, Deals, Contacts) | Account, Contact, Opportunity (Sales Cloud)1:1 | Fully supported | |
| Jira Integration | Salesforce record (not migratable)1:1 | Fully supported | |
| ServiceNow Integration | Salesforce record (not migratable)1:1 | Fully supported | |
| Reports and Metrics | Salesforce Reports (not migratable)1:1 | Not supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Foqal gotchas
Import from Zendesk and HappyFox requires manual arrangement
Workflow automation rules are not first-class API objects
Free plan severely limits agent seats and features
Origin header requirement blocks cross-origin API access
Salesforce Service Cloud gotchas
Data Export 512MB file size cap breaks large org exports
API Daily Request Limits vary by license edition
No automatic data backup in base Salesforce
Picklist dependencies silently break records when unmapped
Workflow rules fire unexpectedly during data load
Pair-specific challenges
Migration approach
Discovery and credential handover
We audit the source Foqal instance: ticket volume, active agents, team count, SLA tier configurations, automation rule definitions, approval chains, and integration connections (HubSpot, Jira, ServiceNow). We extract a complete list of Foqal SLA policies and their tier assignments. We collect the Bearer token from Settings > Users and confirm the Origin subdomain for every API call. We verify the destination Salesforce org edition (Service Cloud Starter $25, Professional $75, Enterprise $175, or Unlimited $350 per user per month) and confirm whether Sales Cloud co-exists in the same org.
Schema design and Entitlement Process configuration
We design the Salesforce destination schema: Case Origin values mapped from Foqal channel types, Case Record Types if multiple ticket categories exist, SLA/Entitlement Processes configured with Milestones matching Foqal TTFR targets, Queues or Groups for team migration, and custom fields (foqal_ticket_id__c, foqal_created_at__c) on Case. We configure Salesforce Profiles and Roles for agent users before migration. If Omnichannel is required, we configure Skills and Omni-Channel Flows. Schema deploys to a Salesforce Sandbox first for validation before production migration begins.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox using production-like data volume. The customer reconciles record counts (Cases in, Agents mapped, Teams migrated, SLA policies linked), spot-checks 25-50 random Cases against the source Foqal tickets, and validates that conversation threads are intact and chronological. Any field mapping corrections, SLA tier adjustments, or custom field additions happen here before production migration. Sign-off from the customer's admin is required before the production cutover date is set.
Agent-to-User reconciliation
We extract every distinct Foqal Agent referenced on Tickets and resolve them by email against the destination Salesforce org's User table. Agents without matching Users go to a reconciliation queue. The customer's Salesforce admin provisions any missing Users (with the correct Profile, Role, and active/inactive status) before production migration. Migration cannot proceed past this step because Case OwnerId references are required on every record.
Production migration in dependency order
We run production migration in record-dependency order: Users (manually provisioned and validated), Queues and Groups (from Foqal Teams), Entitlement Processes (from Foqal SLA Policies), Cases (from Foqal Tickets), EmailMessage and CaseComment threads (from Foqal Conversations), and finally Entitlements linked to Cases. Each phase emits a row-count reconciliation report before the next phase begins. We use Salesforce Bulk API 2.0 with chunking, parent-record lookup resolution (OwnerId, EntitlementId, AccountId), and exponential backoff on API limit responses.
Cutover, delta migration, and automation rebuild handoff
We freeze Foqal writes during cutover, run a final delta migration of any Cases modified during the migration window, then enable Salesforce as the system of record. We deliver the automation inventory document listing every Foqal routing rule, approval chain, and SLA trigger with its recommended Salesforce Flow or Approval Process equivalent. We support a one-week hypercare window for reconciliation issues. We do not rebuild Foqal automations as Salesforce Flow inside the migration scope; that work is handled by the customer's admin or a Salesforce implementation partner.
Platform deep dives
Foqal
Source
Strengths
Weaknesses
Salesforce Service Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard Helpdesk migration. 1 of 7 objects need a manual workaround.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Foqal and Salesforce Service Cloud.
Object compatibility
1 of 7 objects need a manual workaround.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
7-object category — typical timelines run 2–7 days end-to-end.
API constraints
Foqal: Not publicly documented.
Data volume sensitivity
Foqal doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Foqal to Salesforce Service Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Foqal to Salesforce Service Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Foqal
Other ways to arrive at Salesforce Service Cloud
Same-Helpdesk migrations
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.