Global Compliant cXML Invoicing - UK
General Compliance Prerequisites
- The applicable country's compliance must be enabled in Coupa.
- The Coupa instance must have an invoice presentation configured for the applicable country.
- Important Step: The supplier must become linked on the Coupa Supplier Portal (CSP) and create a remit-to address on the CSP.
- 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.
addressID
maps to the remit_to_code field on remit-to addresses from the CSP.- Overrides any address info within the
PostalAddress
element.
- Overrides any address info within the
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
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 thePostalAddress
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>