Skip to content
Gatebold

cXML Validator

Free cXML validator, compliant with the official DTD.

Paste your cXML message and get a compliance check against the official cXML1.2.070DTD - line-by-line errors,no payload stored, no cookies.

Validation against the official cXML 1.2.070 DTD

Results

Ready to validate

Paste your cXML message or import a file on the left, then click Validate.

How to use this cXML validator

  1. Paste your cXML message into the field on the left, or import a .xml / .cxml file from your disk (500 KB cap).
  2. Click Validate. The validator runs your message against the official cXML 1.2.070 DTD in a few milliseconds.
  3. Read the result. If the message is valid, you get a100%conformity score and the detected message type. Otherwise, every error appears with its line number and a plain-language explanation.

Most common cXML errors

Broken cXML messages almost always come from a slow drift between the buyer-side implementation (Ariba, Coupa, Oracle Procurement, etc.) and the official spec. Here are the errors this validator catches most often:

  • Missing element in the Header. The DTD enforces a strict sequence of From, To, Sender. Skip any of them and the whole request fails.
  • Missing payloadID or timestamp on the cXML root. Both are required attributes.
  • Out-of-enum operation value on PunchOutSetupRequest. Only create, inspect, edit and source are accepted.
  • Element not declared in the DTD. Often a custom attribute or proprietary extension that should be wrapped in an Extrinsic.
  • Mismatched opening and closing tags. Typical of a partial copy-paste between Postman and a text editor.

Which cXML messages can you validate?

Every message defined by the official cXML 1.2.070 DTD. The most common in PunchOut and e-procurement integrations:

  • PunchOutSetupRequest / PunchOutSetupResponse - the catalog session handshake.
  • PunchOutOrderMessage - cart return to the buyer's ERP.
  • OrderRequest / ConfirmationRequest - the order and its confirmation.
  • ShipNoticeRequest - the advance ship notice (ASN).
  • InvoiceDetailRequest - the electronic invoice.
  • ProfileRequest / ProfileResponse - capability negotiation.
  • QuoteRequest / QuoteMessage - quote request and response, etc.

cXML DTD 1.2.070 - what gets checked

Our validator runs against the official cXML 1.2.070 DTD published by cxml.org in strict mode. Specifically it checks:

  • The structural grammar: elements present, in the right order, with the right cardinality (a single Header, exactly one of Request/Response/Message).
  • Required attributes on each element (payloadID, timestamp, domain, operation, etc.).
  • Enumerated values on typed attributes.
  • Tag nesting (XML well-formedness).

What the validator does not check: business consistency (a negative price, a reused BuyerCookie, an Identity that doesn't match your supplier account, etc.). Those rules are domain-specific and belong to the outbound integration layer.

Learn more

Frequently asked questions

What is a cXML validator?
A cXML validator checks that a cXML message conforms to the official grammar (DTD) published by cxml.org. It catches missing elements, missing required attributes, mis-nested tags, and out-of-enum values.
Which cXML DTD version is used?
The latest stable version as of February 14, 2026: cXML 1.2.070. All official DTD files (cXML.dtd, Fulfill.dtd, Catalog.dtd, Quote.dtd, etc.) ship with the validator.
Which cXML messages can you validate?
Every message the DTD declares: PunchOutSetupRequest, PunchOutSetupResponse, PunchOutOrderMessage, OrderRequest, ConfirmationRequest, ShipNoticeRequest, InvoiceDetailRequest, ProfileRequest, QuoteRequest, and more.
Is my payload stored or logged?
No. The cXML is validated in ephemeral memory and released as soon as the response is sent. No disk writes, no content logging, no cookies dropped. Only HTTP metadata (status, duration, byte size) is kept in the system journal.

Gatebold

You can validate cXML - but who generates yours?

Gatebold turns your Magento or Adobe Commerce store into a PunchOut-ready supplier for cXML and OCI - without rewriting your catalog. Structured mapping, observability, data in France.