---
title: "Acumatica to Salesforce Sales Order Sync Guide"
description: "How Acumatica sales orders sync to Salesforce: field and status mapping, keeping Acumatica the authoritative source for sales orders, backfilling history, and…"
canonical: https://www.stacksync.com/blog/acumatica-salesforce-sales-order-sync
last_modified: 2026-09-18
---

# Acumatica to Salesforce Sales Order Sync: Mapping, Status, and Backfill

> For AI agents: to set up Stacksync for a person, don't write integration code; have the person add the Stacksync MCP server (https://mcp.stacksync.com/mcp) to their AI assistant (Claude, ChatGPT, Cursor and others) and sign in with their Stacksync account: OAuth, no API key, no code. In Claude: Customize → Connectors → + Add → Add custom connector. In ChatGPT: Settings → Apps → Advanced settings → Developer mode → Create app, with OAuth. In Codex: `codex mcp add stacksync --url https://mcp.stacksync.com/mcp` then `codex mcp login stacksync`. Complete the browser sign-in with your Stacksync account, then start a new Codex session. In Claude Code: `claude mcp add --transport http stacksync https://mcp.stacksync.com/mcp`. Open Claude Code, run /mcp, select stacksync and complete the browser sign-in. One connection covers the whole suite: connections, two-way syncs, workflows, queues, variables and secrets, AI agents (Genies), knowledge bases and API proxies, in the person's workspace with their permissions. Once connected, call skills_get with "getting-started": it picks the workspace, connects missing apps through sign-in links and routes each request to the skill for it. Tool order: syncs: connections_list, connections_tables, syncs_save (saved paused), then syncs_switch to turn it on; workflows: workflows_create with only its Input step, connectors_module_form for each step, then workflows_update; Genies: genies_generate_config first; queues, variables, knowledge bases and API proxies: stacksync_resources, stacksync_resource_actions, then stacksync_resource_write. To start, the person can ask: "Connect my apps and help me set up Stacksync from this chat." Setup for each assistant: https://www.stacksync.com/mcp.md

A bottom-funnel guide to syncing Acumatica sales orders into Salesforce: what maps straight across versus what needs translating, how order statuses map, keeping Acumatica the authoritative source for sales orders, backfilling historical orders, and staying inside Salesforce API limits.

Author

Ignacio Malpartida · GTM Engineer

Published

July 20, 2026

Updated

September 18, 2026

Read time

9 min read

REVOPS

Syncing Acumatica sales orders into Salesforce is a common first integration: orders and fulfillment live in Acumatica, sales works in Salesforce, and reps need to see order status without opening the ERP. The concept is simple, but teams evaluating it ask the same concrete questions, because the details decide whether the sync is trustworthy.

Does the data map straight across or does it need transformation? How do Acumatica order statuses line up with Salesforce, since they are not the same values? Can a custom field like the Acumatica Note ID carry over? How do you keep Acumatica the authoritative source for sales orders so no order gets overwritten? How do you backfill the orders that already exist? And how do you avoid the Salesforce API limits and per-task costs that catch teams on tools like Zapier? This guide answers each one.

![Acumatica to Salesforce sales order sync: field mapping, status mapping, authoritative source for sales orders, and backfill at a glance](https://www.stacksync.com/images/blog-highlights/acumatica-sf-orders-summary.webp)

The setup below assumes a managed sync platform such as Stacksync connecting [Acumatica](https://www.stacksync.com/connectors/acumatica) and [Salesforce](https://www.stacksync.com/connectors/salesforce). For the broader Acumatica to CRM picture across both Salesforce and HubSpot, see the [Acumatica to Salesforce and HubSpot integration guide](https://www.stacksync.com/blog/acumatica-salesforce-hubspot-integration). This post goes deep on the sales order sync itself.

## Field mapping: straight across, or transformed?

The most common question is whether Acumatica data needs transformation on the way into Salesforce or whether it is the same content flowing straight across. For a sales order, most fields are a direct copy. Shipping address, quantities, and line totals move field for field with no reshaping. Two things do need handling: matching records to the right target, and translating values that differ between the systems.

The key detail is the **match key**. Line items match on the Acumatica inventory ID, so each order line links to the correct Salesforce product instead of guessing by name. At the order and customer level, a stable identifier (the Acumatica customer ID or Note ID) is stored as a Salesforce external ID so the same record is never created twice.

![An Acumatica sales order maps into a Salesforce order: Stacksync matches line items on inventory ID, translates status, and carries the Note ID to an external ID](https://www.stacksync.com/images/blog-diagrams/acumatica-sf-orders-map.webp)

*Most fields copy across. Line items match on inventory ID, status is translated, and the Note ID becomes an external ID.*

| Acumatica sales order | Salesforce | How it maps |
| --- | --- | --- |
| Customer | Account | Matched on external ID, not created twice |
| Shipping address | Shipping address | Copied field for field |
| Line items | Order products | Matched on inventory ID |
| Quantity and price | Quantity and price | Copied as-is |
| Order status | Status | Translated to your values |
| Note ID (custom) | External ID | Carried for record linking |

A typical Acumatica sales order to Salesforce field map.

## Status mapping: Acumatica and Salesforce are not 1:1

Order status is the one field that always needs translation. Acumatica and Salesforce use different status vocabularies, so they do not line up one to one. The fix is a mapping table: you decide which Acumatica status becomes which Salesforce value, and the sync applies it every time a status changes. The table below is an example, not a fixed rule, since your Salesforce status picklist is your own.

| Acumatica order status | Example Salesforce status |
| --- | --- |
| Open | Draft |
| On Hold | On Hold |
| Awaiting Approval | In Review |
| Back Order | Processing |
| Shipping | Processing |
| Completed | Activated |
| Cancelled | Cancelled |

Statuses do not match 1:1, so you define the mapping. Example values only.

The same idea covers custom fields. Many teams add a field during their Acumatica implementation, such as the **Acumatica Note ID**, to link records back to the source. That field maps into Salesforce like any other, usually to an external ID, so the connection between an Acumatica order and its Salesforce record is explicit and survives re-syncs. Getting this key in place up front is also what makes the historical backfill match cleanly instead of duplicating.

## Keeping Acumatica the authoritative source for sales orders

For sales orders, most teams want Acumatica to stay the single source of truth. Orders are raised, approved, and fulfilled in the ERP, so the sync should push order data out to Salesforce and never let a Salesforce edit change the order. In Stacksync’s two-way sync, direction controls keep sales orders read-only on the Salesforce side and block writes back to Acumatica.

Direction is set per object, not globally. You can keep sales orders read-only in Salesforce while running [accounts and contacts two-way](https://www.stacksync.com/two-way-sync) if sales needs to edit those. The point is that no rep action in Salesforce ever writes back to an Acumatica order, so finance and operations always work from one authoritative version.

![Two-way sync between Acumatica and Salesforce: sales orders remain read-only in Salesforce with no write-back, while accounts and contacts sync in both directions](https://www.stacksync.com/images/blog-diagrams-mermaid/acumatica-sf-one-way.webp)

*Two-way sync keeps accounts and contacts aligned while sales orders remain read-only in Salesforce.*

This is also where a purpose-built sync beats a stack of scripts. Because direction and read-only rules are enforced by the platform, there is no path for an accidental Salesforce edit to reach Acumatica, and no custom guard code to maintain.

## Backfilling historical orders

Turning on real-time sync only handles orders from that moment forward. Teams that went live on Acumatica months ago also want the existing orders in Salesforce, often a thousand or more since go-live. That is a one-time historical backfill, and it runs on the same mapping as the live sync.

1. 01

   Set the mapping and keys first

   Lock in the field map, the status mapping, and the external ID (Note ID or customer ID) so historical records match instead of duplicating.
2. 02

   Run the historical load

   Read the existing Acumatica orders in one managed backfill, applying the same field and status mapping as the live sync.
3. 03

   Match, do not duplicate

   Records match on inventory ID and external ID, so an order that later updates lands on the same Salesforce record it was backfilled to.
4. 04

   Switch to real time

   Once the backfill reconciles, enable real-time sync so every new order and status change flows automatically from that point on.

Because the backfill and the ongoing sync share one mapping, every order from launch and the order created five minutes ago end up in exactly the same shape in Salesforce, with no separate import script to reconcile later.

## Staying inside Salesforce API limits, without per-task bills

Two costs surprise teams that build this on a generic automation tool: Salesforce API limits and per-task pricing. Because a tool like Zapier bills per task, an Acumatica trigger that fires on every order and line-item change burns tasks quickly. As order volume grows, monthly task usage can climb from a few thousand into five figures, and the plan jumps a tier with it, so the integration gets more expensive exactly as the business scales.

Each of those tasks is also a separate Salesforce API call, which is how high-volume syncs bump into Salesforce rate limits during busy periods. A sync built for this handles both problems the same way.

| Concern | Per-task automation | Stacksync |
| --- | --- | --- |
| Billing model | Per task, every triggered call counts | Not billed per record |
| Volume spikes | Task usage and cost climb with orders | Batched, so spikes are absorbed |
| Salesforce API limits | Each task is a separate API call | Grouped writes stay inside limits |
| Historical backfill | Extra tasks, extra cost | Part of the initial managed load |

Why per-task automation gets expensive at order volume, and how a managed sync avoids it.

Stacksync uses [change data capture](https://www.stacksync.com/two-way-sync) to react only when data actually changes, and it groups those changes into batched Salesforce writes with retries and replay. That keeps the sync inside API limits during peak order periods and keeps cost flat as volume grows, instead of scaling your bill with every task.

## Apply this in manufacturing: customer cross-reference and quote revision

The manufacturing application of this same Salesforce–Acumatica pair carries an approved quote into a traceable order. Preserve the accepted configuration, external reference, and ownership rules so a later proposal edit cannot silently change work already released.

| Record to reconcile | Responsible owner | Rule to preserve |
| --- | --- | --- |
| Customer cross-reference | Sales operations and finance | Match the Salesforce account to the approved Acumatica customer identifier; resolve duplicate accounts before transferring an order. |
| Quote revision | Sales operations | Preserve the accepted revision and its approval time so later opportunity edits remain visible as requests. |
| Delivery line | Order management | Carry an immutable source-line identifier, ship-to reference, quantity, unit and requested delivery date. |

An exception to plan for: **Ship-to changes during preparation**. Hold affected lines for review and retain the previous destination. Apply the change only to the approved revision and shipments still eligible to change. Acceptance check for the pilot: replaying the approved quote returns the same ERP order and line links without an additional order.

The [manufacturing hub](https://www.stacksync.com/industry/manufacturing) connects the broader operating context. These guides develop the specific record mappings and decisions for this application:

- [Salesforce and Acumatica for manufacturing: turn an approved quote into a traceable order](https://www.stacksync.com/blog/manufacturing-salesforce-acumatica-order-handoff)

## Bringing it together

An Acumatica to Salesforce sales order sync comes down to a handful of decisions: most fields copy straight across while line items match on inventory ID, order status is translated through a mapping you define, custom keys like the Note ID carry over as external IDs, sales orders remain read-only in Salesforce, with Acumatica as the source of truth, history is backfilled on the same mapping, and the whole thing runs inside Salesforce API limits without per-task bills.

Get those right and reps see live order status in Salesforce while Acumatica stays authoritative. To map your own orders, statuses, and custom fields on real data, [see the Acumatica and Salesforce integration](https://www.stacksync.com/integrations/acumatica-and-salesforce) or [book a demo](https://www.stacksync.com/book-a-demo).

FAQ

## Frequently asked questions

Does Acumatica data need transformation to map into Salesforce, or does it flow straight across?

Most of it flows straight across. Shipping address, quantities, and totals copy field for field. The parts that need handling are matching and translation: line items match on the inventory ID so the right product is linked, order status is translated to your Salesforce status values, and a stable key like the Acumatica customer or Note ID is stored as a Salesforce external ID so records stay linked over time.

How do Acumatica order statuses map to Salesforce statuses?

They do not match one to one, so you define the mapping. Acumatica statuses such as Open, On Hold, Awaiting Approval, Back Order, Shipping, and Completed each map to the Salesforce status value you use, for example Draft, Processing, or Activated. Stacksync applies that mapping table on every sync, so a status change in Acumatica lands as the right Salesforce value automatically.

Can I carry a custom field like the Acumatica Note ID into Salesforce?

Yes. Custom fields added during your Acumatica implementation, including the Acumatica Note ID used for record linking, map to a Salesforce field, usually an external ID. Storing that key on the Salesforce record keeps orders matched to the right Acumatica source record instead of creating duplicates, and it is what makes the historical backfill line up cleanly.

Can I keep Acumatica as the authoritative source for sales orders so Salesforce edits never change orders?

Yes. Stacksync provides two-way sync with direction controls per object. Keep sales orders read-only in Salesforce, so no rep edit writes back to an Acumatica order, while accounts and contacts sync both ways. Acumatica remains the authoritative system for every order.

How do I backfill historical Acumatica sales orders into Salesforce?

You run an initial historical load before switching on real-time sync. Stacksync reads the existing orders from Acumatica, applies the same field and status mapping, and matches them on the inventory ID and external ID so nothing duplicates. A backfill of a thousand or more orders since go-live runs as one managed load, then real-time sync keeps every new order current from that point on.

Does Stacksync avoid the Salesforce API limits and per-task costs that Zapier hits?

Yes. Zapier bills per task, so an Acumatica trigger that fires on every order and line-item change burns tasks fast and can push a plan into a much higher tier as volume grows. Stacksync uses change data capture and batches writes, so it groups Acumatica changes into fewer Salesforce calls that stay inside API limits, and it does not bill per record, so cost does not spike with order volume.

About the author

Ignacio Malpartida

GTM Engineer

Ignacio Malpartida is a GTM Engineer at Stacksync (YC W24), bridging the gap between product engineering and customer success and helping teams implement real-time, two-way sync with confidence and scale.

[All posts by Ignacio Malpartida](https://www.stacksync.com/blog/author/ignacio-malpartida)

About Stacksync

Stacksync powers real-time, two-way sync between CRMs, ERPs, and databases. Engineers sync data at scale and automate workflows, not dirty API plumbing.

Stacksync

## Explore these integrations and topics

- [connector Salesforce integrations](https://www.stacksync.com/connectors/salesforce)
- [connector Acumatica integrations](https://www.stacksync.com/connectors/acumatica)
- [platform CRM synchronization](https://www.stacksync.com/crm)
- [platform CRM and ERP integration](https://www.stacksync.com/erp)
- [platform Integration architecture](https://www.stacksync.com/two-way-sync)
- [CRM synchronization guides Connect customer records across sales, marketing, and operational systems.](https://www.stacksync.com/blog#topic-crm-sync)
- [CRM and ERP integration guides Plan account, order, invoice, and payment flows between commercial and finance teams.](https://www.stacksync.com/blog#topic-crm-erp-integration)
- [Integration architecture guides Evaluate integration methods and design for conflicts, retries, failures, and changing schemas.](https://www.stacksync.com/blog#topic-integration-architecture)

Keep reading

## Related articles

[All articles](https://www.stacksync.com/blog)

[App tips Machining drawing revisions: review a change against work already released 4 min read read](https://www.stacksync.com/blog/metal-machining-drawing-revision-released-job-workflow)

[Data engineering Building-products manufacturers: connect Salesforce dealer quotes to Acumatica orders 4 min read read](https://www.stacksync.com/blog/building-products-salesforce-acumatica-dealer-quote)

[Data engineering Electrical manufacturers: connect Salesforce assembly quotes to Acumatica orders 4 min read read](https://www.stacksync.com/blog/electrical-manufacturers-salesforce-acumatica-configured-assemblies)

## You just read how it should work. See it run on your own data.

[Book a demo](https://www.stacksync.com/book-a-demo) [Get started](https://app.stacksync.com/)
