---
title: "Orderful NetSuite EDI for pet food retailer item codes"
description: "Retailer item codes in Orderful map to the exact NetSuite recipe, bag size, and case pack, so orders, shipment notices, and invoices reflect packed units."
canonical: https://www.stacksync.com/blog/pet-food-and-treats-edi-align-retailer-product-codes-and-case-quantities
last_modified: 2026-09-21
---

# Pet Food and Treats EDI: Align Retailer Product Codes and Case Quantities

> 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 order for the small bag lands in NetSuite as that bag and case count, not the larger bag or the trial pack that shares its recipe name.

Author

Alexis Favre · Co-Founder & CTO

Published

September 21, 2026

Read time

5 min read

APP TIPS

## The operating decision

Pet-food EDI should preserve recipe, bag size, treat pack, and case configuration when translating retailer item numbers into ERP orders. Validate product and unit meaning before accepting the order, then use actual shipment and finance evidence for outbound documents. A technically valid item code is not enough if it points to the wrong bag or recipe.

Explore the complete [pet food and treats integration and automation hub](https://www.stacksync.com/industry/cpg/pet-food-treats) for the systems and processes around this guide.

![Summary card: Orderful NetSuite EDI for pet food retailer item codes](https://www.stacksync.com/images/blog-highlights/icp-pet-food-and-treats-edi-align-retailer-product-codes-and-case-quantities.webp)

## What this looks like in pet food and treats

A retailer orders cases of a small bag using its internal product code. The brand also sells the same recipe in a larger bag and a mixed trial pack. A family-level mapping can select the wrong sellable configuration while still producing a syntactically valid order and shipment notice.

## Records, ownership, and update rules

| Record | Owner | Operating rule |
| --- | --- | --- |
| Retailer product code | Product operations | Map to the exact recipe, bag or treat size, and approved case configuration. |
| Partner order line | Retail operations | Retain line reference, quantity, unit, destination, and requested dates. |
| Actual shipment | Warehouse | Own the packed product, case quantities, and shipment-specific evidence. |
| Document chain | Integration and finance | Preserve partner references from accepted order through shipment and invoice. |

![Record ownership diagram: Retailer product code, Partner order line, Actual shipment](https://www.stacksync.com/images/blog-diagrams/icp-pet-food-and-treats-edi-align-retailer-product-codes-and-case-quantities.webp)

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

## Work through the process

1. 01

   Approve the item relationship

   Review retailer code, internal item, recipe, package size, and case count together. Keep trial packs and individual products distinct even when the retailer description abbreviates the name.
2. 02

   Validate incoming units

   Confirm the requested unit and case multiples against the partner’s rules. Unknown pack definitions should stop acceptance until product operations resolves them.
3. 03

   Generate from actual records

   Build acknowledgments from accepted decisions, shipment notices from actual packing evidence, and invoices from the finance-owned transaction. Keep partial quantities and original line references visible.
4. 04

   Exercise mapping changes

   Test a new bag size, discontinued recipe, changed case count, and partial shipment. Verify both technical document handling and the business meaning of each product line.
5. 05

   Reuse a retailer code for a new bag size and check both orders

   Take a retailer purchase order from Orderful for cases of the small bag, and confirm the NetSuite sales order line shows that bag's item and case configuration, not the family-level product. Ship it two cases short and check that the shipment notice reports the packed count while the remainder stays open in NetSuite. Have product operations version the retailer code to a new bag size with an effective date, then send a second order. It should resolve to the new item; the first order must show the original bag and case count. A wrong bag, a closed remainder, or a first order changed by the remapping stops the rollout.

![5-step operating sequence: Orderful NetSuite EDI for pet food retailer item codes](https://www.stacksync.com/images/blog-diagrams-mermaid/icp-pet-food-and-treats-edi-align-retailer-product-codes-and-case-quantities.webp)

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

## Handle the exceptions explicitly

### Retailer code is reused for a new size

Version the mapping and preserve historical orders under their original definition.

### Warehouse proposes another recipe

Require the appropriate commercial decision and partner-compliant representation.

### Shipment contains partial cases

Follow the approved partner unit and packing rules rather than rounding the quantity.

## What to verify before expanding

- Each retailer line resolves to the exact recipe and package.
- Shipment quantities reconcile to actual packed units and the order remainder.
- A retailer code reused for another bag size preserves historical orders under the previously approved item and case definition.
- A partial-case shipment follows the partner's approved unit rules and retains the actual quantity without rounding it to a full case.

## 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 retailer product code example and the exception your team handles most often, for example retailer code is reused for a new size.

- [Shopify–NetSuite Sync for Pet Food Brands: Match Recipes, Bag Sizes, and Variety Packs](https://www.stacksync.com/blog/shopify-netsuite-sync-for-pet-food-brands-match-recipes-bag-sizes-and-variety-packs)
- [Amazon–NetSuite Sync for Pet Brands: Reconcile Marketplace Returns and Original Orders](https://www.stacksync.com/blog/amazon-netsuite-sync-for-pet-brands-reconcile-marketplace-returns-and-original-orders)
- [HubSpot–NetSuite Sync for Pet Food Brands: Connect Independent Retailers and Reorder Status](https://www.stacksync.com/blog/hubspot-netsuite-sync-for-pet-food-brands-connect-independent-retailers-and-reorder-status)
- [Two-Way Sync Field Mapping Workbook](https://www.stacksync.com/blog/two-way-sync-field-mapping-workbook)
- [Give Support Agents Full Customer Context in the Helpdesk (No Tab-Switching)](https://www.stacksync.com/blog/full-customer-context-in-helpdesk-no-tab-switching)

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

Are lot numbers traceable through EDI on their own?

No. An ASN can carry lot numbers when the retailer requires them, but that value has to come from the warehouse's packed-unit record, not from the item master. Decide during partner scoping whether the retailer's specification asks for lot detail, and if it does, confirm the warehouse captures it at pack time before you go live. EDI transmits what the packing record holds; it cannot backfill a lot the warehouse never recorded.

How do we handle the retailer's test stream before going live?

Run every mapping change through Orderful's test stream with a purchase order, acknowledgment, shipment notice, and invoice for the same sample order before it touches live traffic. Ask the retailer to confirm receipt of each test document where their program allows it. Keep the test trading partner separate in NetSuite so test orders never appear in demand or revenue. Promotion to live is a decision by integration and finance together, dated and recorded.

Why generate the invoice from NetSuite rather than from the shipment notice?

Because the invoice is a finance record and the shipment notice is a warehouse record, and the two can differ for good reason when a case is damaged after packing or a price term changes. Finance posts the invoice transaction in NetSuite from the accepted order and the confirmed shipment, and EDI transmits that transaction. Generating the invoice from the ASN would let a packing count set revenue with no finance review, which is the boundary this design keeps.

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 Pet Food Lot-Hold Workflows: Carry Approved Quality Decisions Into Order Operations 5 min read read](https://www.stacksync.com/blog/pet-food-lot-hold-workflows-carry-approved-quality-decisions-into-order-operations)

[App tips Pet Food Wholesale Workflows: Route Minimum-Order and Freight Exceptions 5 min read read](https://www.stacksync.com/blog/pet-food-wholesale-workflows-route-minimum-order-and-freight-exceptions)

[App tips AI Agents for Pet Food Brands: Trace Customer Complaints to Orders and Production Lots 5 min read read](https://www.stacksync.com/blog/ai-agents-for-pet-food-brands-trace-customer-complaints-to-orders-and-production-lots)

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