Costco Wholesale buys from its suppliers and exchanges purchase orders, acknowledgments, ship notices and invoices as X12 EDI. For many suppliers, that exchange runs through SPS Commerce. This post explains how it works when every file is built and read inside your own ERP, based on the Costco Wholesale connection we run for a US consumer electronics brand.
Wholesale, not dropship
Costco has more than one way to buy from a supplier, and they are different integrations.
In wholesale, Costco buys your stock and you ship it to Costco. In Costco.com dropship, Costco takes a customer order and you ship that single order straight to the customer, usually through CommerceHub rather than SPS Commerce. This post covers wholesale. Dropship is covered in our guide to Costco.com dropship for suppliers and brands.
The four documents
A Costco Wholesale cycle on this connection uses four X12 transaction sets. Each one has a single job.
850 purchase order. Costco orders stock from you. The ERP turns it into a real order against your own items.
855 acknowledgment. You confirm what you can actually ship, with quantities and dates, before Costco plans against the order.
856 advance ship notice. Sent when the goods ship. It has to describe what physically left the warehouse, not what was ordered.
810 invoice. Bills Costco for what shipped, matched line for line against the ship notice.
For what each transaction set does across all trading partners, see EDI transaction sets explained.
What SPS Commerce does, and what it does not
SPS Commerce sits between the ERP and Costco, but it does not translate anything. The ERP builds each outbound file itself and uploads it to SPS Commerce’s FTP. It reads each inbound file that SPS Commerce delivers. SPS Commerce validates the files and delivers them between the two sides.
That division matters when something is rejected. Because the ERP built the file, the file and the order record it came from sit in the same system. Diagnosing a rejection means comparing the two, and that is a query rather than a support ticket.
Inside the ERP
Every X12 file on this connection is read and generated inside the ERP using the EdiFabric .NET library, and the mapping is in the ERP’s own code. The same approach is described in more detail in EDI inside your ERP.
An inbound 850 is parsed straight into the order tables, with Costco’s item numbers mapped to the brand’s own. The 856 has to describe what the warehouse actually shipped, and the 810 has to bill for that, not for what was ordered.
Costco is one of more than a dozen retail trading partners on the same ERP. Amazon Vendor Central and Adorama connect directly over SFTP, and the rest through a network such as SPS Commerce, CommerceHub or Radial, and all of them share one order queue, one inventory position and one set of shipment records. The system is described in our multi-marketplace ERP case study.
Running it day to day
Scheduled EDI jobs poll FTP on schedules as short as every ten minutes, and every job is tracked on a monitoring dashboard. Staff can see when each job last ran, what it picked up and what was rejected, so a problem is diagnosed from the ERP’s own data rather than discovered when Costco asks.
Where to start
Start with the specification Costco and SPS Commerce give you for your account: which documents, which fields and which validation rules apply. Then decide where the documents will be built. If the answer is your own ERP, the work is the mapping and the monitoring.
We build this kind of connection as part of our EDI integration services. If Costco has asked you to go live on EDI through SPS Commerce, get in touch and tell us what your ERP runs on today.
Common questions
Does SPS Commerce translate our Costco documents?
No. The ERP builds and reads the X12 files itself. SPS Commerce validates them and delivers them between the ERP and Costco.
Is this the same as Costco.com dropship?
No. This is Costco Wholesale, where Costco buys stock from you. Costco.com dropship, where you ship each order to the customer, is a separate program that usually runs through CommerceHub.
Which documents does a Costco Wholesale connection exchange?
The connection we run exchanges the 850 purchase order, 855 acknowledgment, 856 ship notice and 810 invoice. What your own account requires is set by Costco and SPS Commerce, so check the current specification.
Can this be built into an ERP we already run?
Often yes. What matters is whether your order, shipment and invoice data is reachable, not who wrote the ERP.
