ERP migration

Migrate from SAP S/4HANA Cloud to Acumatica

Field-level mapping, validation, and rollback between SAP S/4HANA Cloud and Acumatica. We move data and schema; workflows are rebuilt natively in Acumatica.

SAP S/4HANA Cloud logo

SAP S/4HANA Cloud

Source

Acumatica

Destination

Acumatica logo

Compatibility

75%

9 of 12

objects map 1:1 between SAP S/4HANA Cloud and Acumatica.

Complexity

BStandard

Timeline

2–4 months

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

SAP S/4HANA Cloud organizes its data model around clients, company codes, and plants, with Business Partners serving as unified vendor/customer entities and Material Masters carrying rich classification hierarchies (material type, procurement type, valuation class). Acumatica uses a simpler tenant-scoped model with separate Customer and Vendor entities, Stock Items for inventory, and a single-segment GL with Cost Codes for dimensional analysis. We extract data from SAP via the S/4HANA OData API (constrained by SAP's per-entity rate limits — typically 100–5,000 records per page depending on entity), map each SAP module to its Acumatica equivalent, and load through Acumatica's REST endpoints. Workflows, approval routines, and pricing condition tables do not migrate and must be rebuilt as Acumatica automation scripts and notification rules. SAP's Flexible General Ledger (with multi-segment account codes) must be flattened to a single Acumatica GL code, with extra segment values preserved as custom fields. A sample migration of 200–500 records per major object type runs first, generating a field-level diff that you review before the full cutover commits. During cutover, a 24–48-hour delta-pickup window captures any records created or modified in SAP after the initial extraction snapshot.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

SAP S/4HANA Cloud logo

SAP S/4HANA Cloud

What's pushing teams away

  • Steep learning curve and complex navigation require extensive user training; simple tasks like checking PO receipt status can take too many clicks, frustrating day-to-day users.
  • High total cost of ownership including $100K+ annual subscriptions and $400K-$1M implementation fees creates a significant budget commitment that smaller organizations cannot sustain.
  • Limited customization in Public Cloud Edition forces organizations to adopt SAP's standard processes rather than accommodate existing workflows, causing friction during fit-to-standard workshops.
  • Integration with non-SAP or legacy systems requires additional tools and expertise, increasing migration complexity and overall project cost beyond initial estimates.
  • Vendor lock-in through RISE contracts wraps multiple services into a single agreement that is very difficult to unbundle, reducing flexibility for future platform changes.

Choosing

Acumatica logo

Acumatica

What's pulling them in

  • Unlimited user licensing lets companies add staff without per-seat billing shocks, making Acumatica cost-predictable at scale.
  • Flexibility and scalability earn consistent praise — users value a platform that adapts to vertical workflows without forcing a redesign.
  • Real-time visibility across financials, inventory, and projects gives mid-market businesses a consolidated operational view previously available only in enterprise-tier ERPs.
  • Cloud-native architecture with automatic updates removes infrastructure management burden from in-house IT teams.
  • Modular licensing lets companies start with one or two suites (Financials, Distribution) and expand into Manufacturing or CRM incrementally.

Object mapping

How SAP S/4HANA Cloud objects map to Acumatica

Each row shows how a SAP S/4HANA Cloud object lands in Acumatica, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

SAP S/4HANA Cloud

Business Partner (SAP)

maps to

Acumatica

Customer + Vendor (Acumatica)

1:many
Fully supported

SAP Business Partner is a single entity covering both customer and vendor roles. We split on BP role (KUNNR for customers, LIFNR for vendors) into separate Acumatica Customer and Vendor records. Where a BP carries both roles in SAP, both Acumatica entities are created and linked by the original BP number stored in Source_System_ID__c on each record.

SAP S/4HANA Cloud

Material Master (SAP)

maps to

Acumatica

Stock Item or Non-Stock Item (Acumatica)

1:1
Fully supported

SAP Material Master carries material type (ROH, HALB, FERT, HAWA), procurement type (in-house/external/both), and valuation class. We map material type 'ROH'/'HALB'/'FERT' to Acumatica Stock Item with ValuationGroupID derived from SAP valuation class; 'DIEN'/'KMPF' map to Non-Stock Item. Basic Unit of Measure becomes Item UOM; alternate UoMs are stored in Acumatica's UoM conversion table if fewer than three exist, otherwise flagged for post-migration cleanup.

SAP S/4HANA Cloud

G/L Account (SAP)

maps to

Acumatica

Account (Acumatica)

1:1
Fully supported

SAP Flexible General Ledger charts of accounts with up to 10 segments are flattened into a single Acumatica Account.cd3 account code. We concatenate the primary segment (typically company-code-level account number) with secondary segments using a delimiter of your choice. All additional segment values are stored in Custom_SAP_GL_Segment_Ref__c on the Acumatica Account for post-migration Cost Code assignment. Account type (balance sheet vs. P&L) is mapped from SAP's chart-type field (SATYP).

SAP S/4HANA Cloud

Cost Center (SAP)

maps to

Acumatica

Cost Code (Acumatica)

1:1
Fully supported

SAP Cost Center (KOSTL) maps directly to Acumatica Cost Code. The SAP Cost Center hierarchy (controlling area level) is preserved as a parent-child relationship in Acumatica Cost Codes. Functional area assignments from SAP are stored in CostCodeCategory__c on the Acumatica Cost Code. Users recreate cost center-based reporting in Acumatica's Report Designer using Cost Code as the primary dimension.

SAP S/4HANA Cloud

Purchase Order / Purchase Requisition (SAP)

maps to

Acumatica

Purchase Order (Acumatica)

many:1
Fully supported

SAP separates Purchasing Requisitions (ME51N) from Purchase Orders (ME21N) as distinct documents. Acumatica has one Purchase Orders screen that covers both planned and released orders. We map SAP PO header and line data directly; SAP requisitions without a released PO are loaded as Acumatica purchase orders in Draft status, with the original requisition number preserved in Custom_SAP_PO_Number__c. Release strategy codes are not replicated — your Acumatica admin implements approval workflows post-migration.

SAP S/4HANA Cloud

Sales Order (SAP)

maps to

Acumatica

Sales Order (Acumatica)

1:1
Fully supported

SAP Sales Document (VA01/VA02) maps to Acumatica Sales Order with full header and line-level detail. SAP sales area (sales org / distribution channel / division) is stored as Custom_SAP_SalesArea__c on the Acumatica header. Pricing conditions from SAP (KONV) are mapped to Acumatica manual line adjustments where the number of conditions is fewer than five; complex multi-condition structures are flagged for Acumatica price manager configuration post-migration.

SAP S/4HANA Cloud

Invoice (SAP FI)

maps to

Acumatica

Bill / Invoice (Acumatica)

1:1
Fully supported

SAP FI Invoice (FB60 for vendors, FB01 for GL direct) maps to Acumatica Bills (vendors) and Invoices (customers). Invoice line items are mapped to Acumatica bill/invoice details with account or project reference. Payment terms from SAP (ZTERM) are stored in Custom_SAP_Payment_Terms__c on the Acumatica bill; your admin configures matching Payment Terms in Acumatica's Terms editor post-migration.

SAP S/4HANA Cloud

Asset (SAP)

maps to

Acumatica

Fixed Asset (Acumatica)

1:1
Fully supported

SAP Fixed Asset Master (AS01) maps to Acumatica Fixed Asset. Depreciation area assignments from SAP are not replicated — Acumatica calculates depreciation on its own depreciation schedule. Useful life, acquisition date, acquisition cost, and accumulated depreciation are preserved from SAP fields ANLA-aktiv, AKTFN, and AFAVC. Asset class (ANLA-ANLKL) is stored as Custom_SAP_Asset_Class__c on the Acumatica asset.

SAP S/4HANA Cloud

Project (SAP PS)

maps to

Acumatica

Project (Acumatica)

1:1
Fully supported

SAP Project System (CJ01) projects map to Acumatica Projects where the SAP PS module is active. WBS elements map to Acumatica Project Tasks with the WBS hierarchy preserved as task parent-child relationships. Network activities map to Project Tasks of type Labor. Revenue and cost planning lines are stored in Custom_SAP_Planning_Data__c for reference; your Acumatica project accountant rebuilds budget tracking within Acumatica's Project Budget module.

SAP S/4HANA Cloud

Custom Fields / Appends (SAP)

maps to

Acumatica

Custom Fields (Acumatica)

1:1
Fully supported

SAP Custom Fields added via Custom Fields and Logic (SAP S/4HANA Cloud) or customer-specific appends are exported with the standard entity. Each custom field requires an equivalent Acumatica custom field created in the Customization Project editor before migration runs. Custom field labels and help text from SAP are exported as reference documentation for your Acumatica admin during field creation. Fields on SAP-delivered tables that cannot be extended require a custom Acumatica screen or note field.

SAP S/4HANA Cloud

Address (SAP BP)

maps to

Acumatica

Address (Acumatica Customer / Vendor)

many:1
Fully supported

SAP Business Partner can hold multiple addresses per role (headquarters, purchasing, remittance). Acumatica stores one primary address per Customer or Vendor. We map the SAP address flagged as the 'Primary' address for each role to the Acumatica primary address. Any additional SAP addresses are stored as a JSON-formatted reference in Custom_SAP_Additional_Addresses__c on the Acumatica entity, available for manual distribution to contacts or shipping addresses post-migration.

SAP S/4HANA Cloud

Material Valuation (SAP)

maps to

Acumatica

Stock Item ValuationGroupID (Acumatica)

1:1
Fully supported

SAP Valuation Class controls which G/L accounts are posted for inventory transactions. Acumatica uses ValuationGroupID on Stock Item to determine valuation method (Standard, Average, FIFO). We map SAP valuation class to Acumatica ValuationGroupID and store the original SAP valuation class in Custom_SAP_Valuation_Class__c on the Stock Item. Where SAP maintains multiple parallel valuations per material, the primary (company-code-level) valuation is used; secondary valuations are preserved in the custom field reference for cost-audit purposes.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

SAP S/4HANA Cloud logo

SAP S/4HANA Cloud gotchas

High

Clean Core blocks in-app customizations on Public Cloud

Medium

OData API rate limits are per-endpoint, not tenant-wide

High

RISE/GROW contracts are nearly impossible to unbundle

High

In-memory data quality problems surface immediately post-go-live

Medium

Quarterly forced updates can break custom integrations

Acumatica logo

Acumatica gotchas

High

API user licenses cap concurrent sessions and request throughput

High

Multi-tenant filtering requires CompanyID awareness

Medium

Custom fields require separate discovery before field mapping

Medium

Notes and attachments use a separate linked table structure

Low

Implementation timelines frequently run 3–9 months end-to-end

Pair-specific challenges

  • SAP OData API rate limits constrain extraction throughput

    SAP S/4HANA Cloud Public Edition publishes per-entity rate limits rather than a single tenant-wide throttle. Journal Entry APIs cap at 15 synchronous or 30 asynchronous parallel calls; Product APIs default to page size 100 with a 5,000-record ceiling via $top. Custom OData APIs are capped at 5,000 records per fetch with no increase available. We implement chunked reads with exponential backoff and page-size negotiation per entity. For large journals (100k+ line items), we split extraction across multiple concurrent streams up to the documented limit, adding retry logic that detects HTTP 429 responses and backs off before resuming. This extends extraction time for large datasets but prevents API blocking that would stall the migration.

  • SAP Flexible General Ledger requires structural flattening

    SAP Flexible General Ledger (with SAP Fiori for Financials) supports up to 10 account segments per chart of accounts, and SAP implementations commonly use two or three segments (company code + segment or fund + program + commitment item). Acumatica's GL uses a single account code segment, and dimensional analysis beyond the account level relies on Cost Codes or branch scoping. We concatenate the primary SAP GL segment into the Acumatica Account.cd3 field and store secondary segments in Custom_SAP_GL_Segment_Ref__c on each Account record. Your Acumatica admin then uses those values to build Cost Codes or branch assignments that replicate the segment-level reporting the finance team relied on in SAP. This mapping requires a session with your SAP controller before the migration loads GL data.

  • SAP Business Partner multi-address model has no Acumatica equivalent

    SAP Business Partners can hold multiple address records per role — a BP with LIFNR (vendor) status can have a headquarters address, a purchasing address, a remittance address, and a service-site address, each with its own address key. Acumatica stores one primary address on a Customer or Vendor record. We map the SAP address flagged as the primary address for the relevant role to the Acumatica primary address field. Any additional SAP addresses are serialized as a JSON reference and stored in Custom_SAP_Additional_Addresses__c on the Acumatica entity. Your admin reviews this reference data post-migration and distributes secondary addresses to relevant Contacts or shipping address records manually. Addresses that were used in SAP printing or email templates are flagged for manual recreation in Acumatica's notification templates.

  • SAP UoM conversion matrix has no direct Acumatica counterpart

    SAP Material Masters support sophisticated UoM conversion rules with alternative UoMs, dimensional eXpress (Dx) rules, and conversion factors defined per material. Acumatica's UoM system supports conversion between defined UoMs on a Stock Item, but it does not replicate SAP's full dimensional rule engine. We identify the primary UoM for each material from SAP's MARC-MARM data and set it as the Stock Item base UoM. Where a material has fewer than three alternate UoMs, we create matching Acumatica UoM conversion entries on the Stock Item. Materials with complex conversion matrices (more than three alternate UoMs or Dx rules) are flagged in the migration plan, and the conversion logic must be rebuilt in Acumatica's UoM editor post-migration with your materials manager's input.

  • Parallel inventory valuations cannot be replicated in Acumatica

    SAP allows multiple parallel inventory valuations on a single material — a plant can run standard cost for financial reporting and moving average for operational valuation simultaneously using different valuation classes and closing procedures. Acumatica's Stock Item carries a single ValuationGroupID that determines the valuation method for all branches. We map the SAP valuation class that corresponds to your primary (company-code-level) valuation to Acumatica's ValuationGroupID, and we store all other SAP valuation class assignments in Custom_SAP_Valuation_Class__c on the Stock Item for audit reference. Dual-valuation scenarios that were critical in SAP require a conversation before migration about how Acumatica's inventory layer can be restructured to meet your reporting requirements, or whether the secondary valuation needs to live in a reporting layer (Power BI or Acumatica Report Designer) rather than in the transactional system.

Migration approach

Six steps for a successful SAP S/4HANA Cloud to Acumatica data migration

  1. Inventory all SAP entities and build the field mapping specification

    We connect to your SAP S/4HANA Cloud tenant via read-only OAuth credentials and run a schema inventory across all active modules (FI, CO, MM, SD, PP, PS where active). This produces a list of every entity, field, and active custom field in use — not just the fields that have data. We compare the SAP field list against the Acumatica default schema to identify gaps that require custom field creation. The output is a Field Mapping Specification document that your Acumatica admin reviews and approves before we create a single custom field or load a single record. This step typically runs 2–3 weeks and includes a working session with your SAP functional lead and your Acumatica admin to resolve ambiguous mappings (particularly GL segment flattening and valuation class decisions).

  2. Create Acumatica custom fields and configure GL structure

    With the approved Field Mapping Specification in hand, we create all required custom fields in your Acumatica tenant before any data is loaded. This includes custom fields on Customer, Vendor, Stock Item, Non-Stock Item, Account, Cost Code, Purchase Order, Sales Order, and any other entity identified in the mapping. We also configure the GL account segment structure — flattening multi-segment SAP accounts into single Acumatica account codes per the mapping agreed in step 1. Branch structure is configured to reflect the SAP company code hierarchy. This step is sequential: Acumatica custom fields must exist before we can load data that references them. We deliver a custom-field-creation checklist so your admin can pre-stage any fields if desired.

  3. Extract master data in dependency order and validate referential integrity

    We extract SAP master data in the order required by Acumatica's foreign-key constraints: Customers and Vendors first (no dependencies), then Stock Items (no dependencies), then G/L Accounts and Cost Codes, then transactional documents (which reference masters). Each extraction uses SAP OData API paginated reads with rate-limit-aware throttling. We validate foreign keys as we extract — any SAP record that references a missing parent (for example, a PO line referencing a material not yet loaded) is flagged in the extraction log and resolved before the load file is built. This prevents foreign-key violations that would stall the Acumatica import. The extraction log is shared with you for a 48-hour review before the load phase begins.

  4. Run sample migration and generate field-level diff

    A representative sample of 200–500 records per major object type (typically 1,000–2,500 total records) is loaded into Acumatica using the production field mappings. We generate a field-level diff comparing every populated source field against the corresponding Acumatica field, highlighting any value that was truncated, transformed, or omitted. You receive a diff report organized by entity so your SAP functional lead and Acumatica admin can verify that critical fields mapped as expected before we commit to the full load. Known transformation gaps (GL segment flattening, valuation class, additional SAP addresses) are pre-flagged in the diff report with references to the mapping decisions documented in step 1. Sample validation typically runs 5–7 business days including your review time.

  5. Execute full migration with delta-pickup window and audit logging

    After you sign off on the sample diff, we execute the full migration against your Acumatica production tenant. The migration runs in waves by entity in the same dependency order as the extraction. A delta-pickup window (typically 24–48 hours after the initial extraction snapshot) captures any records created or modified in SAP during the cutover period — your team continues working in SAP throughout. Every operation is written to an audit log: record count per entity, transformation applied, any field that received a default value because the source was blank, and any record that failed to load with the error returned by the Acumatica API. If reconciliation identifies missing or incorrectly mapped records, one-click rollback reverts the Acumatica tenant to its pre-migration state so the mapping can be corrected and the full load re-run.

Platform deep dives

Context on both ends of the pair

SAP S/4HANA Cloud logo

SAP S/4HANA Cloud

Source

Strengths

  • True real-time analytics on transactional data using the SAP HANA in-memory columnar database without pre-aggregation.
  • Unified data model eliminates traditional SAP ECC clustering tables, enabling simplified reporting and faster close cycles.
  • Quarterly auto-upgrades in Public Cloud deliver continuous innovation including embedded generative AI via Joule.
  • SAP Business Technology Platform (BTP) enables side-by-side extensibility without modifying the ERP core.
  • Industry-specific line-of-business products extend the core S/4HANA model for manufacturing, retail, and professional services.

Weaknesses

  • Implementation timelines range from 6 to 18 months with fixed-fee costs that can exceed the software subscription cost by 3-5x.
  • RISE with SAP contracts bundle S/4HANA, BTP credits, and Enterprise Support into a single agreement with significant exit barriers.
  • Public Cloud Edition enforces a Clean Core philosophy, restricting in-app customizations and requiring side-extensions on BTP instead.
  • Quarterly forced updates can disrupt custom integrations and reports written against specific S/4HANA versions.
  • Limited mobile support for dashboards and analytics features creates accessibility constraints for field and executive users.
Acumatica logo

Acumatica

Destination

Strengths

  • Unlimited named-user licensing eliminates per-seat cost scaling as teams grow.
  • Modular architecture lets companies deploy Financials first and add Distribution, Manufacturing, or CRM incrementally.
  • Cloud-native with automatic updates removes infrastructure patching and version management from IT responsibilities.
  • Flexible customization framework (UDFs, extensions) supports vertical-specific workflows without forking core code.
  • Multi-tenant architecture with CompanyID isolation enables safe data segregation across subsidiaries.

Weaknesses

  • Steep learning curve and complex initial setup create significant onboarding friction.
  • Report Designer is widely cited as unintuitive and difficult to use for non-developers.
  • Feature gaps require customizations or third-party add-ons, adding implementation cost and complexity.
  • Implementation timelines frequently exceed initial estimates, especially for multi-module deployments.
  • API rate limits and concurrent session caps are tied to license tier, creating throughput constraints for bulk data operations.

Complexity grading

How hard is this migration?

Standard ERP migration. 1 of 8 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across SAP S/4HANA Cloud and Acumatica.

  • Object compatibility

    B

    1 of 8 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    8-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    SAP S/4HANA Cloud: API-specific limits published per endpoint; Journal Entry API recommends max 15 parallel sync calls, 30 async; no tenant-wide X req/sec figure is published.

  • Data volume sensitivity

    A

    SAP S/4HANA Cloud exposes a bulk API — large-volume migrations stream efficiently.

Estimator

Estimate your SAP S/4HANA Cloud to Acumatica migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about SAP S/4HANA Cloud to Acumatica data migrations

Answers to the questions buyers ask most during SAP S/4HANA Cloud to Acumatica migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your SAP S/4HANA Cloud to Acumatica migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

The data migration phase runs 2–4 months for under 100,000 total SAP records across all modules. Larger implementations with multiple company codes, extensive custom-field populations, or complex GL segment mapping extend to 4–6 months. The full project including Acumatica schema setup, sample migration validation, and cutover with delta-pickup typically runs 4–8 months — shorter than a comparable greenfield SAP S/4HANA implementation because Acumatica requires less configuration work.

Adjacent paths

Related migrations to explore

Ready when you are

Move from SAP S/4HANA Cloud.
Land in Acumatica, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day