CRM migration
Field-level mapping, validation, and rollback between aACE and Salesforce Sales Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Sales Cloud.
aACE
Source
Salesforce Sales Cloud
Destination
Compatibility
9 of 12
objects map 1:1 between aACE and Salesforce Sales Cloud.
Complexity
BStandard
Timeline
4-6 weeks
Overview
Moving from aACE to Salesforce is a migration from a FileMaker-linked single-database environment into a cloud-native CRM with a full REST and Bulk API. aACE exposes no public API — we extract data through FileMaker export scripts that write to a temporary cache table scoped to the running user account. Salesforce accepts data through its Bulk API 2.0 with batch chunking and exponential backoff, which handles the volume that aACE customers typically carry when they outgrow FileMaker's performance ceiling. We map aACE Accounts to Salesforce Account records, preserve Company Locations as Salesforce Location or address fields, route Sales Orders to Opportunity records with pipeline and stage configuration, and carry Purchase Orders, Invoices, and Projects through their respective objects. Custom fields require manual discovery from the customer's FileMaker layout definitions during scoping because aACE provides no metadata API. Binary document containers in FileMaker do not migrate via export scripts and are flagged for a separate document export step. We do not migrate FileMaker scripts, aACE automation workflows, or custom FileMaker layouts as code; we deliver a written inventory of these for the customer's admin to rebuild in Salesforce Flow.
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.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a aACE object lands in Salesforce Sales Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
aACE
Account
Salesforce Sales Cloud
Account
1:1aACE Accounts are the primary customer and vendor records, holding billing and payment terms. Every Order, Invoice, and Purchase Order references an Account. We map Accounts 1:1 to Salesforce Account, preserving the aACE account type (Customer, Vendor, Both) in a custom picklist field ace_account_type__c and using the Account Name as the dedupe key during import.
aACE
Company Location
Salesforce Sales Cloud
Account Address or Location
1:manyaACE supports multiple Company Locations per Account, each with its own address and optional contact. We map each Location to a Salesforce Account Address record (if Location Management is enabled in the destination org) or to a custom address field set on Account if Location Management is not available. The primary location becomes the Account billing address; secondary locations map as additional address records ordered by the aACE location sequence.
aACE
Item
Salesforce Sales Cloud
Product2
1:1aACE Items hold SKU, description, unit cost, and pricing tiers, and link to Sales Orders and Purchase Orders as line items. We map Items to Salesforce Product2 with Standard Price Book entries created during import. The aACE unit cost maps to the Product2 UnitCost field; pricing tiers become custom fields or PricebookEntry tier records depending on the destination org's pricing model.
aACE
Sales Order
Salesforce Sales Cloud
Opportunity
1:1aACE Sales Orders are the transactional core, linking a Customer Account to Line Items and spawning Invoices and Purchase Orders. We map Sales Orders to Salesforce Opportunity, preserving Order status (Open, Closed Won, Closed Lost) as StageName via a customer-approved stage matrix. The originating Account resolves to the Opportunity AccountId at migration time.
aACE
Sales Order Line Item
Salesforce Sales Cloud
OpportunityLineItem
1:1aACE Sales Order Line Items carry Item reference, quantity, unit price, and tax. We map these to Salesforce OpportunityLineItem, resolving Pricebook2Id from the destination org's active Standard Price Book and Product2Id from the Item-to-Product2 mapping. TotalPrice, Quantity, and UnitPrice migrate directly. Tax amounts route to a custom Opportunity field if the destination org tracks tax at the line-item level.
aACE
Invoice
Salesforce Sales Cloud
Invoice (Sales Cloud) or Custom Invoice Object
1:1aACE Invoices track both open A/R and historical closed invoices. Salesforce Sales Cloud Invoice is available from Enterprise and Unlimited editions. We map Invoice headers (Invoice Number, Invoice Date, Due Date, Total Amount, Balance) and line items accordingly. If the destination org does not include the Invoice object, we map to a custom Invoice__c object with Invoice Line Items as a related list.
aACE
Purchase Order
Salesforce Sales Cloud
Purchase Order (Financial Services Cloud) or Custom Purchase Order
1:1aACE Purchase Orders link to Items, Vendors, and the originating Sales Order. We map PO headers and line items. Partial receipts (items received against a PO that is not yet fully received) preserve their received-quantity state in custom fields on the destination object because standard Salesforce does not include a PO object without Financial Services Cloud.
aACE
Project
Salesforce Sales Cloud
Custom Project__c Object
1:1aACE Projects hold job headers and link to Tasks, Time entries, and billing records. Salesforce does not include a native Project object in standard Sales Cloud. We pre-create a custom Project__c object with fields for Project Name, Status, Start Date, End Date, and Budget, and map Project Tasks to Salesforce Task records with a custom Project lookup field.
aACE
Task
Salesforce Sales Cloud
Task
1:1aACE Tasks link to Projects and optionally to Accounts and Orders. We preserve Task Subject, Status, Priority, Due Date, Assignee, and any custom flag fields. High-volume task exports run in batches through the FileMaker cache table to avoid memory exhaustion. The assignee resolves via Owner-to-User mapping by email.
aACE
Employee
Salesforce Sales Cloud
User (reconciliation queue)
1:1aACE Employee records hold name, department, role, and compensation data. We extract the active employee roster with role and department for mapping to Salesforce User records. Employees without a corresponding Salesforce User go to a reconciliation queue for the customer's admin to provision before record import. Historical payroll data migrates as a separate dataset if required.
aACE
Custom Fields
Salesforce Sales Cloud
Custom Fields (__c)
lossyaACE tenants frequently add custom fields on Accounts, Orders, and Items to support unique distribution and manufacturing workflows. We discover custom field definitions from the customer's FileMaker layout exports during scoping and build the corresponding Salesforce custom fields before migration. Custom fields with no Salesforce equivalent are written as JSON blobs in a legacy_data__c text area field to prevent silent data loss.
aACE
Distribution List
Salesforce Sales Cloud
Campaign + CampaignMember (reconstruction)
lossyaACE Distribution Lists are FileMaker portal-based address-book groupings. These do not have a direct Salesforce equivalent as a list object. We export the list membership (contact reference plus group name) and map it to Salesforce Campaigns with the contacts as CampaignMember records. The customer configures the Campaign type (Newsletter, Event, Promotion) during scoping.
| aACE | Salesforce Sales Cloud | Compatibility | |
|---|---|---|---|
| Account | Account1:1 | Fully supported | |
| Company Location | Account Address or Location1:many | Fully supported | |
| Item | Product21:1 | Fully supported | |
| Sales Order | Opportunity1:1 | Fully supported | |
| Sales Order Line Item | OpportunityLineItem1:1 | Fully supported | |
| Invoice | Invoice (Sales Cloud) or Custom Invoice Object1:1 | Fully supported | |
| Purchase Order | Purchase Order (Financial Services Cloud) or Custom Purchase Order1:1 | Fully supported | |
| Project | Custom Project__c Object1:1 | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Employee | User (reconciliation queue)1:1 | Fully supported | |
| Custom Fields | Custom Fields (__c)lossy | Mapping required | |
| Distribution List | Campaign + CampaignMember (reconstruction)lossy | Fully 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.
aACE gotchas
No public API — FileMaker export scripts only
FileMaker cache table is shared per-user
Custom fields require manual field-discovery
Binary document containers are not migrated
Salesforce Sales Cloud gotchas
Workflow Rules and Process Builder are retired
Bulk API batch quota exhaustion during large imports
Storage overage billing is non-obvious
Account-Contact many-to-many relationship mapping
Territory and team member import ordering dependencies
Pair-specific challenges
Migration approach
Scoping and FileMaker layout discovery
We audit the source aACE database with the customer. This includes extracting a representative set of FileMaker layout exports to identify all standard and custom fields on Accounts, Items, Sales Orders, Invoices, Purchase Orders, Projects, and Tasks. We also map the relational links (which Order links to which Account, which Invoice, which PO) by reviewing the aACE relationship graph. The scoping output is a written migration scope document with the object list, field inventory, and relational link diagram, plus a Salesforce edition recommendation based on the customer's data volume and custom object requirements.
Salesforce schema design and pre-creation
We design the destination schema in Salesforce. This includes creating all custom fields on Account, Opportunity, and any custom Project__c and Purchase_Order__c objects; configuring Opportunity Record Types and Sales Processes for each aACE sales pipeline; setting up Pricebook2 entries and PricebookEntry records for the item catalog; and mapping the customer-approved stage matrix (aACE Order Status to Salesforce StageName with probability weights). Schema deploys into a Salesforce Sandbox first for validation before any data moves to production.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox using production-like data volumes. The customer's operations lead and Salesforce admin reconcile record counts (Accounts in, Orders in, Invoices in, Purchase Orders in), spot-check 25-50 records against the aACE source, and validate that relational links (Order-to-Account, Invoice-to-Account) are intact. Any field mapping corrections, stage matrix adjustments, or custom field additions happen in the Sandbox before the production migration begins.
Owner reconciliation and User provisioning
We extract every distinct aACE user referenced on Orders, Invoices, Projects, and Tasks and match by email against the destination Salesforce org's User table. Users without a matching Salesforce User record go to a reconciliation queue. The customer's admin provisions any missing Users before production migration proceeds. OwnerId references on Opportunity and Task cannot be null — migration cannot complete past this step until the queue is resolved.
Production migration in dependency order
We run production migration in record-dependency order. Accounts and their Company Locations are created first (Location Management or address fields). Items and Pricebook entries follow. Sales Orders (mapped to Opportunity) are imported with AccountId and OwnerId resolved. Sales Order Line Items (mapped to OpportunityLineItem) follow with Product2Id and Pricebook2Id resolved. Invoices and Purchase Orders migrate next. Tasks, Projects, and any custom objects migrate last because they may reference Accounts or Opportunities as parent records. Each phase emits a row-count reconciliation report before the next phase begins. We use Bulk API 2.0 for batches over 5,000 records.
Cutover, validation, and automation handoff
We freeze aACE writes during cutover, run a final delta migration of any records modified during the migration window, then enable Salesforce as the system of record. We deliver a written inventory of all aACE FileMaker scripts, custom layouts, and automation logic that the customer's admin should rebuild in Salesforce Flow. We do not rebuild aACE workflows as Salesforce Flow inside the migration scope; that is a separate engagement. We support a one-week hypercare window for reconciliation issues raised by the customer's team. Document and attachment export is handled separately via a FileMaker-native export step outside the primary migration scope.
Platform deep dives
aACE
Source
Strengths
Weaknesses
Salesforce Sales Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across aACE and Salesforce Sales Cloud.
Object compatibility
2 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
aACE: Not publicly documented for aACE itself. The underlying Claris FileMaker Data API caps concurrent sessions per server license, so high-volume extracts must be chunked and timed against the customer's FileMaker Server capacity (confirmed during scoping)..
Data volume sensitivity
aACE 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 aACE to Salesforce Sales Cloud migration scoping. Not seeing yours? Book a call.
Walk through your aACE to Salesforce Sales 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 aACE
Other ways to arrive at Salesforce Sales Cloud
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.