Invoices API (/invoices)
Overview
The URL to access invoices is: https://{your_instance_name}/api/invoices
As of Release 29, Coupa has enhanced the invoicing API to be fully functional, on parity with other invoice buyer channels. For more information about this update, see Extended Invoicing API Coverage for Invoice Creation .
See Integration Best Practices for more info.
Actions
The Invoices API allows you to:
Verb |
Path |
Action |
Description |
---|---|---|---|
PUT |
|
abandon |
Abandon invoice |
PUT |
|
Add approver |
Manually add an approver for an invoice |
PUT |
|
Bypass approvals |
Bypass approvals Allows a 3rd-party system on the customers side to get an invoice approved and paid as quickly as possible. |
PUT |
|
Bypass current approval |
Bypass current approval Allows a 3rd-party system on the customers side to get an invoice approved from the current approver to get an invoice paid as quickly as possible. |
PUT |
|
Dispute |
Dispute invoice Allows moving an invoice to disputed status via a system call. Moving an invoice to disputed notifies the supplier that there is an issue with an invoice. The dispute request can include a dispute reason in the payload as follows:
This requires that INCORRECT_QUANTITY is a valid and active dispute reason. |
PUT |
|
Flip to advance ship notice |
Flip invoice to Advance Ship Notice |
GET |
|
Retrieve image scan |
Retrieve/Download image scan |
PUT |
|
Image scan |
Update image scan attachment or image scan URL |
GET |
|
Index |
Query invoices |
PUT |
|
Remove approval |
Remove an approver who was manually added |
PUT |
|
Restart approvals |
Restart approvals Allows a 3rd-party system on the customers side to clear the current approval chain and regenerate an new approval chain for an invoice that has had modifications. |
GET |
|
retrieve_clearance_document |
Retrieve/Download clearance document |
GET |
|
retrieve_legal_invoice_pdf |
Download/retrieve the legal invoice PDF. This action allows the PDF attachment to be exported by API call. |
PUT |
|
Revalidate tolerances |
Revalidate tolerances Allows a 3rd-party system on the customers side to resubmit an invoice that had issues. |
GET |
|
Show |
Show invoice |
PUT |
|
Submit |
Submit draft invoice for approval |
PATCH |
|
Update |
Update invoice |
PUT |
|
Update |
Update invoice Used to updated information on the Invoice using the API |
PUT |
|
Update line accounts |
Update line accounts Used by mobile users to update Invoices |
PUT |
|
Void |
Void an approved invoice This can be used on Invoices only on approved and pending receipt Invoices.
|
PUT |
|
Withdraw dispute |
Withdraw dispute Due to supplier inaction or a mistake on the buyer side a disputed Invoice can be returned to the approval process. |
Elements
Element |
Description |
Req'd |
Unique |
Allowable Value |
In |
Out |
Data Type |
---|---|---|---|---|---|---|---|
abandon-reason |
Abandon reason |
no |
no |
any |
yes |
Reason Insight |
|
account-type |
Chart Of Account Reference |
yes |
yes |
yes |
|||
advance-payment-received-amount |
Amount of advance payment received |
yes |
yes |
decimal(30,4) |
|||
amount-due-less-discount |
Amount due after applying the discount |
any |
yes |
decimal |
|||
approvals |
Approvals |
yes |
|||||
attachments |
yes |
||||||
archive-entity-id |
Archive Entity Id |
yes |
integer |
||||
bill-to-address |
Bill to Address |
yes |
yes |
yes |
|||
buyer_representative_name |
Buyer Representative Name |
yes |
yes |
string(255) |
|||
buyer-tax-registration |
Buyer tax registration |
yes* |
yes |
||||
canceled |
Indicates if transaction has been canceled |
yes |
boolean |
||||
cash-accounting-scheme-reference |
Note if using cash accounting scheme |
yes |
yes |
string(255) |
|||
clearance-document |
Clearance document attachment file name. Accessible via /retrieve_clearance_document |
yes |
string |
||||
comments |
comments |
yes |
yes |
string(255) |
|||
compliant |
Invoice compliance indicator |
yes |
boolean |
||||
confirmation |
Confirmation |
yes |
string(50) |
||||
contract |
Backing contract number |
yes |
yes |
||||
coupa-accelerate-status |
Status indicating whether the invoice has discount payment terms via Static Discounting |
accelerated |
yes |
string(40) |
|||
created-at |
Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ |
yes |
datetime |
||||
created-by |
User who created |
yes |
|||||
credit-note-differences-with-original-invoice |
Credit Note Differences With Original Invoice |
yes |
yes |
decimal(30,4) |
|||
credit-reason |
The reason of creating the credit |
yes |
yes |
string(255) |
|||
currency |
Currency code |
yes |
yes |
Currency |
|||
current-integration-history-records |
Current Integration History Records |
yes |
|||||
customer-accounting-tax-less-discount |
Customer accounting tax after applying the discount |
any |
yes |
decimal |
|||
customs-declaration-date |
Customs Declaration Date |
yes |
yes |
datetime |
|||
customs-declaration-number |
Customs Declaration Number |
yes |
yes |
string(60) |
|||
customs-office |
Customs Office |
yes |
yes |
text |
|||
date-received |
Date Received in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ |
yes |
datetime |
||||
delivery-date |
Date of Supply |
no |
no |
any |
yes |
datetime |
|
destination-country |
Country of destination used for compliance |
yes |
Country |
||||
discount-amount |
Discount Amount provided by supplier |
yes |
yes |
decimal(32,4) |
|||
discount-due-date |
Discount Due Date calculated based on the discount payment terms |
yes |
datetime |
||||
discount-percent |
Discount % |
yes |
yes |
float |
|||
dispute-method |
Dispute Method |
no |
no |
any |
yes |
string(10) |
|
dispute-reasons |
Dispute Reasons |
no |
no |
any |
yes |
||
document-type |
Invoice or Credit Note |
Invoice, Credit Note |
yes |
string(255) |
|||
early-payment-provisions |
Early payment incentives |
yes |
yes |
string(255) |
|||
exchange-rate |
Exchange Rate |
yes |
yes |
decimal(30,9) |
|||
exported |
Indicates if transaction has been exported |
yes |
boolean |
||||
failed-tolerances |
Failed tolerances |
yes |
yes |
||||
folio-number |
Folio Number |
yes |
string(255) |
||||
form-of-payment |
Payment Form |
yes |
string(10) |
||||
gross-total |
Gross Total |
yes |
decimal |
||||
gross-total-less-discount |
Invoice total after applying the discount |
any |
yes |
decimal |
|||
handling-amount |
Handling amount |
yes |
yes |
decimal(32,4) |
|||
id |
Coupa unique identifier |
yes |
integer |
||||
image-scan |
Invoice Image Scan attachment filename |
yes |
string(25) |
||||
image-scan-content-type |
Content type of image scan |
yes |
string(191) |
||||
image-scan-file-name |
File name of the image scan |
yes |
string(255) |
||||
image-scan-file-size |
Size of image scan file in MB |
yes |
string(12) |
||||
image-scan-url |
Invoice Image Scan URL. Must begin with 'http://' or 'https://'. |
yes |
string(255) |
||||
inbound-invoice |
Inbound invoice reference |
yes |
|||||
inbox-name |
Inbox Name |
yes |
string |
||||
internal-note |
Internal Note |
yes |
yes |
text |
|||
invoice-charges |
Invoice charges |
yes |
yes |
||||
invoice-date |
Date of Invoice |
yes |
yes |
yes |
datetime |
||
invoice-from-address |
Invoice from address |
yes* |
yes |
||||
invoice-lines |
Record identifier |
yes |
yes |
||||
invoice-number |
Invoice number |
yes |
yes |
yes |
string(40) |
||
invoice-payment-receipts |
Invoice related payment receipts information |
yes |
Invoice Payment Receipt |
||||
invoice-reference-number |
Invoice Reference Number (IRN) |
yes |
yes |
||||
issuance-place |
Issuance Place |
yes |
string(50) |
||||
last-exported-at |
Date and time transaction was last exported in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ |
yes |
datetime |
||||
late-payment-penalties |
Late Payment Penalties |
yes |
yes |
string(255) |
|||
legal-destination-country |
Legal destination country used for compliance |
See the Compliant Country List . |
yes |
Country |
|||
line-level-taxation |
Flag indicating whether taxes are provided at line level in this invoice |
yes |
yes |
yes |
boolean |
||
lock-version-key |
Lock Version |
yes |
integer |
||||
margin-scheme |
Reason for using margin scheme |
yes |
yes |
string(255) |
|||
misc-amount |
Miscellaneous Amount |
yes |
yes |
decimal(32,4) |
|||
net-due-date |
Net Due Date calculated based on the net payment terms |
yes |
datetime |
||||
net-total-less-discount |
Net total after applying the discount |
any |
yes |
decimal |
|||
origin-country |
Country of origin used for compliance |
yes |
Country |
||||
origin-currency-gross |
Local Currency Gross |
yes* |
yes |
decimal(32,4) |
|||
origin-currency-net |
Local Currency Net |
yes* |
yes |
decimal(32,4) |
|||
original-invoice-date |
Original invoice date required when |
yes** |
yes |
datetime |
|||
original-invoice-number |
Original invoice date required when |
yes** |
yes |
string(40) |
|||
paid |
Paid |
yes |
yes |
boolean |
|||
pay-invoice |
Pay invoice |
yes |
|||||
payment-channel |
How the invoice payment will be handled - ERP (default), Coupa Pay Virtual Card, Coupa Pay Invoice Payment |
no |
no |
any |
yes |
string(40) |
|
payment-date |
Date of payment for invoice |
yes |
yes |
datetime |
|||
payment-method |
Payment Method |
yes |
string(10) |
||||
payment-notes |
Notes included with payment for invoice |
yes |
yes |
text |
|||
payment-order-reference |
Payment Order Reference |
yes |
yes |
string(255) |
|||
payment-term |
Payment term code on invoice |
yes |
yes |
||||
payments |
Payments |
yes |
yes |
||||
pre-payment-date |
Pre-Payment Date |
yes |
yes |
datetime |
|||
reconciliation-lines |
Reconciliation lines |
yes |
Invoice/Reconciliation Line |
||||
remit-to-address |
Remit to Address |
yes |
yes |
yes |
|||
requested-by |
Requester on the invoice |
yes |
|||||
resolution-number |
Resolution Number |
yes |
yes |
string(255) |
|||
reverse-charge-reference |
Reverse Charge Reference |
yes |
yes |
||||
signed-qr-code |
Signed QR Code |
yes |
text |
||||
self-billing-reference |
Self billing reference on the invoice |
yes |
yes |
string(191) |
|||
sender-email |
Sender Email |
yes |
string(255) |
||||
series |
Series |
yes |
string(30) |
||||
ship-from-address |
Ship from address |
yes |
yes |
||||
ship-to-address |
Ship to Address |
yes |
yes |
||||
shipping-amount |
Shipping Amount |
yes |
yes |
decimal(32,4) |
|||
shipping-term |
Shipping term code on invoice |
yes |
|||||
show-tax-information |
Show tax information in the invoice |
yes |
boolean |
||||
status |
Invoice Status. For more information about invoice statuses, see Invoice Progression through Statuses. |
new, ap_hold, draft, on_hold, pending_receipt, rejected, abandoned. disputed. pending_approval, booking_hold, pending_action, approved, voided, processing, invalid, pending_action, payable_adjustment |
yes |
string(50) |
|||
supplier |
Supplier Name or Number |
yes |
yes |
||||
supplier-created |
Supplier created indicator for invoice |
yes |
boolean |
||||
supplier-note |
Note provided by supplier |
yes |
yes |
text |
|||
supplier-remit-to |
Supplier provided remit to address |
yes |
yes |
yes |
|||
supplier-representative-name |
Supplier Representative Name |
yes |
yes |
string(255) |
|||
supplier-tax-registration |
Supplier tax registration |
yes* |
yes |
||||
supplier-total |
Invoice control total |
yes |
decimal |
||||
taggings |
Taggings |
yes |
yes |
||||
tags |
Tag (Deprecated, please use Taggings association to add Tags onto InvoiceHeader) |
yes |
yes |
||||
tax-amount |
Tax amount (not used if tax is provided at line level) |
yes |
yes |
decimal |
|||
tax-amount-engine |
Tax amount calculated by either Coupa Native or External Tax Engine based on configuration |
yes |
decimal |
||||
tax-code |
Tax code (not used if tax is provided at line level) |
yes |
yes |
string(255) |
|||
tax-code-engine |
Tax code returned by External Tax Engine based on configuration |
yes |
|||||
tax-due-to-supplier |
Tax due to the supplier |
yes |
decimal(32,4) |
||||
tax-lines |
Line tax code (not used if tax is provided at header level) |
yes |
yes |
||||
tax-rate |
Tax rate (not used if tax is provided at line level) |
yes |
yes |
float |
|||
tax-rate-engine |
Tax rate returned by External Tax Engine based on configuration |
yes |
|||||
taxes-in-origin-country-currency |
Local Currency Tax |
yes* |
yes |
decimal(32,4) |
|||
tolerance-failures |
Tolerance Failure |
yes |
string(512) |
||||
total-with-taxes |
Total with taxes |
yes |
decimal |
||||
total-taxes-less-discount |
Total taxes after applying the discount |
any |
yes |
decimal |
|||
type-of-receipt |
Type of Receipt |
yes |
string(10) |
||||
type-of-relationship |
Type of Relationship |
yes |
string(10) |
||||
updated-at |
Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ |
yes |
datetime |
||||
updated-by |
User who updated |
yes |
|||||
use-of-invoice |
Use of the Invoice |
yes |
string(10) |
||||
withholding-tax-lines |
Withholding tax lines |
yes |
yes |
||||
withholding-tax-override |
Withholding Tax Override |
yes |
decimal(30,3) |
||||
invoice-reference-number |
Invoice Reference Number (IRN) |
yes |
yes |
string(255) |
|||
supplier-invoice-issuer-name |
Supplier Invoice Issuer Name |
yes |
yes |
string(255) |
|||
supplier-invoice-reviewer-name |
Supplier Invoice Reviewer Name |
yes |
yes |
string(255) |
|||
supplier-payment-collector-name |
Supplier Payment Collector Name |
yes |
yes |
string(255) |
|||
endorsement-on-invoices |
Endorsement On Invoices |
yes |
string(10) |
||||
new-means-of-transport |
New Means Of Transport |
yes |
string(10) |
||||
place-of-issuance |
Place Of Issuance |
yes |
string(100) |
||||
amount-of-advance-payment |
Amount Of Advance Payment |
yes |
yes |
decimal(46,20) |
|||
transaction-uuid |
Transaction UUID |
yes |
string(50) |
||||
transaction-notification-date |
Transaction Notification Date |
yes |
datetime |
||||
content-validation |
Invoice Content Validation Indicator |
yes |
boolean |
||||
invoice-reference-number |
Invoice Reference Number (IRN) |
yes |
yes |
||||
supplier-invoice-issuer-name |
Supplier Invoice Issuer Name |
yes |
yes |
string(255) |
|||
supplier-invoice-reviewer-name |
Supplier Invoice Reviewer Name |
yes |
yes |
string(255) |
|||
supplier-payment-collector-name |
Supplier Payment Collector Name |
yes |
yes |
string(255) |
|||
is-credit-note |
Document Type Credit Note |
yes |
boolean |
||||
requester-email |
Requester Email |
yes |
string |
||||
requester-name |
Requester Fullname |
yes |
string |
||||
requester-lookup-name |
Requester Lookup Name |
yes |
string |
||||
delivery-number |
Delivery Number |
yes |
string(255) |
||||
delivery-date |
Date of Supply |
yes |
datetime |
||||
original-value-of-supply |
Original Value of Supply |
yes |
decimal(46,20) |
||||
correct-value-of-supply |
Correct Value of Supply |
yes |
decimal(46,20) |
||||
original-invoice-date |
Original invoice date used in case of a Credit Note |
yes |
yes |
datetime |
|||
type-of-relationship |
Type of Relationship |
yes |
string(10) |
||||
original-invoice-number |
Original invoice number used in case of a Credit Note |
yes |
yes |
string(40) |
|||
place-of-supply |
Place Of Supply |
yes |
string(255) |
||||
split-payment-mechanism |
Split Payment Mechanism |
yes |
boolean |
||||
endorsement-on-invoices |
Endorsement On Invoices |
yes |
string(10) |
||||
new-means-of-transport |
New Means Of Transport |
yes |
string(10) |
||||
place-of-issuance |
Place Of Issuance |
yes |
string(100) |
||||
signed-qr-code |
Signed QR Code |
yes |
text |
||||
shipping-term |
Shipping term code on invoice |
yes |
|||||
supplier-tax-registration |
yes |
yes |
|||||
buyer-tax-registration |
yes |
yes |
|||||
payment-order-number |
Payment Order Number |
yes |
string |
||||
invoice-issuance-time |
Invoice Issuance Time |
yes |
string(255) |
||||
cash-register-operator |
Cash Register Operator |
yes |
string(255) |
||||
means-of-payment |
Means Of Payment |
yes |
string(255) |
||||
unique-identification-code-of-cash-receipt |
Unique Identification Code Of Cash Receipt |
yes |
string(255) |
||||
security-code-of-issuer |
Security Code Of Issuer |
yes |
string(255) |
||||
state-tax-number |
State Tax ID Number |
yes |
string(255) |
||||
state-tax-number-for-substitute-taxpayer |
State Tax ID Number for Substitute Taxpayer |
yes |
string(255) |
||||
municipal-tax-number |
Municipality Tax ID Number |
yes |
string(255) |
||||
serial-code-of-fiscal-invoice |
Serial Code of Fiscal Invoice |
yes |
string(255) |
||||
verification-code |
Verification Code |
yes |
string(255) |
||||
type-of-document |
Type of Document |
yes |
string(255) |
||||
protocol-number |
Protocol Number |
yes |
string(255) |
||||
nature-of-operation |
Nature of Operation |
yes |
string(255) |
||||
type-of-operation |
Type of Operation |
yes |
string(255) |
||||
freight-type |
Freight Type |
yes |
string(255) |
||||
vehicle-license-plate |
Vehicle License Plate |
yes |
string(255) |
||||
national-enrollment-of-conveyor |
National Enrollment of Conveyor |
yes |
string(255) |
||||
volume-amount |
Volume Amount |
yes |
string(255) |
||||
volume-gross-weight |
Volume Gross Weight |
yes |
string(255) |
||||
volume-liquid-weight |
Volume Liquid Weight |
yes |
string(255) |
||||
volume-brand |
Volume Brand |
yes |
string(255) |
||||
volume-type |
Volume Type |
yes |
string(255) |
||||
volume-numbering |
Volume Numbering |
yes |
string(255) |
||||
payment-agreement-notes |
Payment Agreement Notes |
Fully paid via Prepayment Agreement, Partially paid via Prepayment Agreement, Already paid for a Recurring Agreement, Retain payment per agreement |
yes |
string(255) |
|||
tcs-tax-lines |
yes |
- |
|||||
invoice-from-address |
yes |
yes |
Address |
||||
ship-from-address |
yes |
yes |
Address |
Required fields marked with an asterisk * are additional required fields for compliant invoices. Required fields marked with two asterisks ** are only required when is-credit-note=true
.
Compliant Country List
This list shows which countries are permitted for compliant invoicing. It is not a list of compliant countries Coupa currently supports.
#id |
Code |
Name |
---|---|---|
14 |
AU |
Australia |
15 |
AT |
Austria |
22 |
BE |
Belgium |
31 |
BR |
Brazil |
34 |
BG |
Bulgaria |
39 |
CA |
Canada |
53 |
HR |
Croatia |
55 |
CY |
Cyprus |
56 |
CZ |
Czech Republic |
58 |
DK |
Denmark |
67 |
EE |
Estonia |
72 |
FI |
Finland |
73 |
FR |
France |
79 |
DE |
Germany |
82 |
GB |
United Kingdom |
83 |
GR |
Greece |
96 |
HK |
Hong Kong |
97 |
HU |
Hungary |
98 |
IS |
Iceland |
103 |
IE |
Ireland |
104 |
IL |
Israel |
105 |
IT |
Italy |
108 |
JP |
Japan |
118 |
LV |
Latvia |
123 |
LI |
Liechtenstein |
124 |
LT |
Lithuania |
125 |
LU |
Luxembourg |
133 |
MT |
Malta |
138 |
MX |
Mexico |
141 |
MC |
Monaco |
144 |
MA |
Morocco |
151 |
NL |
Netherlands |
154 |
NZ |
New Zealand |
161 |
NO |
Norway |
171 |
PL |
Poland |
173 |
PT |
Portugal |
175 |
QA |
Qatar |
177 |
RO |
Romania |
183 |
SA |
Saudi Arabia |
187 |
SG |
Singapore |
188 |
SK |
Slovakia |
189 |
SI |
Slovenia |
192 |
ZA |
South Africa |
193 |
ES |
Spain |
204 |
SE |
Sweden |
205 |
CH |
Switzerland |
222 |
AE |
United Arab Emirates |
223 |
US |
United States |
250 |
IM |
Isle Of Man |