---
title: "Retail EDI for CPG brands with NetSuite and Orderful"
description: "Retailer POs, acknowledgments, ship notices and invoices move between NetSuite and Orderful under partner item and pack rules, acceptance tracked apart."
canonical: https://www.stacksync.com/blog/retail-edi-for-cpg-brands-connect-purchase-orders-acknowledgments-shipments-and-invoices
last_modified: 2026-09-21
---

# Retail EDI for CPG Brands: Connect Purchase Orders, Acknowledgments, Shipments, and Invoices

> 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 retailer's case quantities and item numbers map to NetSuite units and SKUs, and each outbound document is built by its owner from accepted, packed or invoiced facts.

Author

Alexis Favre · Co-Founder & CTO

Published

September 21, 2026

Read time

5 min read

APP TIPS

## The operating decision

Build retail EDI around the business chain from purchase order to accepted order, physical shipment, and invoice. CPG brands need partner-specific item, pack, location, and timing rules, not a generic document translation alone. Connect the approved ERP records through verified EDI workflow actions and keep document delivery separate from the retailer’s business acceptance.

Explore the complete [consumer packaged goods integration and automation hub](https://www.stacksync.com/industry/cpg) for the systems and processes around this guide.

![Summary card: Retail EDI for CPG brands with NetSuite and Orderful](https://www.stacksync.com/images/blog-highlights/icp-retail-edi-for-cpg-brands-connect-purchase-orders-acknowledgments-shipments-and-invoices.webp)

## What this looks like in consumer packaged goods

A CPG brand wins a retail account with several distribution centers. The first purchase order uses retailer item numbers and case quantities, while NetSuite stores internal SKUs and individual units. The retailer also expects shipment details that only exist after packing. Reusing the purchase-order quantity for every outbound document would misstate a partial shipment.

## Records, ownership, and update rules

| Record | Owner | Operating rule |
| --- | --- | --- |
| Partner order | Order operations | Retain partner identity, purchase-order number, line, requested unit, and delivery location. |
| Acknowledgment decision | Customer operations | State the accepted, changed, or rejected order facts according to the partner’s agreed rules. |
| Shipment document | Warehouse operations | Build from actual packed and shipped quantities with required references. |
| Invoice document | Finance | Use the accepted accounting record and reconcile its quantities and amounts to the business chain. |

![Record ownership diagram: Partner order, Acknowledgment decision, Shipment document](https://www.stacksync.com/images/blog-diagrams/icp-retail-edi-for-cpg-brands-connect-purchase-orders-acknowledgments-shipments-and-invoices.webp)

*Define the record owner and the rule before enabling updates.*

## Work through the process

1. 01

   Confirm the partner agreement

   Collect the required transaction types, identifiers, location codes, validation rules, and test process. Different retailers can require different fields for the same document type, so partner requirements belong in the mapping contract.
2. 02

   Map the incoming order

   Resolve item and location references before creating an ERP transaction. Hold unknown codes or inconsistent packs for review and preserve the original document so corrections remain explainable.
3. 03

   Generate each response from its owner

   Build acknowledgment from the accepted order decision, shipment notice from warehouse evidence, and invoice from finance. Avoid copying one status across these documents simply because they share a purchase-order number.
4. 04

   Reconcile technical and business status

   Track validation, transmission, acknowledgment, and operational completion separately. A delivered file is not evidence that the retailer accepted the commercial content or that the warehouse shipped the goods.
5. 05

   Ship a partial order through Orderful's test stream first

   Process one retailer purchase order for two distribution centers on Orderful's test stream. Acknowledgment, ship notice and invoice must each carry the partner identifier and test flag; none may address the live relationship. Ship fewer cases than requested from NetSuite, then open the ship notice: its quantities must equal what was packed, and the balance must stay open on the NetSuite order. Send a revised purchase order from the test partner; the ERP order must wait until the revision is checked against shipped amounts. Stop the rollout if a document reached the live stream, if the ship notice repeated the ordered quantity, or if the revision overwrote shipped lines.

![5-step operating sequence: Retail EDI for CPG brands with NetSuite and Orderful](https://www.stacksync.com/images/blog-diagrams-mermaid/icp-retail-edi-for-cpg-brands-connect-purchase-orders-acknowledgments-shipments-and-invoices.webp)

*Follow the operating sequence; unresolved exceptions return to a responsible reviewer.*

## Handle the exceptions explicitly

### Partner revises a purchase order

Evaluate the revision against accepted and shipped quantities before updating the ERP order.

### Partial shipment

Report the actual shipment and preserve the remaining order balance under the partner’s rules.

### Document passes syntax but item is wrong

Keep business mapping checks in the release gate; technical validity does not establish correct product identity.

## What to verify before expanding

- Every outbound document uses the correct partner and live or test stream.
- Actual shipment quantities drive the shipment document, not the original requested amount.
- A replayed partner document retains its existing order and line references without creating additional accepted demand.
- A technically valid document with the wrong item mapping stops at business review before ERP application or shipment release.

## Connect this process to the rest of your operation

[Explore Stacksync EDI](https://www.stacksync.com/edi) and scope the records and actions against your actual systems. [Book a demo](https://www.stacksync.com/book-a-demo) with a real partner order example and the exception your team handles most often, for example partner revises a purchase order.

- [Shopify–NetSuite Two-Way Sync for CPG Brands Selling DTC and Wholesale](https://www.stacksync.com/blog/shopify-netsuite-two-way-sync-for-cpg-brands-selling-dtc-and-wholesale)
- [Amazon Seller Central–NetSuite Sync for CPG Brands: Orders, Fees, and Settlement Evidence](https://www.stacksync.com/blog/amazon-seller-central-netsuite-sync-for-cpg-brands-orders-fees-and-settlement-evidence)
- [HubSpot–NetSuite Sync for CPG Brands: Distributor Accounts, Contacts, and Payment Visibility](https://www.stacksync.com/blog/hubspot-netsuite-sync-for-cpg-brands-distributor-accounts-contacts-and-payment-visibility)
- [API Ownership: Who Really Controls Your Data?](https://www.stacksync.com/blog/api-centric-data-ownership)
- [Shopify–NetSuite Integration: Orders, Inventory, and Setup](https://www.stacksync.com/blog/two-way-sync-shopify-and-netsuite-comprehensive-real-time-integration-guide)

The shared architecture guide covers record matching, ownership, and recovery across systems.

## Technical references

- [Orderful transaction model](https://docs.orderful.com/reference/orderful-transactions)
- [Stacksync NetSuite supported objects](https://docs.stacksync.com/two-way-sync/connectors/netsuite)

FAQ

## Frequently asked questions

Does EDI replace two-way sync between the ERP and other systems?

No. EDI moves partner documents in and out; it does not keep two systems' records in continuous agreement. In this design NetSuite remains the source for accepted orders, shipments and invoices, and Orderful carries the documents built from them. If the brand also needs its CRM or a database aligned with NetSuite, that is a separate two-way sync scope with its own field ownership, and the document exchange reads from the ERP either way.

How does a new retailer move from Orderful's test stream to live?

Each partner relationship in Orderful is switched to live per transaction type once that partner's test cycle passes, and the workflow reads the stream flag from the relationship rather than from a setting someone edits by hand. The operations owner makes the switch as a scoped change, and the first live orders pass through a manual review gate for a period the brand decides. The retailer's own certification steps still run on the retailer's side.

Can the invoice document be sent before the goods ship?

No. The invoice document is built from the NetSuite invoice, which exists only once the fulfillment has been billed, so there is nothing to send until the warehouse has shipped. The workflow also holds the invoice until the ship notice for that order has been transmitted. Partners that require an accepted ship notice before invoicing get that condition added to their rule, and the invoice waits on the acknowledgment as well.

About the author

Alexis Favre

Co-Founder & CTO

Alexis Favre is the Co-Founder and CTO of Stacksync (YC W24), the first real-time and two-way sync for enterprise data at scale. Alexis is a Y Combinator alumni with expertise in large scale data engineering.

[All posts by Alexis Favre](https://www.stacksync.com/blog/author/alexis-favre)

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 NetSuite integrations](https://www.stacksync.com/connectors/netsuite)
- [connector Orderful integrations](https://www.stacksync.com/connectors/orderful)
- [platform Integration architecture](https://www.stacksync.com/two-way-sync)
- [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 Beverage EDI: Reconcile Pallet Shipments, Advance Ship Notices, and Distributor Receipts 5 min read read](https://www.stacksync.com/blog/beverage-edi-reconcile-pallet-shipments-advance-ship-notices-and-distributor-receipts)

[App tips EDI for Supplement Brands Entering Retail: Validate Item Numbers and Pack Configurations 4 min read read](https://www.stacksync.com/blog/edi-for-supplement-brands-entering-retail-validate-item-numbers-and-pack-configurations)

[App tips Grocery EDI for Snack Brands: Keep Case Counts and Advance Ship Notices Consistent 5 min read read](https://www.stacksync.com/blog/grocery-edi-for-snack-brands-keep-case-counts-and-advance-ship-notices-consistent)

## 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/)
