cXML Protocol
⚠️ Source Note: Extracted from TradeCentric vendor blog. Protocol definitions reflect industry-standard specifications. All promotional language stripped. Do not attribute to Justin King or B2BEA.
cXML (Commerce eXtensible Markup Language) is an XML-based protocol designed specifically for B2B procurement data exchange. It defines how eProcurement systems, eCommerce platforms, and ERP systems communicate purchasing documents — including PunchOut sessions, purchase orders, order confirmations, ship notices, and invoices.
Originally developed by Ariba in 1999, cXML is now the dominant protocol for connecting eProcurement platforms to supplier eCommerce sites.
What cXML Does
cXML is purpose-built for procurement. Where generic XML is a flexible markup language used across many industries, cXML adds procurement-specific Document Type Definitions (DTDs) that standardize how B2B purchasing documents are structured and transmitted.
Documents cXML supports:
- PunchOut Setup Request / Response — initiates and authenticates a buyer session
- PunchOut Order Message (POOM) — transfers cart from supplier back to buyer
- Purchase Order (PO) — buyer sends approved order to supplier
- PO Acknowledgement — supplier confirms receipt
- Order Confirmation / Ship Notice (ASN) — supplier updates order status
- Invoice — supplier submits electronic invoice to buyer
This makes cXML a full-lifecycle protocol, not just a catalog integration tool.
How cXML Works in a PunchOut Transaction
A typical PunchOut exchange using cXML:
Step 1 — PunchOut Setup Request
The buyer’s eProcurement system sends a cXML document to the supplier’s eCommerce site. It includes buyer credentials, organization identifiers, and session parameters. The supplier site validates this and creates an authenticated session.
Step 2 — PunchOut Setup Response
The supplier returns a cXML response containing the redirect URL. The eProcurement system redirects the buyer to this URL — they land on the supplier’s site, already logged in with their negotiated pricing.
Step 3 — PunchOut Order Message (POOM)
When the buyer clicks “Transfer Cart,” the supplier site sends a cXML POOM back to the eProcurement system. This document encodes the cart: product IDs, descriptions, quantities, UNSPSC codes, unit prices, currency, unit of measure. The eProcurement system converts this into a purchase requisition.
cXML vs. EDI
Both cXML and EDI are used for B2B electronic document exchange, but they serve different use cases and come from different eras:
cXML
EDI (X12)
Age
Developed 1999
Developed late 1960s
Scope
Procurement-specific
Broad (logistics, finance, supply chain, and more)
Complexity
Lower cost, simpler to implement
Complex, costly, requires specialized infrastructure
Extensibility
XML-based; extensible
Rigid; not designed for customization
Real-time interaction
Yes — designed for live eCommerce sessions
No — primarily batch processing
PunchOut support
Native
Not supported
ERP/eProcurement support
Supported natively in most modern platforms
Requires dedicated translation infrastructure
EDI remains the dominant protocol for high-volume, high-frequency reordering between large enterprise systems. cXML is the standard for eProcurement-to-eCommerce integration (PunchOut, catalog browsing, and the documents that follow).
Many B2B suppliers use both: EDI for existing large-account integrations, cXML for newer eProcurement connections.
cXML vs. OCI
OCI (Open Catalog Interface) is SAP’s proprietary alternative to cXML. It predates wider cXML adoption in SAP environments.
cXML
OCI
Origin
Ariba / industry standard
SAP proprietary
Scope
Full procurement lifecycle (PunchOut + PO + invoice + ASN)
PunchOut (catalog call + cart return) only
Automation beyond PunchOut
Yes — POs, invoices, ASNs
No
Cross-platform compatibility
Works across all major eProcurement platforms
Best suited for SAP environments
Extensibility
XML-based; adaptable
More rigid outside SAP
Suppliers selling to large SAP-centric buyers often need OCI support. cXML handles the rest of the market. See oci-punchout.
Why This Matters for Distributors and Manufacturers
For a mid-market distributor or manufacturer:
- Enterprise buyers on Ariba, Coupa, or Jaggaer expect cXML PunchOut as a baseline capability
- Without it, the supplier’s eCommerce site is effectively invisible to buyers locked inside their eProcurement system
- Implementing cXML PunchOut is the single highest-leverage integration step for capturing enterprise account spend digitally