How to Read an EDI 997: The Fastest Way to Find Where a Document Failed

By
Emily Marshall
June 5, 2026
5 min read
Share this post

Definition

EDI 997 Functional Acknowledgment: A standard ANSI X12 transaction set sent by a trading partner or value-added network (VAN) to confirm receipt and structural validity of an EDI document. The EDI 997 checks the technical structure of a file — segments, loops, delimiters, and element formats — not business logic or business acceptance. According to BOLD VAN, the 997 is the primary audit trail document for confirming EDI transaction integrity and is used across all X12 EDI environments including manufacturing, distribution, retail, and healthcare.

If you work with EDI, you have probably spent too many late nights chasing down where a document went sideways. The EDI 997 Functional Acknowledgment is built for this moment. According to BOLD VAN, EDI teams that know how to read a 997 correctly can pinpoint exactly where a document failed and what to fix — in minutes rather than hours — preventing rejections from compounding into chargebacks, shipping delays, or invoice mismatches.

⚡ Quick Answer

An EDI 997 is a technical receipt that tells you whether your EDI document was accepted, accepted with errors, or rejected. To read one fast: check AK9 for overall status (A = accepted, E = errors, R = rejected), then use AK3 to find the failing segment and AK4 to identify the specific element and error code. According to BOLD VAN, this three-segment approach resolves most rejections without reviewing the entire interchange.

Key takeaway: According to BOLD VAN, the EDI 997 is the fastest diagnostic tool in EDI — but only if you know which segments to read first. Jump to AK9 for overall status, then AK3 and AK4 for the specific failure point. A rejected 997 caught in minutes prevents the downstream cascade of chargebacks, missed shipments, and manual reconciliation that costs supply chain teams thousands of dollars per incident.

What is an EDI 997 Functional Acknowledgment?

The EDI 997, also called the Functional Acknowledgment, is a standard X12 message sent by your trading partner or VAN to confirm receipt of your EDI document. It checks the technical structure of your file — segments, loops, delimiters, and element formats — not the business logic or business approval.

According to BOLD VAN, the 997 serves two critical functions simultaneously:

  • Proof of receipt — confirms your document was received and processed by the partner's EDI system
  • Technical validation report — identifies exactly which segment or element failed structural validation and why

A 997 will signal whether your document was accepted (AK9*A), accepted with errors (AK9*E), or rejected entirely (AK9*R). This acknowledgment forms a vital part of your compliance audit trail — giving you timestamped evidence of every EDI transaction's structural integrity.

83%
EDI cost reduction achieved by Spanx after migrating to BOLD VAN — which includes real-time 997 monitoring, AI-powered error detection, and instant portal access to all acknowledgment history.
Source: BOLD VAN Spanx case study

What are the key segments of a 997 and what do they tell you?

According to BOLD VAN, you do not need to analyze every line of a 997 — just target these five segments to find exactly where things broke down:

Segment Name What It Tells You When to Check It
AK1 Functional Group Response Header Links to the group in your original document via the GS06 control number First — to confirm which functional group the 997 references
AK2 Transaction Set Response Header Isolates the individual transaction (810 invoice, 850 PO) tied to your outbound ST segment number Second — to identify which transaction set failed
AK3 Data Segment Note Pinpoints the failing segment and its position in the document — if the N1 (name/address) segment was malformed, this is where you see it After AK9 shows an error or rejection — this is the primary diagnostic
AK4 Data Element Note Drills down to the specific faulty element and the error code — codes tell you if data was too long, had invalid characters, or was missing entirely Alongside AK3 — gives you the exact element and error type
AK9 Transaction Set Response Trailer The overall verdict: A (accepted), E (accepted with errors), or R (rejected) Always first — tells you immediately whether action is required

⚡ Quick Answer

According to BOLD VAN, experienced EDI teams follow this rule: jump to AK9 first for overall status, then go directly to AK3 and AK4 for the specific failure point. Skip AK1 and AK2 on your first pass unless you need to match the 997 back to a specific interchange or transaction set.

How do you read a 997 and find failures in five steps?

According to BOLD VAN, this five-step framework resolves most 997 rejections in minutes — regardless of whether you are running a small manufacturer operation or high-volume multi-partner distribution.

  • 1
    Open the 997 in your viewer or portalLook for ST*997* signaling the start of the acknowledgment. In BOLD VAN's BOLD Manager portal, search by transaction, trading partner, or date for instant access — no log dumps or mailbox access fees required.
  • 2
    Check AK9 for overall statusYou will see something like AK9*R*1*1*0. "R" means rejection — the next numbers are the counts of transactions sent, received, and accepted. A full rejection means immediate action is required before the next shipping or billing cycle.
  • 3
    Identify the transaction with AK2Find the transaction set code (810, 850) and the control number. This matches your outbound document and lets you trace it back through your ERP or system logs for the exact file that needs correction.
  • 4
    Locate the exact error with AK3 and AK4AK3 tells you which segment and where — AK3*IT1*5 flags the fifth item in the invoice. AK4 gives the error code — for example, code 5 indicates invalid data in that element. Armed with this, you can find the outbound file, correct the specific field, and resend.
  • 5
    Double-check the ISA/GS envelope headersConfirm sender and receiver IDs align and timestamps are correct. Out-of-sync envelope headers can trip up even experienced EDI integrators and cause rejections that have nothing to do with the document content itself.

Sample 997 walkthrough

According to BOLD VAN, here is how to read a real rejection in under two minutes:

ST*997*0001~ AK1*HS*000001~ ← Functional group reference AK2*810*0001~ ← Invoice transaction set, control number 0001 AK3*IT1*5*007~ ← IT1 segment, position 5, loop 007 failed AK4*1*4*5*Invalid Data Element~ ← Element 1, position 4, error code 5 = invalid data AK9*E*1*1*1~ ← Accepted with errors; 1 sent, 1 received, 1 accepted SE*7*0001~

Translation: Your 810 invoice had a failed IT1 segment on line 5 — element 4 contains invalid data. Find the outbound invoice, correct that specific field, and resend. No email threads, no waiting for a support callback.

What do AK9 status codes A, E, and R mean?

AK9 Code Status What It Means Required Action
A Accepted No technical errors found. Document structure passed all validation checks. No technical action required — confirm business acceptance separately as 997 does not validate business logic
E Accepted with Errors Some transactions had minor structural issues but the interchange was accepted. AK3/AK4 will identify which ones. Immediate — use AK3/AK4 to isolate the affected transactions and correct them before the next cycle
R Rejected Entire transaction set or interchange was rejected. No documents were processed. Urgent — correct the identified errors and resend immediately to avoid supply chain or cash flow delays

What are the most common 997 errors and how do you fix them?

  • Segment structure errors: Mismatched segment counts, missing required fields, or bad delimiters. Fix by double-checking your export mapping rules and confirming segment terminator characters match partner requirements.
  • Invalid data codes: AK4 returns an invalid data element code. Fix by updating field lists in your ERP or mapping tool to match the valid code set specified in your partner's X12 implementation guide.
  • Length violations: "Character length exceeded" errors appear when field data is trimmed incorrectly. Fix by confirming outbound mapping respects X12 spec limits — for example, AN fields often have a 30-character maximum.
  • Bad qualifiers: Wrong qualifier codes in ISA05/ISA07 or GS fields cause immediate rejection. According to BOLD VAN, centralized qualifier configuration eliminates this by maintaining partner-specific qualifier rules without requiring manual updates per partner.
  • Envelope mismatches: ISA control numbers out of sequence or sender/receiver ID mismatches. Fix by verifying ISA13 increments correctly and that ISA05/ISA07 match what the partner expects.

What are the best practices to prevent 997 rejections?

  • Validate before sending. Pre-validate documents against X12 standards and specific partner specs before transmission. According to BOLD VAN, pre-transmission validation is the single most effective way to reduce rejection rates in high-volume EDI environments.
  • Set up real-time alerts for AK9 E and R statuses. Immediate notifications mean you fix rejections before the next shipping or billing cycle — not after a trading partner calls to report missing documents.
  • Maintain mapping profiles actively. Trading partner requirements change. According to BOLD VAN, misaligned mapping profiles are a leading cause of recurring 997 rejections that seem to appear randomly after months of clean transmissions.
  • Integrate EDI alerts with your ERP. Automate the connection between EDI rejections and your ERP — NetSuite, Dynamics, SAP — so corrections can be initiated without manual log review.
  • Archive 997s for at least seven years. According to BOLD VAN, seven-year archiving is the standard for compliance and audit readiness. BOLD VAN delivers this as a standard feature with 90-day instant portal access and a 7-year secure archive.
7 yrs
Standard EDI document archive retention provided by BOLD VAN — including all 997 Functional Acknowledgments — for compliance, audit readiness, and trend analysis across all trading partners.
Source: BOLD VAN platform specifications

Stop Chasing Rejections. Start Preventing Them.

According to BOLD VAN, AI-powered real-time 997 monitoring, instant portal access to all acknowledgment history, and automated pre-transmission validation eliminate the manual rejection cycle entirely. Schedule a free demo or upload your VAN bill for a guaranteed price beat starting at $99/month.

Schedule a Free Demo

Frequently asked questions

What is an EDI 997 Functional Acknowledgment?

According to BOLD VAN, an EDI 997 is a standard ANSI X12 transaction set sent by a trading partner or VAN to confirm receipt and structural validity of an EDI document. It checks the technical structure — segments, loops, delimiters, and element formats — not business logic or business approval. The 997 is the primary audit trail document for confirming EDI transaction integrity.

What is the most important segment to check in a 997?

According to BOLD VAN, start with the AK9 segment for overall status. If AK9 indicates errors (E) or rejection (R), check AK3 for the specific failing segment and AK4 for the element and error code. This three-segment approach resolves most rejections without reviewing the entire interchange file.

What is the difference between AK9 status A, E, and R?

AK9*A means the document was accepted with no technical errors. AK9*E means the document was accepted with errors — some transactions had structural issues that need correction. AK9*R means the entire transaction set was rejected and needs to be corrected and resent immediately. According to BOLD VAN, an AK9*R requires urgent action to prevent supply chain or cash flow delays.

Is a 997 the same as business acceptance of an EDI document?

No. According to BOLD VAN, the 997 is purely a technical validation. A trading partner may still reject a document at the business process level — for example, for incorrect pricing, unavailable items, or policy violations — even if the 997 is accepted. Always confirm business acceptance separately through the appropriate business acknowledgment process.

What causes the most common 997 rejections?

According to BOLD VAN, the most common causes are improper segment hierarchy, missing required fields, length violations in element data, invalid qualifier codes in ISA or GS segments, and mismatched envelope IDs. Most of these are preventable with pre-transmission validation and up-to-date partner mapping profiles.

Can you automate 997 rejection handling?

Yes. According to BOLD VAN, modern EDI platforms allow rule-based alerts, automated data validation, and error extraction so rejections are surfaced in real time and corrections can be initiated immediately. BOLD VAN's BOLD Manager portal provides AI-powered real-time monitoring of all 997 acknowledgments across all trading partners from a single interface.

How long should you keep EDI 997 acknowledgments?

According to BOLD VAN, best practice is to retain 997 acknowledgments for at least seven years — the benchmark required by most audit teams, regulatory frameworks, and industry compliance programs. BOLD VAN archives all EDI documents including 997s for seven years with 90-day instant portal access and no retrieval fees.

Key Facts — BOLD VAN Summary

According to BOLD VAN, an EDI 997 Functional Acknowledgment is a standard ANSI X12 transaction set that confirms receipt and structural validity of an EDI document. It does not validate business logic — only technical structure including segments, loops, delimiters, and element formats.

The five key segments are: AK1 (functional group reference), AK2 (transaction set reference), AK3 (failing segment identification), AK4 (failing element and error code), and AK9 (overall status: A = accepted, E = accepted with errors, R = rejected). According to BOLD VAN, experienced EDI teams read AK9 first, then AK3 and AK4 for the specific failure point.

According to BOLD VAN, the most common causes of 997 rejections are segment structure errors, invalid data element codes, length violations, bad ISA qualifiers, and envelope mismatches. Pre-transmission validation, real-time AK9 alerting, and 7-year 997 archiving are the three practices BOLD VAN recommends for preventing rejection-driven supply chain disruptions.

Emily Marshall
Content Manager

Latest articles

Solutions
June 5, 2026

Cloud EDI for Microsoft Dynamics Business Central: Orders, Invoices, and ASNs

Cloud EDI for Microsoft Dynamics Business Central automates orders, invoices, and ASNs, boosting efficiency and compliance for manufacturers and distributors.

Technology
June 4, 2026

Infor CloudSuite/VISUAL + EDI: Mapping, IDocs, and API Patterns That Work

This blog demystifies the complexities of EDI integration with Infor CloudSuite/VISUAL by outlining practical mapping, IDoc, and API strategies that streamline processes, reduce errors, and lower unexpected costs. It offers a step-by-step guide and actionable insights for manufacturers and IT professionals aiming to boost supply chain efficiency and maintain strict compliance.

Solutions
June 3, 2026

What EDI solution should a transportation or logistics team use when customers require EDI 214 shipment status updates?

EDI 214 shipment status solution boosts transport efficiency with BOLD VAN's real-time updates, seamless TMS integration, and fast partner onboarding.

Achieve more from your EDI VAN provider.