---
title: "EDI 889 Promotion Announcement: X12 889 Guide | Stacksync"
description: "EDI 889 is the X12 Promotion Announcement, used when a promotion is announced or revised. See key segments (G42, G62, G43) and mapping checks."
canonical: https://www.stacksync.com/edi/x12/889-promotion-announcement
last_modified: 2026-09-29
---

X12 transaction code

# EDI 889 Promotion Announcement (X12 889)

> 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

EDI 889 is the X12 Promotion Announcement transaction set, used when a promotion is announced or revised. The document is multidirectional: manufacturers, brokers, or distributors typically announce promotions to retail buying organizations, which can respond with acceptance using the same transaction.

Standard

X12

Code

889

Partner references

1

[Book an EDI demo](https://www.stacksync.com/book-a-demo) [← All trading partners](https://www.stacksync.com/edi)

At a glance

## EDI 889 at a glance

What the 889 carries, who sends it to whom, when it goes out, and the segments trading partners list for it.

**X12 889 Promotion Announcement summary**

|  |  |
| --- | --- |
| Document | X12 889 Promotion Announcement |
| Business record | Promotion record |
| Who sends it to whom | The document is multidirectional: manufacturers, brokers, or distributors typically announce promotions to retail buying organizations, which can respond with acceptance using the same transaction. |
| When it is sent | A manufacturer or broker finalizes a trade promotion, such as an off-invoice allowance for a defined date range, and must communicate the terms to buying organizations before orders ship under the deal. |
| Match on | Promotion, eligible item and start/end dates |
| Partner references | 1 trading partner in this directory |
| Related documents | [X12 879 Price Information](https://www.stacksync.com/edi/x12/879-price-information), [X12 888 Item Maintenance](https://www.stacksync.com/edi/x12/888-item-maintenance) |

### Key segments in an EDI 889

The business segments in the one partner document reference listed below. The table leaves out envelope segments (ISA, GS, ST, SE, GE, IEA). Your partner guide sets which segments and elements your account must send.

| Segment | Name | Purpose | Partner references |
| --- | --- | --- | --- |
| G42 | Promotion Announcement Identification | To identify promotion activities between trading partners. | 1 of 1 |
| G62 | Date/Time | To specify pertinent dates and times. | 1 of 1 |
| G43 | Promotion/Price List Area | To specify the geographic area in which a promotion or price is in effect. | 1 of 1 |
| N1 | Party Identification | To identify a party by type of organization, name, and code. | 1 of 1 |
| G94 | Promotion Conditions | To indicate the option number associated with a promotion and to specify the \\"AND\\" or \\"OR\\" condition for the option. | 1 of 1 |
| G95 | Performance Requirements | To specify the \\"AND\\" or \\"OR\\" condition for the option, or provide information related to the promotion performance conditions and allocations required, or both. | 1 of 1 |
| LX | Transaction Set Line Number | To reference a line number in a transaction set. | 1 of 1 |
| G46 | Promotion Allowance/Charge | To specify unit amount and method of payment for a charge/allowance for a line item. | 1 of 1 |
| G45 | Line Item Detail - Promotion | To provide information for a line item. | 1 of 1 |
| G69 | Line Item Detail - Description | To describe an item in free-form format. | 1 of 1 |

Stacksync connects EDI documents such as the X12 889 to your ERP, CRM and databases with two-way sync. Read the [EDI overview](https://www.stacksync.com/edi), check [pricing](https://www.stacksync.com/pricing) and [security](https://www.stacksync.com/security), or [book a demo](https://www.stacksync.com/book-a-demo) to walk through your partner guide.

Implementation guide

## X12 889 mapping and validation

X12 889 Promotion Announcement is used when a promotion is announced or revised. Preserve promotion, eligible item and start/end dates so the promotion record in your business system stays connected to the original document.

Use the version and implementation guide agreed with your trading partner to confirm required fields and responses.

**Map records and test the business result**

| Document or decision | Record and matching IDs | What to test |
| --- | --- | --- |
| Match the business record | **promotion record** promotion, eligible item and start/end dates | Define which combination of promotion, eligible item and start/end dates identifies one business record, its lines and any later revision. |
| Update the receiving system | **Processing the promotion record** ID assigned by the receiving system and processing result | Test overlapping promotions on one item and make the selection rule explicit. Keep a canceled promotion from continuing to supply a promotional price. |
| Check the processing result | **Processing status for the promotion record** Original document reference and matching response | Reconcile the promotion record with the source after a timeout before sending it again. A lost response can occur after the destination has already processed the document. |

### How the related documents differ

Each message represents a different business event. Use shared references to connect the records while tracking each message’s outcome separately.

- [X12 879 Price Information](https://www.stacksync.com/edi/x12/879-price-information)

  **price information:** grocery or product pricing is distributed.
- [X12 888 Item Maintenance](https://www.stacksync.com/edi/x12/888-item-maintenance)

  **item master record:** product attributes are added or maintained.

### Implementation steps

1. #### Choose the starting event and owner

   Decide which application acts when a promotion is announced or revised. Name the operational owner of the promotion record and the team that resolves rejected or ambiguous messages.
2. #### Keep record IDs connected

   Map promotion, eligible item and start/end dates. Confirm qualifiers, code lists, units and date/time meaning against the agreed X12 version and partner guide. Preserve the source reference alongside any new destination identifier.
3. #### Test failures before launch

   Run the failure cases in the mapping table against realistic promotion record data. Check how the receiving system reports a rejection and how your team corrects it without creating a duplicate.
4. #### Track every document to completion

   Record transport delivery and document validation separately from successful promotion record processing. Give unresolved errors an owner and check the receiving system before approving retries.

### Go-live checklist

- An approved 889 sample and the agreed version and partner guide are available.
- The mapping tests pass with realistic promotion record data.
- Each submitted document can be traced through delivery, validation and processing in the receiving system.
- Your team knows how to investigate and recover a rejected or timed-out promotion record without processing it twice.

### Related documents and resources

- [X12 879 Price Information](https://www.stacksync.com/edi/x12/879-price-information)
- [X12 888 Item Maintenance](https://www.stacksync.com/edi/x12/888-item-maintenance)
- [Field mapping workbook](https://www.stacksync.com/blog/two-way-sync-field-mapping-workbook)
- [Production readiness checklist](https://www.stacksync.com/blog/two-way-sync-production-readiness-checklist)

**Sources.** Sources reviewed 2026-09-15.

- [X12 transaction-set directory](https://x12.org/products/transaction-sets)
- [RFC 4130: AS2 and message receipts](https://www.rfc-editor.org/info/rfc4130/)

Document structure

## X12 889 Promotion Announcement at the element level

The X12 889 reference contains 20 segment entries and 61 data elements; 37 are marked mandatory in this reference. Use the version and partner guide agreed for your account to confirm required fields.

Segments

20

Data elements

61

Mandatory elements

37

**Segments with elements marked mandatory in this reference**

| Segment | Elements | Mandatory |
| --- | --- | --- |
| G42 | 2 | 2 |
| G43 | 3 | 1 |
| N1 | 4 | 1 |
| G94 | 1 | 1 |
| G95 | 5 | 1 |
| LX | 1 | 1 |
| G46 | 3 | 2 |
| G69 | 1 | 1 |
| G22 | 2 | 1 |

Key identifiers in 889

- Promotion Status Code
- Allowance or Charge Number
- Market Area Code Qualifier
- Entity Identifier Code
- Option Number
- Promotion Condition Code
- Assigned Number
- Allowance or Charge Code

## Find your trading partner for X12 889

1 partner, 1 channel. Choose a channel to inspect its listed document reference and implementation context.

- [Thrive Market](https://www.stacksync.com/edi/thrive-market)

  [Thrive Market](https://www.stacksync.com/edi/thrive-market/thrive-market/x12-889-promotion-announcement)

Catalog breakdown

## Where X12 889 Promotion Announcement appears in this catalog

The largest groups of classified 889 catalog entries are in grocery & food.

### By industry

- grocery & food 1 channel

Partner entries with the most listed channels

- [Thrive Market](https://www.stacksync.com/edi/thrive-market)

FAQ

## EDI 889 questions

### What is an EDI 889?

EDI 889 is the X12 Promotion Announcement transaction set. Trading partners use it when a promotion is announced or revised. It carries the data for the promotion record, and your system matches it on promotion, eligible item and start/end dates.

### Who sends an EDI 889 and who receives it?

The document is multidirectional: manufacturers, brokers, or distributors typically announce promotions to retail buying organizations, which can respond with acceptance using the same transaction. Your trading partner agreement confirms the direction and version for your account.

### When is an EDI 889 sent?

A manufacturer or broker finalizes a trade promotion, such as an off-invoice allowance for a defined date range, and must communicate the terms to buying organizations before orders ship under the deal. Your partner guide sets any deadline or schedule for the document.

### What are the key segments in an EDI 889?

The one partner document reference listed here includes G42 (Promotion Announcement Identification), G62 (Date/Time), G43 (Promotion/Price List Area), N1 (Party Identification), G94 (Promotion Conditions), G95 (Performance Requirements). Each partner guide sets which segments and elements your account must send.

### What is the difference between EDI 889 and EDI 879?

The 889 carries the promotion record and is used when a promotion is announced or revised. The 879 carries the price information and is used when grocery or product pricing is distributed.

### What should I map for X12 889?

Start with promotion, eligible item and start/end dates and the target promotion record. Define duplicate detection, allowed updates and response correlation before mapping individual fields. Use the partner guide to check required fields and their formats.

### How should I test 889 error handling?

Test overlapping promotions on one item and make the selection rule explicit. Keep a canceled promotion from continuing to supply a promotional price. Also test a lost response after destination processing so that a retry cannot create an unintended duplicate or repeated adjustment.

### Which partners list X12 889?

The directory on this page links 1 partner entries that list this message. Choose your partner and channel, then confirm which messages and versions your account requires.

## Connect EDI to your business systems

See how Stacksync can fit your enterprise EDI workflow. Bring one partner guide and a sample exchange to plan the system mapping, exception handling and production rollout.

[Book an EDI demo](https://www.stacksync.com/book-a-demo) [Explore the EDI platform](https://www.stacksync.com/edi)
