Passing Costco's EDI Compliance Test, Step by Step

A step-by-step guide to Costco's EDI 850/856/810 compliance test cycle, covering GS1-128 labels, ASN timing, and how to fix a failed test round.

Passing Costco's EDI Compliance Test, Step by Step

Costco doesn't let a single production purchase order through until your EDI setup clears its certification cycle for the 850, 855, 856, 810, and 997. If you've done Costco EDI compliance testing for another retailer and assumed the map would transfer, stop here. It won't. This walkthrough covers what actually happens in each test round, what Costco's team checks, and what to do the moment your test ASN comes back rejected.

What Costco's EDI testing cycle actually verifies

Costco's compliance test isn't a formality. It's a full simulation of your order-to-cash document chain, run against Costco's own implementation guide rather than a generic ANSI X12 template. Once approved, suppliers must pass Costco's EDI compliance testing before products ever reach the warehouse floor, with orders, advance ship notices, invoices and shipping labels required to follow its exact specifications. That last part trips people up more than any other single detail.

If your last certification was with Walmart or Amazon, don't assume the map carries over. Maps from other retailers won't pass without custom adjustments, because Costco's EDI requirements are distinct, especially around ASNs and label formats. Even a mapping that's been production-stable for years elsewhere will fail Costco's HL hierarchy checks or SSCC formatting rules on the first pass.

Before you start: what you need in place

None of this works without the basics sitting on your desk before test round one begins.

  • Your Costco vendor number and an assigned buyer or EDI contact, since you shouldn't begin EDI setup until Costco confirms your item approvals via their vendor portal and officially issues your Vendor ID, a process that can take up to two months.
  • A GS1 Company Prefix, because you'll register for a GS1 Company Prefix and create SSCC-18 barcode templates to uniquely identify each shipped unit, carton, and pallet.
  • A connection method decided in advance: AS2 with exchanged certificates, or a VAN mailbox. Either way, you need an AS2-capable system, ranging from standalone AS2 servers to integrated EDI platforms that include AS2 connectivity, if you're going that route.
  • An EDI translator or a managed provider with a Costco-specific map already built and validated, not a generic X12 4010 template.
  • Test environment credentials and qualifiers, issued separately from your production ISA/GS IDs, so nothing you send during testing accidentally lands in a live queue.

Running the test cycle, step by step

Once the checklist above is complete, the actual certification cycle follows a fairly consistent sequence regardless of which VAN or translator you're using.

  1. Request the Costco EDI Implementation Guide and your test ISA/GS qualifiers from your assigned buyer or EDI contact.
  2. Set up your AS2 connection or VAN mailbox. For AS2, your software encrypts the file using your trading partner's public certificate so only the intended recipient can read it, and digitally signs it with your private certificate to prove the message wasn't altered in transit.
  3. Build and test your inbound 850 map so Costco's test purchase order parses correctly into your order management or ERP system, with no truncated fields or misread qualifiers.
  4. Send a test 855 acknowledgment within the required window whenever dates or quantities differ from the PO. In a typical scenario, a supplier receiving a PO for 600 cases split across two cartons per case pack must send an 855 within the agreed SLA if dates differ.
  5. Generate GS1-128 carton and pallet labels. Every GS1-128 label for Costco shipments must include an SSCC-18 barcode matching the ASN, ship-to warehouse information, and the purchase order number linking the carton to the original order.
  6. Build the 856 with a full shipment-to-order-to-item-to-pack hierarchy. Every ASN must include shipment-level data like carrier SCAC code and Bill of Lading number, order-level data including the Costco PO number and ship-to warehouse location, pack-level SSCC-18 codes for each carton, and item-level GTIN, quantity, and lot numbers where applicable.
  7. Transmit the 856 before the shipment would physically arrive. Costco requires ASNs to be transmitted before the shipment physically arrives at the destination warehouse, with best practice being to send it within hours of departure, not days. In test rounds, timing gets graded just as strictly as content.
  8. Send the 810 invoice, making sure it references the same PO and SSCCs used in the ASN, since the 810 must reference the PO and SSCCs, and any mismatch can prompt a chargeback or delay payment once you're live.
  9. Confirm 997 functional acknowledgments return for every inbound transaction. Keep in mind that a 997 confirms whether an EDI transaction was received and accepted or rejected at the functional or syntax level, but it does not confirm business acceptance, shipment receipt, or invoice approval.
  10. Submit the batch to Costco's EDI team for review, then repeat only the specific transaction that failed validation rather than restarting the entire sequence.

Expect to run this more than once. Costco's compliance process includes mandatory testing for your 850, 856 and 810 documents along with GS1-128 barcode labels, and you should budget for two to four rounds, with the full cycle typically spread over several weeks.

How you know it worked

Certification isn't a feeling, it's a written confirmation. The practical workflow looks like this: test 850 receipt, 856 timing, and 810 matching until they run clean, then go live. Once Costco's EDI team signs off, you'll receive production ISA/GS qualifiers separate from the test ones you've been using. Nothing routes to your live environment until those are issued, so if test POs are still landing in your test mailbox after your last submission, you're not certified yet, no matter how clean your last transmission looked.

The most common failure mode: ASN and label mismatches

If a round fails, it's almost always here. Barcode and ASN mismatches are a top failure cause, where GS1-128 label data and ASN data must sync precisely, and any discrepancy triggers a reship request at your expense. The second most common cause is structural: hierarchy omissions, since Costco requires the full shipment-to-order-to-item-to-pack structure, and submitting only at the pallet or carton level is a failure. This lines up with what other retailers see too. The most common cause of an 856 rejection is a missing or invalid SCAC on the shipment's carrier, followed by an SSCC mismatch between the physical label and the transmitted value, a package count that doesn't match the packaging hierarchy, or a shipped quantity exceeding the PO line.

The fix isn't to rebuild your whole map. Reconcile the label print data and the 856 data from a single source of truth, typically your WMS, instead of generating labels and ASN content from two separate systems that can drift apart. Then re-test only the failing scenario. This matters because the cost of getting it wrong compounds once you're live: non-compliance can trigger chargebacks including ASN errors priced at $250 or more per shipment, and separately, incorrect GS1-128 labels can cost $5 to $10 per carton once mislabeled product hits the dock. A secondary but recurring failure is late 997s, or missing lot codes on date-sensitive product lines that Costco's receiving team flags on scan.

Where the carrier data in your 856 actually comes from

Most teams build their 850 and 810 maps around ERP data, then get stuck wondering where the SCAC, BOL number, and carrier name in the 856 are supposed to originate. They rarely live in the ERP. That data belongs to whatever system actually books and executes the shipment, which is a transportation management or multi-carrier platform, not your order system.

Platform typeExamplesBest fitPricing model
Enterprise multimodal TMSMercuryGate, DescartesLarge shippers and asset-based 3PLs needing genuine multi-modal breadthQuote-only, with annual contract values from roughly $75,000 for core TMS up to $500,000+ for full trade intelligence suites
Network/marketplace modelUber Freight, Transporeon, AlpegaShippers wanting access to a pre-built carrier network rather than one-to-one integrationsNot published
European shipper-focused platformCargosonPrioritizing direct ownership of a smaller, curated carrier listNot published

Platforms like Cargoson, alongside MercuryGate and Descartes, exist precisely to push SCAC, BOL, and appointment data downstream into the 856 automatically, which cuts the manual re-entry that causes the SSCC and carrier mismatches Costco's test cycle is designed to catch.

Staying certified after go-live

Certification isn't permanent. Costco's specifications shift, and your EDI solution must support the exact version specified in Costco's implementation guide for each transaction set, so you should always refer to the IG for definitive version requirements as these may evolve over time. Treat your post-certification metrics as ongoing KPIs rather than a box you checked once. Track ASN accuracy above 99% and keep your invoice dispute rate below 1% as your baseline, and if either slips, pull the failing transaction apart the same way you would during a test round rather than waiting for a chargeback to tell you something broke.