CRM migration
Field-level mapping, validation, and rollback between work4all and HighLevel. We move data and schema; workflows are rebuilt natively in HighLevel.
work4all
Source
HighLevel
Destination
Compatibility
6 of 10
objects map 1:1 between work4all and HighLevel.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from work4all to GoHighLevel is a cross-platform migration from a German Windows-desktop ERP/CRM with no public API to a browser-native all-in-one marketing and CRM platform built for agencies and service businesses. work4all organises data around Customers (Debitoren), Suppliers (Kreditoren), Items (Artikel), and ERP documents (Invoices, Offers, Cost Receipts) with Open Items (Offene Posten) tracking outstanding balances. GoHighLevel uses Contacts, Opportunities, Custom Objects, and Pipelines with a Workflow automation layer. Because work4all has no documented public API, data export relies on built-in Excel templates and vendor-assisted database exports, adding three to five business days to scoping compared to platforms with open APIs. We sequence the migration starting with Contact and Address records, then Company and Supplier master data, Items as Custom Objects or Opportunity line items, Opportunities with pipeline stage mapping, and Open Items as Notes or Custom Object records. GoHighLevel's Workflows, automations, and funnel builders do not migrate as code; we deliver a written inventory for the admin to rebuild.
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 work4all object lands in HighLevel, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
work4all
Customer (Debitor)
HighLevel
Contact + Company
1:1work4all Customer master records (address, contact details, commercial figures, open items) map to a GoHighLevel Contact and an associated Company record. The Customer number from work4all becomes a custom field cust_number__c on Contact. We export Customer and Address records first to satisfy the lookup dependency before importing Contacts.
work4all
Supplier (Kreditor)
HighLevel
Company (with supplier flag)
1:1work4all Supplier master data mirrors the Customer structure with address and purchasing history. We map Suppliers to GoHighLevel Company records with a boolean custom field is_supplier__c set to true, and a custom field supplier_id__c carrying the original work4all supplier number. This separates suppliers from customers in reporting without losing the relationship graph.
work4all
Item (Artikel)
HighLevel
Custom Object (Items)
1:1Item master records (pricing, descriptions, stock information, item variants) map to a GoHighLevel Custom Object named Items with fields for item_code, description, unit_price, and variant_data. GoHighLevel's Product2 object is not used because work4all Items include ERP-specific fields (stock levels, cost price, supplier reference) that have no direct Product2 equivalent. The Custom Object approach preserves the full item schema.
work4all
Sales Opportunity
HighLevel
Opportunity + Pipeline
1:1work4all Sales Opportunities with stage, estimated value, linked Customer, and Contact references map to GoHighLevel Opportunities. Pipeline stages map to GoHighLevel Pipeline stages, and deal value maps to Opportunity value. We create the GoHighLevel Pipeline and stage definitions before migration to ensure stage values are whitelisted. The original work4all opportunity status (offen, gewonnen, verloren) maps to GHL stage names.
work4all
Telephone Notes / Call Logs
HighLevel
Contact Note
1:1Phone call logs are CRM activities linked to Customers and Contacts. Exported notes are free-text summaries with timestamps. We import them as GoHighLevel Contact Notes with the source system tagged in a custom field call_log_source__c. Caller ID data (TAPI integration in work4all) maps to the Contact phone field if not already present.
work4all
Visit Reports
HighLevel
Task or Custom Object (Visit Reports)
lossyVisit reports are time-stamped CRM records associated with a Customer and an Owner, potentially with custom fields depending on industry extension usage. For standard cases we import as GoHighLevel Tasks with type=Visit. If the customer uses industry-extension-specific fields on visit reports, we create a Custom Object Visit_Reports with matching custom fields and associate it to the relevant Contact or Company via a lookup relationship.
work4all
Invoice / ERP Document
HighLevel
Custom Object (Invoices)
lossyInvoices, offers, and cost receipts are stored as ERP documents linked to Customers and Items. Document headers and line items migrate as a GoHighLevel Custom Object Invoice with line_items as a JSON custom field or as separate Custom Object Invoice_Line_Item records linked to the Invoice. PDF attachments from work4all require a separate file transfer and linking step. Note that GoHighLevel's native Payments/Invoicing module is separate from this migration scope.
work4all
Open Items (Offene Posten)
HighLevel
Custom Object (Open Items)
lossyOpen items represent unpaid or partially paid invoices and credit memos tied to Customers. We export open items with invoice reference, amount open, due date, currency, and payment status. If partial payments exist, we reconstruct the open amount from original invoice amount minus recorded payments (requesting payment records from the vendor export). In GoHighLevel, Open Items become a Custom Object Open_Items with fields for invoice_reference, original_amount, open_amount, due_date, and payment_status. This object is not natively supported in GoHighLevel pipelines or workflows; it serves as a reporting and reference record.
work4all
Task
HighLevel
Task
1:1work4all Tasks (standalone CRM objects with status, priority, due date, owner, linked Customer/Contact/Document) map directly to GoHighLevel Tasks. Status enum values (offen, erledigt, storniert) map to GoHighLevel task status values. Owner assignment resolves via email lookup to GoHighLevel Users. Due dates and priorities migrate directly.
work4all
Time Recording
HighLevel
Task or Custom Object (Time Entries)
lossyTime entries are linked to Employees, Projects, or Tasks depending on work4all configuration. Light-tier users have restricted time entry access only, so we confirm access during scoping. Time entries migrate as GoHighLevel Tasks with a custom field time_hours__c and time_project__c, or as a Custom Object Time_Entries if the customer requires project-level time tracking across multiple dimensions.
| work4all | HighLevel | Compatibility | |
|---|---|---|---|
| Customer (Debitor) | Contact + Company1:1 | Fully supported | |
| Supplier (Kreditor) | Company (with supplier flag)1:1 | Fully supported | |
| Item (Artikel) | Custom Object (Items)1:1 | Fully supported | |
| Sales Opportunity | Opportunity + Pipeline1:1 | Fully supported | |
| Telephone Notes / Call Logs | Contact Note1:1 | Fully supported | |
| Visit Reports | Task or Custom Object (Visit Reports)lossy | Mapping required | |
| Invoice / ERP Document | Custom Object (Invoices)lossy | Fully supported | |
| Open Items (Offene Posten) | Custom Object (Open Items)lossy | Mapping required | |
| Task | Task1:1 | Fully supported | |
| Time Recording | Task or Custom Object (Time Entries)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.
work4all gotchas
Light licence users cannot export all data types
No public REST API; migrations rely on Excel templates and vendor-assisted exports
Custom fields are not discoverable via a metadata endpoint
Open items require reconciliation against payment history before export
HighLevel gotchas
Sub-account architecture creates isolated data silos per client
Usage-based telecom and AI costs are not in the subscription price
Workflows have no native equivalent in most destination CRMs
API rate limits cap bulk migration throughput at 100 requests per 10 seconds per sub-account
White-label configuration and branding assets do not export via API
Pair-specific challenges
Migration approach
Discovery and licence audit
We audit the work4all portal across all licence tiers, identifying every user with a Light account who may have restricted export access. We inventory the full object list in use: Customer count, Supplier count, Item count, Open Item volume, Opportunity pipeline stages, and any activity records (telephone notes, visit reports, tasks). We confirm which objects and fields are covered by the standard Excel export template and which require a vendor-assisted export. We also identify any custom fields by asking the customer for a field inventory screenshot and cross-checking against the exported schema. The discovery output is a written migration scope with a GoHighLevel plan recommendation ($97 Starter, $297 Unlimited, or $497 SaaS Pro) based on sub-account count and white-label requirements.
Vendor export coordination
We coordinate with the work4all vendor to request a database-level export of all CRM and ERP records, or to run the Excel export templates in reverse for Customer, Supplier, and Item records. This step adds three to five business days compared to platforms with open APIs. We request separate exports for: Customer and Address master data, Supplier master data, Item catalogue, Open Items with payment history (if partial payments exist), Opportunity records, and activity records (telephone notes, visit reports, tasks). Each export is validated for completeness and field coverage before schema design begins.
GoHighLevel schema design
We design the destination schema in GoHighLevel before any data moves. This includes creating Custom Objects (Items, Invoices, Open_Items, Visit_Reports, Time_Entries) with matching custom fields, configuring Pipelines and stage definitions mapped from work4all opportunity stages, setting up Contact and Company custom fields (cust_number__c, is_supplier__c, supplier_id__c), and defining any lookup relationships between Custom Objects and Contacts or Companies. Custom field data types are matched (text to text, number to number, date to date). Schema is validated in the GoHighLevel test environment before production migration begins.
Test migration and reconciliation
We run a full migration into the GoHighLevel test environment using production-equivalent data volume. The customer reconciles record counts, spot-checks 20-30 random records against the work4all source, and reviews the Open Items and Invoice Custom Object records for accuracy. Any field mapping corrections, missing lookups, or custom field omissions are addressed here. The customer signs off the test migration before production cutover is scheduled.
Production migration in dependency order
We run production migration in dependency order: Contact and Company master data first (satisfying lookups), then Supplier Company records with the is_supplier__c flag, then Custom Objects for Items, Invoices, Open_Items, Visit_Reports, and Time_Entries, then Opportunities with pipeline stage mapping, then activity history (telephone notes, tasks, visit reports as Tasks or Custom Object records). Each phase emits a row-count reconciliation report. The work4all vendor export is re-run as a delta immediately before cutover to capture any records created or modified during the migration window.
Cutover, validation, and Workflow rebuild handoff
We freeze writes in work4all during cutover, run the final delta export, then enable GoHighLevel as the system of record. We validate record counts, random record spot-checks, and pipeline stage distribution. We deliver a written Workflow and Automation Inventory documenting every work4all internal automation requiring rebuild in GoHighLevel Workflows. We support a three-day hypercare window for reconciliation issues. We do not rebuild work4all automations as GoHighLevel Workflows inside the migration scope; that work is documented separately for the customer's admin team.
Platform deep dives
work4all
Source
Strengths
Weaknesses
HighLevel
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 work4all and HighLevel.
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
work4all: Not publicly documented.
Data volume sensitivity
work4all 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 work4all to HighLevel migration scoping. Not seeing yours? Book a call.
Walk through your work4all to HighLevel migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave work4all
Other ways to arrive at HighLevel
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.