• Last edited on: 17 September 2018

cXML Purchase Orders

Coupa supports cXML OrderRequest and OrderResponse documents.


Coupa adheres to cXML standards. We suggest you refer to the cXML User's Guide at cXML.org to learn more. See also Handling Common Special Characters in cXML.

Use the purchase order examples listed below:

Sample cXML Purchase Order with Annotations


If you plan on receiving purchase orders via cXML, you’ll want to fill out the Coupa cXML Supplier Questionnaire and give it to your customer.

How It Works

Coupa will send you an OrderResponse cXML document with an OrderResponse document, which includes these required validation fields:

  • Supplier domain
  • Supplier identity
  • Buyer domain
  • Buyer identity
  • Shared Secret

Supported cXML

Coupa supports the following cXML purchase order documents. Suppliers must return an OrderResponse within 60 seconds for every OrderRequest received.

cXML Document Description

Include the following elements:

  • Routing URL
  • Supplier domain and identity
  • Buyer domain and identity
  • Shared secret
OrderResponse Post your cXML back to Coupa when you receive OrderRequest.

cXML Order Response Status codes

Code Meaning
2XX Successful
5XX Error, but the system will retry 5 times at 1-hour intervals
4XX Error, and retries will not be successful

Testing Checklist

Talk to your customer about how to test your integration.

Sample cXML

Purchase Order with Annotations

{{ wiki.page("/Suppliers/Integration_Resources/Sample_Purchase_Orders/Sample_cXML_Purchase_Order_with_Annotations") }}


<?xml version="1.0"?>
<cXML payloadID="111111111" xml:lang="en" timestamp="1999-03-12T18:39:09-08:00">
		 <Status code="200" text="OK"/>

Error Handling

If you're getting an error when trying to set up a cXML connection, see cXML Error Handling

Coupa does not support SSL client certificate authentication and requires the supplier to remove this restriction. See TLS/SSL Errors during PO Transmission for more info.