Global Compliant cXML Invoicing - UK

Use this cXML invoice to test your compliant invoicing integration for the UK.

General Compliance Prerequisites

  1. The applicable country's compliance must be enabled in Coupa.
  2. The Coupa instance must have an invoice presentation configured for the applicable country.
  3. Important Step: The supplier must become linked on the Coupa Supplier Portal (CSP) and create a remit-to address on the CSP.
  4. The supplier must reference this remit-to address in the cXML code by referencing the remit-to code and remit-to name, or the exact address as seen below.

See Compliance as a Service for more info.

Sample cXML for Remit-to Address

The following fields are required for remit-to address invoices:

  • Suppliers Primary Name
  • Suppliers Remit-to Address - This address has to be created from the CSP.
Note

 

  • addressID maps to the remit_to_code field on remit-to addresses from the CSP.
    • Overrides any address info within the PostalAddress element.
  • IdReference uses two elements required for compliant invoices:
    • taxPrefix - supplier’s VAT code (usually the same as the tax country code).
    • taxNumber - supplier’s VAT number.
<InvoicePartner>
	 <Contact role="remitTo" addressID="badbeef">
			 <Name xml:lang="en">Vernon Dursely</Name>
			 <PostalAddress name="default">
					 <Street>4 Privet Drive</Street>
					 <City>Little Whinging</City>
					 <State>Surrey</State>
					 <PostalCode>CR3</PostalCode>
					 <Country
							 isoCountryCode="GB">82</Country>
			 </PostalAddress>
	 </Contact>
	 <IdReference domain="taxPrefix" identifier="GB" />
	 <IdReference domain="taxNumber" identifier="2f3207092f5e" />
</InvoicePartner>

Sample cXML for Bill-to Address

The following fields are required for bill-to address invoices:

  • Customer Primary Name
  • Customer Bill-To Address
Note
  • addressID - numeric ID of the address in Coupa.
  • Search first tries to find by addressID if given; if no match on ID, it tries to perform a strict match based on the contents of the PostalAddress element.
<InvoicePartner>
	 <Contact role="billTo" addressID="1">
			 <Name xml:lang="en">Minh Tran</Name>
			 <PostalAddress name="default">
					 <DeliverTo>Minh Tran</DeliverTo>
					 <Street>street</Street>
					 <Street>Suite 300</Street>
					 <City>SS</City>
					 <State>CA</State>
					 <PostalCode>77842</PostalCode>
					 <Country
							 isoCountryCode="US">United States</Country>
			 </PostalAddress>
			 <Email name="default">minh@coupa.com</Email>
			 <Phone name="work">
					 <TelephoneNumber>
							 <CountryCode
									 isoCountryCode="US">1</CountryCode>
							 <AreaOrCityCode>745</AreaOrCityCode>
							 <Number>4466</Number>
					 </TelephoneNumber>
			 </Phone>
	 </Contact>
</InvoicePartner>

Key Ship-To Address Fields in cXML Invoicing

These are optional fields in compliant cXML invoicing.

Key Header Level Fields in cXML Invoicing

Ensure that the below tags are included in any supplier-generated cXML invoices:

Field Name

Status

Invoice Number/Credit Note Number Mandatory
Invoice Date/Credit Note Date Mandatory
Contract Number Optional
PO Number Optional
Currency Mandatory
Delivery Number Optional
Date of Supply (Tax Point) Mandatory. Default to Invoice Date
Payment term Mandatory. Default to payment terms set up for supplier.
Reference Invoice Number Mandatory for Credit Note, not applicable on Invoice
Reference Invoice Date Mandatory for Credit Note, not applicable on Invoice
Credit Reason Mandatory for Credit Note
Supplier Notes Optional (Free form text area)

Key Line Level Fields in cXML Invoicing

Field Name

Status

Line Number

Optional

PO Line

Optional

Description of goods

Mandatory

Quantity

Mandatory

Unit Price

Mandatory

Net Line amount (Qty * Unit Price)

Calculated

Discount/Rebate

Optional

VAT rate(s) applied for applicable line

Percentage or "Exempt"

VAT Amount for applicable line

Mandatory

Key Amount Summary Level Fields in cXML Invoicing

Field Name

Status

Total Taxable Amount (Vat Excluded)

Mandatory

Total Tax/VAT Amount payable

Mandatory. Default to 0

Total Amount (Tax/VAT included)

Mandatory

Full Sample of cXML for UK Compliant Invoice for a PO-Backed Invoice


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cXML SYSTEM "http://xml.cXML.org/schemas/cXML/1.2.020/InvoiceDetail.dtd">
<cXML version="1.0" payloadID="1240598937@SUBDOMAIN.coupahost.com" timestamp="2015-10-15T01:24:51-07:00">
<Header>
<From>
<Credential domain="DUNS">
<Identity>12345</Identity>
</Credential>
</From>
<To>
<Credential domain="DUNS">
<Identity>12345</Identity>
</Credential>
</To>
<Sender>
<Credential domain="DUNS">
<Identity>12345</Identity>
<SharedSecret>compliance</SharedSecret>
</Credential>
<UserAgent>Your Very Own Agent 1.23</UserAgent>
</Sender>
</Header>
<Request deploymentMode="production">
<InvoiceDetailRequest>
			<InvoiceDetailRequestHeader invoiceID="8957494" purpose="standard" operation="new" invoiceDate="2015-10-15T11:45:51-07:00">
				<InvoiceDetailHeaderIndicator/>
				<InvoiceDetailLineIndicator
						isAccountingInLine="yes"/>		 
				<InvoicePartner>
										<Contact role="remitTo" addressID="100">
												<Name xml:lang="en">Greenham1</Name>
										</Contact>
</InvoicePartner>
				<PaymentTerm payInNumberOfDays="30">
				</PaymentTerm>
			</InvoiceDetailRequestHeader>
			<InvoiceDetailOrder>
				<InvoiceDetailOrderInfo>
		<OrderReference>
				<DocumentReference payloadID="286"/>
		</OrderReference>
				</InvoiceDetailOrderInfo>
				<!-- First invoice quantity line. -->
				<InvoiceDetailItem invoiceLineNumber="1" quantity="10">
					<UnitOfMeasure>EA</UnitOfMeasure>
					<UnitPrice>
						<Money currency="GBP">30.05</Money>
					</UnitPrice>
					 
					<InvoiceDetailItemReference lineNumber="1">
						<Description xml:lang="en">	 Coverall Fras Navy 370515 New White Bbes/Zh Heatseal Logos
						</Description>
					</InvoiceDetailItemReference>
						<SubtotalAmount>
						<Money currency="GBP">300.50</Money>
					</SubtotalAmount>
				</InvoiceDetailItem>
			</InvoiceDetailOrder>
			<InvoiceDetailSummary>
					<SubtotalAmount>
					<Money currency="GBP">300.50</Money>
				</SubtotalAmount>
				<Tax>
	 <Money currency="GBP" alternateAmount="10" alternateCurrency="EUR">8</Money>
					<Description xml:lang="en">total tax</Description>
					<TaxDetail purpose="tax" category="Standard Rate"
											 percentageRate="21"
											 taxPointDate="2015-10-15T11:45:51-07:00">
						<TaxableAmount>
							<Money currency="GBP">300.50</Money>
						</TaxableAmount>
						<TaxAmount>
							<Money currency="GBP">46</Money>
						</TaxAmount>
						<TaxLocation xml:lang="en">P5</TaxLocation>
					</TaxDetail>
				</Tax>
				<NetAmount>
					<Money currency="GBP"></Money>
				</NetAmount>
			</InvoiceDetailSummary>
		</InvoiceDetailRequest>
	</Request>
</cXML>