What Is Electronic Data Interchange (EDI)?
EDI, Electronic Data Interchange, is the structured, machine-to-machine exchange of business documents between trading partners. Instead of emailing PDFs, faxing forms, or rekeying orders from a portal, EDI sends a precisely-formatted file from one system to another so the receiving system can ingest it without human intervention. Purchase orders, shipment notifications, invoices, payment remittances, all flow as standardized records that map deterministically into ERP fields.
In plain English: when Loblaws places an order with one of its 30,000+ suppliers, an EDI 850 file lands in the supplier's system overnight. When the supplier ships the goods the next day, an EDI 856 (Advance Ship Notice) flows back to Loblaws. When the goods arrive, the warehouse scans the SSCC barcode on the pallet (printed from the 856), confirms receipt, and an EDI 810 invoice flows from supplier to retailer. Zero phone calls, zero email attachments, zero rekeying. That is EDI.
For Canadian B2B wholesalers and manufacturers selling into Loblaws, Sobeys, Metro, Walmart Canada, Costco Canada, Canadian Tire, Couche-Tard, or Home Depot Canada, EDI is not optional, it is a mandatory condition of doing business above a certain volume. This guide is written by Octura Solutions, an Official Odoo Ready Partner. We have connected Canadian suppliers to all of the above retailers using Odoo as the ERP backend. The patterns below come from those deployments.
EDI Standards: X12 vs EDIFACT
EDI is not a single format, it is a family of standards. Two dominate global B2B:
- ANSI X12, the North American standard. Used by every major US and Canadian retailer. Documents are identified by 3-digit codes: 850 (purchase order), 855 (PO acknowledgement), 856 (advance ship notice), 810 (invoice), 820 (payment remittance), 945 (warehouse shipment), 997 (functional acknowledgement). Loblaws, Sobeys, Walmart Canada, Costco, Canadian Tire, Couche-Tard all run X12.
- EDIFACT, the international standard, dominant in Europe. Documents named with text codes: ORDERS (purchase order), ORDRSP (acknowledgement), DESADV (ship notice), INVOIC (invoice), REMADV (remittance). Used by Carrefour, Tesco, Metro Europe, and most European-headquartered retailers, including some that have Canadian operations.
In Canada, you will encounter X12 almost exclusively, with EDIFACT cropping up when you sell into European subsidiaries (e.g. Metro AG's German operation). For most Canadian suppliers, the decision is not "which standard", it is "X12 870-something? Which version?" Every retailer uses a slightly different release year (X12 4010, 5010, 6020) and a slightly different subset of segments. The implementation work is the mapping, not the format choice.
Canadian Retailer EDI Requirements
The big Canadian retailers each have their own EDI implementation guide, GS1 labelling rules, and vendor-onboarding portal. The mandatory document set varies by retailer but typically includes:
- Loblaws Companies (Loblaw, Shoppers Drug Mart, T&T), X12 5010, full document suite (850, 855, 856, 810, 997). GS1 SSCC labels required for all DC shipments. Onboards through SPS Commerce or direct VAN.
- Sobeys (Empire/IGA/FreshCo/Safeway), X12 4010 still common, some divisions on 5010. ANSI 856 with item-level detail required. Direct EDI or SPS Commerce.
- Metro Inc. (Metro/Super C/Adonis/Jean Coutu), X12 4010/5010 mix. SmartConnect / Tradacoms gateway. Strict on ANSI 856 timing, 2 hours before delivery minimum.
- Walmart Canada, X12 5010, the most demanding implementation guide. SPS Commerce, TrueCommerce, or direct AS2. ASN compliance penalties for variance.
- Costco Canada, X12 5010, custom subset. Item Master interchange (832) plus standard documents. Strict timing windows.
- Canadian Tire, X12 5010, GS1-128 labelling, direct EDI gateway. EDI required for DC shipments above a SKU threshold.
- Couche-Tard / Circle K, X12 5010 across the convenience banner. Direct distribution model so EDI flows from supplier to specific stores.
- Home Depot Canada, X12 5010 + DOTCOM portal for forecasting. Strict on 856 timing and SSCC labels.
The common thread: X12 5010 with a small handful of mandatory documents (850 / 856 / 810 / 997 baseline, plus 832 for catalogue interchange and 820 for payment remittance). The differences are in the specific segments, the timing windows, and the labelling rules. Mapping the documents to Odoo records is largely standard; the trading-partner-specific quirks are what each new retailer connection costs.
How Odoo Connects to EDI: Architecture
Odoo does not ship with built-in X12 or EDIFACT support. The architecture every working Odoo + EDI deployment uses is:
- EDI translator (middleware). An external service that handles the X12 parsing, mapping, and AS2/VAN transport. The big three for Canada: SPS Commerce, TrueCommerce, and OpenText (Liaison/GXS). Smaller specialists like 1 EDI Source and EDI2XML also serve mid-market.
- API or file-based bridge. The translator outputs JSON or canonical XML; Odoo ingests it via its REST API (or an SFTP file drop). Outbound documents flow the same way in reverse, Odoo emits JSON, the translator wraps it in X12 and ships to the retailer.
- Odoo as the system of record. Sales orders (from inbound 850), pickings (driven by your warehouse flow), and invoices (auto-generated on shipment) live in Odoo's Inventory, Sales, and Accounting modules.
- GS1 labelling. Odoo prints GS1-128 case labels and SSCC pallet labels at the warehouse, driven by the ASN data that Odoo will emit. Same lot/serial traceability data flows into both the printed label and the outbound 856.
Why outsource the translator? X12 parsing is a solved problem, building it in-house is 3–6 months of engineering for a result that's not differentiated. SPS Commerce, TrueCommerce, and OpenText have invested decades into the mapping libraries and retailer relationships. Pay them $300–$1500/month per trading partner and get reliable transport, retailer-certified maps, and a 24/7 support line. Spend Odoo engineering effort on the business logic that's actually yours.
Recommended EDI Connectors for Odoo in Canada
- SPS Commerce, largest network for Canadian retail, pre-certified with Loblaws, Sobeys, Metro, Walmart Canada. ~$300–$800/month per trading partner. Best when you connect to 3+ retailers and want a single vendor. We've integrated Odoo with SPS through their REST API on multiple manufacturing customers.
- TrueCommerce, strong on Loblaws, Walmart Canada, Costco. Pre-built Odoo connector available through their app marketplace (verify the version against your Odoo release). Slightly cheaper than SPS for low-volume.
- OpenText (Liaison/GXS), enterprise-grade, dominant in legacy mid-market. Use when retailers specifically ask for a OpenText-managed VAN connection. More expensive but with negotiated pricing for high volume.
- 1 EDI Source / EDI2XML / Boomi, mid-market alternatives that can fit when budget is tight or when you need custom mappings for a niche retailer. We've used 1 EDI Source for Quebec-focused regional grocery chains where SPS/TrueCommerce coverage is light.
- Direct AS2 (no VAN), Walmart Canada and Home Depot Canada both support direct AS2 connections. The cost saving over a VAN can be significant at scale (no per-document fees) but you take on the certificate management and uptime responsibility. Worth it above ~10,000 documents/month per retailer.
The Standard X12 Document Flow in Odoo
A typical EDI cycle for a Canadian wholesale supplier looks like:
- Inbound 850 (Purchase Order). Retailer's PO lands in the EDI translator at 11pm. Translator maps to Odoo JSON, posts via REST. Odoo creates a draft sales order with the customer's PO number, line items, and required delivery window. Validation runs on missing SKUs or unrecognised ship-to locations.
- Outbound 855 (PO Acknowledgement). Once the sales order is confirmed in Odoo (auto or with light human review), Odoo POSTs the acknowledgement back to the translator, which emits the 855 to the retailer. Some retailers require this within 24 hours of the 850.
- Outbound 856 (Advance Ship Notice). When the warehouse confirms picking, Odoo emits an ASN with carton/pallet hierarchy, SSCC numbers, and lot/serial detail. Timing matters: retailer-specific windows range from 1 hour before truck arrival (Metro) to 24 hours after shipment (Sobeys).
- GS1-128 case labels. Printed at pack time. Encode the SSCC, GTIN, lot, and quantity in a Code 128 barcode. Odoo's report engine generates the label artwork; the SSCC is reserved by your range manager.
- Outbound 810 (Invoice). Auto-generated on shipment confirmation. Maps the sales order line items to the EDI invoice format, with discounts, freight allowances, and tax aligned to the retailer's vendor agreement.
- Inbound 820 (Payment Remittance). When the retailer pays, an 820 lists the invoices being settled with discount/deduction detail. Odoo applies the payment and flags deductions for AR review.
- Inbound 997 (Functional Acknowledgement). Every document gets a 997 in response. Missing 997s are the canary for transport failure, Odoo should alert if a sent document hasn't received a 997 within the retailer's window.
Configure each retailer trading-partner relationship once (mapping rules, timing windows, label formats), and the day-to-day operation runs hands-off. The work is in the initial mapping and the per-retailer compliance certification, both of which the EDI translator partner does most of.
Considering Odoo for EDI-Heavy B2B in Canada?
Octura has wired Odoo to Loblaws, Sobeys, Walmart Canada, Costco Canada, and Home Depot Canada for B2B suppliers across the country. Whether you're an SMB onboarding your first retailer or a mid-market manufacturer connecting your tenth, we've seen the mappings and the gotchas. Book a free 30-minute scoping call, we'll review your retailer set, your current ERP state, and the right connector + Odoo configuration in your environment.
Book a free Canadian EDI scoping call →Frequently Asked Questions
What is Electronic Data Interchange (EDI)?
EDI, Electronic Data Interchange, is the structured exchange of business documents between trading partners' systems in a machine-readable format. Instead of emailed PDFs or rekeyed portal entries, purchase orders, shipment notices, invoices, and remittance advices flow as standardized files (X12 in North America, EDIFACT in Europe) directly between ERPs. EDI is mandatory for selling into all major Canadian retailers above a volume threshold.
Does Odoo support EDI?
Odoo does not ship with X12 or EDIFACT parsing built in. The standard architecture pairs Odoo with an external EDI translator, SPS Commerce, TrueCommerce, OpenText, or 1 EDI Source, that handles parsing and retailer transport while Odoo serves as the ERP system of record. The translator bridges to Odoo via REST API or SFTP file drops. We've deployed this pattern with all the major Canadian retailers.
Which EDI documents do Canadian retailers require?
The baseline document set across Loblaws, Sobeys, Metro, Walmart Canada, Costco Canada, and Canadian Tire is: 850 (purchase order, inbound), 855 (PO acknowledgement, outbound), 856 (advance ship notice with SSCC, outbound), 810 (invoice, outbound), 820 (payment remittance, inbound), and 997 (functional acknowledgement, both directions). Some retailers add 832 (catalogue), 870 (order status), and 945 (warehouse shipment).
What is the difference between X12 and EDIFACT?
X12 (ANSI) is the North American EDI standard, used by every major US and Canadian retailer. Documents are identified by 3-digit codes (850, 856, 810). EDIFACT is the international standard, dominant in Europe and used by Carrefour, Tesco, and Metro Europe. Documents are identified by text codes (ORDERS, DESADV, INVOIC). Canadian suppliers selling domestically will encounter X12 almost exclusively; EDIFACT comes up only when exporting to European trading partners.
How much does EDI cost for an Odoo-based business?
Translator subscription fees from SPS Commerce, TrueCommerce, or OpenText range from $300 to $1,500 per trading partner per month, depending on document volume. Implementation cost for connecting a new retailer to Odoo is typically $5,000 to $15,000 per retailer, including mapping, testing, and retailer certification. Direct AS2 (no VAN) eliminates the translator subscription but requires more in-house DevOps capability.
How long does it take to set up EDI between Odoo and a retailer?
A first retailer connection typically takes 6–10 weeks: 2 weeks for translator onboarding and Odoo bridge configuration, 2 weeks for document mapping, 2 weeks for retailer certification testing, and a 2-week parallel run before going live. Subsequent retailers using the same translator are faster, typically 3–5 weeks each because the Odoo side is already wired.
Does Octura handle EDI projects for Canadian Odoo customers?
Yes. We scope, implement, and certify EDI between Odoo and major Canadian retailers (Loblaws, Sobeys, Metro, Walmart Canada, Costco Canada, Canadian Tire, Home Depot Canada). Engagements are scoped per retailer or as multi-retailer rollouts. We work with SPS Commerce, TrueCommerce, OpenText, and 1 EDI Source depending on the customer's existing relationships and the retailer set. Book a consultation via our Canadian partner page.