Concur Invoice

Version

Concur Invoice QuickStart Guide: Manually Creating an Invoice from an Existing Vendor (3 min) Adding Distributions to an Invoice (2 min) Creating a Recurring Invoice (3 min) Assigning a New Invoice Owner: Assigning a Purchase Order to an Invoice (3 min) Reviewing, Sending Back & Approving Invoices. Amount on the invoice. InvoiceNumber: string-Invoice Number. Maximum 50 characters. InvoiceId: string-Unique identifier of the invoice in SAP Concur. This can be used to get additional invoice information from other APIs. This is the same as paymentRequestID in other Invoice APIs. Maximum 20 characters. NotesToSupplier: string. Concur Invoice is the main invoice system used across the organization to handle invoices and credit card payments. It's controlled mainly by the head office but is being widely used. Concur Invoice guarantees we have a place to view all transactions and administrate company cards, hence making sure financial transactions are kept streamlined.

3.0

Retrieve an Invoice

Parameters

NameTypeFormatDescription
idstringpathRequired Invoice ID.

Create a New Invoice

Payload

Update an Invoice

Payload

Schema

Payment Request

NameTypeFormatDescription
AmountWithoutVatstring-The net amount of the invoice (excluding VAT).
BuyerCostCenterstring-The company defined center responsible for the Invoice.
CheckNumberstring-Check number of the payment made to the vendor.
CompanyBillToAddressCodestring-The code which identifies the company location to which the vendor billed the invoice.
CompanyShipToAddressCodestring-The code which identifies the company location to which the vendor shipped items listed in the invoice.
CountryCodestring-Required The country code.
CurrencyCodestring-The 3-letter ISO 4217 currency code for the invoice currency. Examples: USD - US dollars; BRL - Brazilian real; CAD - Canadian dollar; CHF - Swiss franc; EUR - Euro; GBO - Pound sterling; HKD - Hong Kong dollar; INR - Indian rupee; MXN - Mexican peso; NOK - Norwegian krone; SEK - Swedish krona.
Custom1 through Custom24string-The details from the Custom fields. These may not have data, depending on configuration.
DataSourcestring-A code which indicates the method used to created the Invoice. Use GET /invoice/localizeddata to translate the code into text.
DeliverySlipNumberstring-The delivery slip number associated with receiving receipt.
Descriptionstring-User entered description of the Invoice.
DiscountPercentagestring-The discount from the supplier if the discount terms are met.
DiscountTermsstring-The NET discount terms with a supplier when discounts apply.
EmployeeEmailAddressstring-The email address of the employee to whom the invoice should be assigned. Not evaluated if EmployeeLoginId or EmployeeId match an employee. This value is required if none of the following are provided: LedgerCode; EmployeeLoginId, EmployeeId; PurchaseOrderNumber; ExternalPolicyId.
EmployeeIdstring-The company ID of the employee to whom the invoice should be assigned. Has precedence over EmployeeEmail; not evaluated if EmployeeLoginId matches an employee. This value is required if none of the following are provided: LedgerCode; EmployeeLoginId; EmployeeEmail; PurchaseOrderNumber; ExternalPolicyId.
EmployeeLoginIdstring-The login ID of the employee to whom the invoice should be assigned. Has precedence over EmployeeId and EmployeeEmail. This value is required if none of the following are provided: LedgerCode; EmployeeId; EmployeeEmail; PurchaseOrderNumber; ExternalPolicyId.
ExternalPolicyIdstring-The external policy ID of the Invoice. This value is required if none of the following are provided: LedgerCode; EmployeeLoginId, EmployeeId; EmployeeEmail; PurchaseOrderNumber.
InvoiceAmountstring-Required User-entered value representing the total invoice amount, used to calculate amount remaining on the line item page.
InvoiceDatestring-The date the vendor issued the Invoice.
InvoiceNumberstring-The Invoice Number from the vendor for the Invoice.
InvoiceReceivedDatestring-The date on which the invoice was received.
IsEmergencyCheckRunstring-Is an emergency check run required (Y/N).
IsInvoiceConfirmedboolean-Indicates if the Invoice is confirmed or in a different status Supported values: true, false
LedgerCodestring-A code which indicates which company journal the Invoice is assigned to. Use GET /invoice/localizeddata to obtain valid codes. This value is required if none of the following are provided: EmployeeLoginId; EmployeeId; EmployeeEmail; PurchaseOrderNumber; ExternalPolicyId.
LineItemsarrayLineItemThe details of the Core Payment Request Line Item Identity Fields.
Namestring-Required The Invoice name.
NotesToVendorstring-Information from the customer to the vendor for special requests or handling for the ordered good or service.
OB10BuyerIdstring-A unique buyer account on the OB10 network.
OB10TransactionIdstring-Unique Identifier for the Invoice transaction (generated by OB10).
OrgUnit1string-The details from the Organization Unit fields. These may not have data, depending on configuration.
OrgUnit2string-The details from the Organization Unit fields. These may not have data, depending on configuration.
OrgUnit3string-The details from the Organization Unit fields. These may not have data, depending on configuration.
OrgUnit4string-The details from the Organization Unit fields. These may not have data, depending on configuration.
OrgUnit5string-The details from the Organization Unit fields. These may not have data, depending on configuration.
OrgUnit6string-The details from the Organization Unit fields. These may not have data, depending on configuration.
PaymentAdjustmentNotesstring-Notes to the vendor regarding the amount paid (underpayment due to damages, for example).
PaymentAmountstring-Represents the amount of the payment that will be/has been made for the Invoice.
PaymentDueDatestring-The date the vendor needs to be paid by.
PaymentTermsDaysstring-This number, along with type of payment terms (example: NET), determine when the invoice is expected to be paid.
ProvincialTaxIdstring-The Vendor Provincial Tax ID.
PurchaseOrderNumberstring-The ID of the Purchase Order to which the Invoice should be matched. This value is required if none of the following are provided: LedgerCode; EmployeeLoginId, EmployeeId, EmployeeEmail, ExternalPolicyId.
ReceiptConfirmationTypestring-A code which indicates the receipt confirmation type for this Invoice (Invoice Confirmation, for example). Use GET /invoice/localizeddata to translate the code into text.
ShippingAmountstring-The value for the Shipping Amount header field.
TaxAmountstring-The value for the Tax Amount header field.
VatAmountOnestring-The amount of VAT included in the invoice total (first of two VAT amount fields available).
VatAmountTwostring-The amount of VAT included in the invoice total (second of two VAT amount fields available).
VatRateOnestring-The VAT rate applied to the net invoice total (should relate to the first VAT amount field).
VatRateTwostring-The VAT rate applied to the net invoice total (should relate to the second VAT amount field).
VendorRemitToIdentifierobjectVendorRemitToIdentifierRequired Used to identify the vendor location for payment remittance. At a minimum, the VendorCode or the combination of (VendorName, Address1, and PostalCode) are required. Use of as many fields as possible is encouraged to ensure a single vendor can be identified. If more than one vendor matches the information provided, the Invoice creation attempt will fail.
VendorShipFromAddressCodestring-The code which identifies the location from which the vendor shipped items listed in the invoice.
VendorTaxIdstring-The Vendor Tax ID.
Concur Invoice

LineItem

NameTypeFormatDescription
AllocationsarrayAllocationThe details of the Invoice allocation fields.
AmountWithoutVatstring-The net amount of the line item (excluding VAT).
Custom1 through Custom20string-The details from the Custom fields. These may not have data, depending on configuration.
Descriptionstring-Brief overview of the good or service ordered.
ExpenseTypeCodestring-A code which indicates the Expense Type for the Line Item.
ItemCodestring-Represents the item code (the unique code a vendor assigns to a good or code a vendor assigns to a good or service to identify it).
MatchedPurchaseOrderReceiptsarrayMatchedPurchaseOrderReceiptThe details of the Matched Purchase Order Receipts Identity Fields (if any).
PurchaseOrderNumberstring-Purchase Order that is associated to the Line Item .
Quantitystring-Total number of goods or services ordered.
ShipFromPostalCodestring-The postal code the good or service was shipped from.
ShipToPostalCodestring-The postal code the good or service will be shipped to.
SupplierPartIdstring-The unique identifier provided by the supplier that is associated with the good or service.
Taxstring-The tax associated with the line item.
TotalPricestring-The total amount of the line item.
UnitOfMeasurestring-The code for the measurement unit used to quantify the good or service. Use GET /invoice/localizeddata to look up codes and descriptions.
UnitPricestring-The cost for a single unit of the line item good or service.
VatAmountstring-The amount of VAT included in the line item total.
VatRatestring-The VAT rate applied to the net line item total.

Allocation

NameTypeFormatDescription
Custom1 through Custom7string-The details from the Custom fields. These may not have data, depending on configuration.
Custom8string-A value that can be applied to a custom field 8 that is part of the allocation form.
Custom9string-A value that can be applied to a custom field 9 that is part of the allocation form.
Custom10string-A value that can be applied to a custom field 10 that is part of the allocation form.
Custom11 through Custom20string-The details from the Custom fields. These may not have data, depending on configuration.
Percentagestring-Required The percentage of the Request Line Item that the individual allocation record. All Allocations associated to a given Line Item should add up to 100.

MatchedPurchaseOrderReceipt

NameTypeFormatDescription
GoodsReceiptNumberstring-The identifier of the purchase order goods receipt number to which the Invoice line item is matched.

VendorRemitToIdentifier

NameTypeFormatDescription
Address1string-Line 1 of the street address.
AddressCodestring-The code which identifies a particular vendor location.
Namestring-The name of the vendor.
PostalCodestring-The postal / zip code.
VendorCodestring-The code which identifies a particular vendor.
  • Schema
  • Definitions

Overview

SAP Concur partners with external payment providers for processing invoice payments. These payment providers are listed on the App Center and can integrate with the Invoice product by using the Invoice Pay APIs. Payment providers can get a list of all the payments authorized to be processed by them, and send back status of those payments.

Limitations: This API is only available for use by payment partners who will be processing invoice payments. This API can accept a maximum of 10,000 requests per minute across all payment providers. This API is available only in the North America Data Center.

Process Flow

Products and Editions

  • Concur Invoice Professional Edition
  • Concur Invoice Standard Edition

Scope Usage

NameDescriptionEndpoint
invoice.providerpayment.writeRead access to pending payments, and write access to payment statusGET,POST

Dependencies

This API can only be used with SAP Concur clients who have purchased Concur Invoice.

Access Token Usage

This API supports only Company access tokens.

Obtaining payments

Payment providers can use this endpoint to get a list of payments.

  • This method will return all payments with a status PENDING_RETRIEVAL and payment method PAVPVD. After an invoice is approved and extracted it will be converted into a payment with status PENDING_RETRIEVAL.
  • It returns a maximum of 500 records at a time. In order to ensure that all payments are retrieved, call this method until you receive an empty payment in the response.
  • The payment provider will need to acknowledge that payments were received, using Updating a Payment With Status and updating the status of the payment to any status other than PENDING_RETRIEVAL.

Request

URI

Template
Parameters
NameTypeFormatDescription
invoiceIdstring-Optional: Gets specific payment info along with erpDocumentNumber.

Headers

Payload

None.

Response

Status Codes

Headers

  • concur-correlationid is a SAP Concur specific custom header used for technical support in the form of a RFC 4122 A Universally Unique IDentifier (UUID) URN Namespace

Payload

Example

Request

Response

Updating a Payment With Status

Payment providers can use this endpoint to provide updates to the status of payments.

Request

URI

Template

Parameters

NameTypeFormatDescription
paymentIdstring-Required The identifier of the payment to update.

Headers

Payload

Response

Status Codes

Headers

  • concur-correlationid is a SAP Concur specific custom header used for technical support in the form of a RFC 4122 A Universally Unique IDentifier (UUID) URN Namespace

Payload

Example

Concur Invoice

Request

Response

Schema

Payments

NameTypeFormatDescription
paymentsarrayPaymentArray of payments.

Payment

NameTypeFormatDescription
invoicesarrayInvoiceArray of invoices that need to be batched in a payment.
paymentDueDatestringYYYY-MM-DDThe date by which the payment should be made.
paymentIDstring-Unique identifier of the payment in SAP Concur. Maximum 36 characters.
paymentMethodstring-The value is always PAYPVD which means that the client wants to pay using a payment provider. Maximum 15 characters.
totalAmountobjectAmountThis amount needs to be paid to the vendor.
vendorobjectVendorVendor requesting the payment.

Invoice

NameTypeFormatDescription
invoiceAmountobjectAmountAmount on the invoice.
invoiceNumberstring-Invoice Number. Maximum 50 characters.
invoiceIdstring-Unique identifier of the invoice in SAP Concur. This can be used to get additional invoice information from other APIs. This is the same as paymentRequestID in other Invoice APIs. Maximum 20 characters.
notesToSupplierstring-Notes to the supplier contain remittance information that the buyer wants to provide to the supplier. Maximum 500 characters.
paymentAmountobjectAmountPayment amount on the invoice.
erpDocumentNumberstring-ErpDocumentNumber of that invoice.

Vendor

NameTypeFormatDescription
buyerAccountNumberstring-Buyer Account Number. Maximum 50 characters.
vendorCodestring-Vendor Code. Maximum 32 characters.
vendorNamestring-Vendor Name. Maximum 255 characters.
addressLine1string-Vendor Address line 1. Maximum 255 characters.
addressLine2string-Vendor Address line 2. Maximum 255 characters.
addressLine3string-Vendor Address line 3. Maximum 255 characters.
citystring-Vendor Address City. Maximum 255 characters.
statestring-Vendor Address State. Maximum 10 characters.
countryCodestring-Vendor Address Country Code. Maximum 2 characters.
countryNamestring-Vendor Address Country Name. Maximum 64 characters.
postalCodestring-Vendor Address Postal Code. Maximum 20 characters.
vendorAddrCodestring-Vendor Address Code. Maximum 64 characters.
emailstring-Email Address. Maximum 255 characters.
firstNamestring-First Name. Maximum 255 characters.
lastNamestring-Last Name. Maximum 255 characters.
phoneNumberstring-Phone Number. Maximum 25 characters.

Amount

NameTypeFormatDescription
amountstring-Amount. Maximum 20 characters.
currencystring-Currency Code. Maximum 3 characters.

Payment Update

NameTypeFormatDescription
providerReferencestring-Unique identifier of the payment in the payment provider’s system. This will be used for internal troubleshooting. Maximum 100 characters.
statusstringPayment Update StatusRequired Used to depict success, error or any other intermediate state, defined by SAP Concur.
statusMessagestring-Payment provider description of the status. Providers can supply any message. Maximum 255 characters.
paymentAdjustmentNotesstring-Payment adjustment notes sent by the payment provider. Maximum 255 characters.
statusDatestringYYYY-MM-DDRequired The date that the payment provider recorded this status change.
paymentInitiationDatestringYYYY-MM-DDThe date the payment was initiated.
paymentSettlementDatestringYYYY-MM-DDThe date the payment will be in the payees account.
thirdPartyPaymentIdentifierstring-Check number if the payment was done via check or trace number for ACH payments. Maximum 255 characters.
paymentMethodstringPayment Provider MethodRequired if the status is PAID, CHECK_PROCESSED, or CARD_SETTLED Payment method used by the payment provider.
paidAmountobjectAmountRequired if the status is PAID, CHECK_PROCESSED, or CARD_SETTLED Amount paid by the payment provider.

Payment Update Result

NameTypeFormatDescription
createdDatestringYYYY-MM-DDThe date the payment was created.
lastModifiedDatestringYYYY-MM-DDThe date the payment was last modified.
providerReferencestring-Unique identifier of the payment in the payment provider’s system. Maximum 100 characters.
statusstringPayment Update StatusRequired Used to depict success, error or any other intermediate state, defined by SAP Concur.
statusMessagestring-Payment provider description of the status. Providers can supply any message. Maximum 255 characters.
paymentAdjustmentNotesstring-Payment adjustment notes sent by the payment provider. Maximum 255 characters.
statusDatestringYYYY-MM-DDRequired The date that the payment provider recorded this status change.
paymentInitiationDatestringYYYY-MM-DDThe date the payment was initiated.
paymentSettlementDatestringYYYY-MM-DDThe date the payment will be in the payees account.
thirdPartyPaymentIdentifierstring-Check number if the payment was done via check or trace number for ACH payments. Maximum 255 characters.
paymentMethodstringPayment Provider MethodRequired if the status is PAID, CHECK_PROCESSED, or CARD_SETTLED Payment method used by the payment provider.
paidAmountobjectAmountRequired if the status is PAID, CHECK_PROCESSED, or CARD_SETTLED Amount paid by the payment provider.

Concur Invoice

Errors

NameTypeFormatDescription
errorsarrayErrorAn array of errors.

Error

Concur Invoice Reviews

NameTypeFormatDescription
errorCodestring-Required Machine readable code associated with the error.
errorMessagestring-Required Human readable message associated with the error.

Definitions

Payment Update Status

ValueDescriptionStatus available in the Payment Confirmation Extract
PENDING_RETRIEVALNot yet retrieved by the payment providerNot available
RETRIEVEDRetrieved by the payment providerNot available
PROCESSINGPayment is being processed by the payment providerNot available
REJECTEDPayment was rejected by the payment providerNot available
RETURNEDPayment was returned by the bankNot available
CANCELEDPayment was canceledFAILED
CHECK_PRINTEDCheck was printedNot available
CHECK_MAILEDCheck was mailedNot available
CHECK_PROCESSEDCheck was processedPAID
CHECK_VOIDEDCheck was voidedVOID
PAIDPayment was successfully madePAID
CARD_EMAIL_SENTEmail with card information sent to vendorNot available
CARD_AUTHORIZEDCard was authorized by the merchantNot available
CARD_SETTLEDCard was settled by vendorPAID

Concur Invoice Management

Payment Provider Method

Concur Invoice Review

ValueDescription
ACHACH payment
CHECKCheck payment
WIREWire payment
CARDVirtual Card payment
OTHERAny other payment method