Configure Tungsten AP Essentials for use with Coupa AP

Before you can use the Coupa integration with Tungsten AP Essentials, you must configure these settings in Tungsten AP Essentials:

  • Extraction settings

  • Target system

  • Master data

This topic refers to the Coupa AP integration, which is the most current version of the Coupa integration and uses the latest version of the Coupa API.

Extraction settings

You must edit the extraction settings for each document type you use and make sure the required AP Essentials fields are specified for the corresponding fields in Coupa. If a document type you use lacks a required field, you must add a custom field using the field type name specified in the tables below. Likewise, the Coupa system must use the required fields specified in the tables below.

Tungsten AP Essentials field type name Coupa field Note
Header fields
SupplierName Supplier record of the same name

Required.

You do not need to specify a supplier name field in the document type. The supplier name is taken from master data.

InvoiceNumber Invoice number

Required.

InvoiceDate Invoice Date
Invoice due date The due date is calculated in Coupa based on the net payment terms.
InvoiceCurrency Currency
OriginalInvoiceNumber Original Invoice Number

OriginalInvoiceNumber and OriginalInvoiceDate are custom fields that you must add to the document type, if you want to process credit notes. When adding OriginalInvoiceDate, make sure you set the Type to Date.

If you do not add the OriginalInvoiceNumber and OriginalInvoiceDate fields to the document type and an invoice is marked as a credit note, the fields are mapped as noted below:

Tungsten AP Essentials field Coupa field
InvoiceNumber + "_credit" Invoice number
InvoiceNumber Original Invoice Number
InvoiceDate Original Invoice Date

OriginalInvoiceDate Original Invoice Date
Requester Requester Requester is an optional custom field that you can add to the document type. You can use the Lookup names setting or the Users setting to import invoice requesters from Coupa as master data. Then you can connect the Requester field to the master data to provide autocomplete functionality in Tungsten AP Essentials.
InvoiceTaxRate1, InvoiceTaxRate2, InvoiceTaxRate3 etc. Tax Rate (Summary)
InvoiceTaxAmount1, InvoiceTaxAmount2, InvoiceTaxAmount3 etc. Tax Amount (Summary)
InvoiceTotalVatIncludedAmount Invoice net amount
InvoiceTotalVatAmount Invoice tax value
DeliveryCost Shipping amount
ContractNumber Contract field (line items)
ChartOfAccount Chart of accounts If this field is empty, or does not exist, the value is copied from the Default chart of accounts setting.
BillingAccount

If LIT_BillingAccount is empty in the line-item table, the billing account is taken from this field. If this field is empty, or does not exist, the value is copied from the Default billing account setting.

InvoiceOrderNumber If LIT_OrderNumber is empty in the line-item table, PO numbers are copied from this field.
Line-item fields
LIT_RowIdentifier Purchase order line number
LIT_ArticleName Line description Required.
LIT_DeliveredQuantity Quantity Required for lines whose Type is set to Qty in Coupa.
LIT_UnitPriceAmount Unit price Required for lines whose Type is set to Qty in Coupa.
LIT_DeliveredQuantityUnitCode Unit of measure Required for lines whose Type is set to Qty in Coupa.
LIT_VatExcludedAmount Line-item total Required for lines whose Type is set to Amt in Coupa.
LIT_VATRate1, LIT_VATRate2, LIT_VATRate3 etc. Tax Rate (line item) If multiple tax rates are found on the invoice, they are mapped to separate tax lines in Coupa.
LIT_VATAmount1, LIT_VATAmount2, LIT_VATAmount3 etc. Tax Amount (line item) If multiple tax amounts are found on the invoice, they are mapped to separate tax lines in Coupa.
LIT_BillingAccount Billing account
LIT_OrderNumber Purchase order number

Target system settings

Adjust the target system settings in Tungsten AP Essentials.

  1. In Admin Center, navigate to the Target system view and click EDIT.
  2. Select Coupa AP and click Configuration.
  3. Specify the settings in the view that appears.

    If you use the Purchase order service, you must specify a Coupa API filter.

  4. Click TEST to test the connection settings.

    Make corrections if necessary.

  5. Click OK to confirm your settings and return to the Target system view.
  6. Click SAVE.

Enforce line level taxation

In Coupa, you can disable tax fields on the header level using the Enforce line level taxation setting. If you use the Enforce line level taxation setting in Coupa, you should also select Enforce line level taxation in the target system settings in Tungsten AP Essentials. You can also select Calculate missing tax rates to ensure any missing rates are calculated inserted in the line-item table.

This table depicts various outcomes of enforcing line level taxation:

Invoice field layout Taxes Result in Coupa
Header fields only Single or multiple tax rates and tax amounts are specified in header fields on the invoice.

An invoice with one line item containing the tax information is exported to Coupa.

Header fields and one line item Single or multiple tax rates and tax amounts are specified in header fields on the invoice. Tax information from the header is used to set the tax amounts in the line item.
Header fields and multiple line items Tax information is specified in header fields and line items on the invoice. Tax information from the header is ignored, and the tax information in the line items is lines exported as is.
A single tax rate is specified in the invoice header. Tax information from the header is used to set the tax amounts in each line item.
A single tax amount is specified in the invoice header.

An extra line item is created with the tax amount, but no price. The line-item description is set to "Automatic tax line".

If Calculate missing tax rates is enabled, the tax amount from the header and the calculated tax rate is set on each line item.

A single tax rate and tax amount is specified in the invoice header.

The tax rate is set in every line item. An extra line item is created with the tax amount, but no price. The line-item description is set to "Automatic tax line".

If Calculate missing tax rates is enabled, the tax amount is calculated on each line item. If tax rate is missing in the invoice header, but the tax amount and net amount are specified, the tax rate is also calculated.

Multiple taxes are specified in the invoice header.

An extra line item is created with the tax amount, but no price. The line-item description is set to "Automatic tax line".

If Calculate missing tax rates is enabled, the tax amount is calculated on each line item. If tax rate is missing in the invoice header, but the tax amount and net amount are specified, the tax rate is also calculated.

XSL transformation

If the default output and data templates do not provide the output needed for your Coupa system, you can optionally use custom XSLT to transform output data to your liking. This is useful if you need to automate manual processes, or if you need to add additional information to the output.

Master data

Tungsten AP Essentials automatically imports master data from Coupa and uses the data to suggest and validate field values during verification.

This table shows the correlation between Tungsten AP Essentials master data and Coupa data.

Tungsten AP Essentials field (type name) Coupa field
Supplier master data
Name

name

or

display-name

SupplierNumber

number

or

number - supplier-sites.code

Description Dy default, the supplier description field is empty. However, you can map the supplier description field to supplier information in Coupa.
Street primary-address.street1
PostalCode primary-address.postal_code
City primary-address.city
CountryName primary-address.country.name
PaymentTerm payment-term.code
State primary-address.state
Blocked Always set to false. Only active suppliers are imported.
TaxRegistrationNumber

TaxRegistrationNumber is mapped to the first field with a value in the order listed below.

  1. supplier-addresses.supplier-address[0].tax-registrations.tax-registration[0].number
  2. remit-to-addresses.remit-to-address[0].vat-number
  3. tax-id
TelephoneNumber

+ primary-contact.phone-work.country-code + ( primary-contact.phone-work.area-code ) + primary-contact.phone-work.number

Country and area codes are optional.

Example: +382 (02)12345 or +382 12345

FaxNumber

+ primary-contact.phone-fax.country-code + ( primary-contact.phone-fax.area-code ) + primary-contact.phone-fax.number

Country and area codes are optional.

Example: +382 (02)12345 or +382 12345

Location supplier-sites.code
PaymentMethod payment-method
Supplier bank master data
BankName remit-to-addresses.name
SupplierNumber supplier.number
BankNumber

remit-to-addresses.vat-number

or

remit-to-addresses.local-tax-number

AccountNumber remit-to-addresses.remit-to-code
Currency master data
Code code
Name code
Active Always set to true.
Contract master data
Name supplier.number - name

Example: 123456 - ACME Inc

Value number
Description name
Active Always set to true. Only published contracts from active suppliers are imported.
Units of measure master data
Name name
Value code
Purchase order master data (header fields)
OrderNumber po-number
SupplierNumber supplier.number
SupplierName

supplier.name

or

supplier.display-name

CurrencyCode

order-lines[0].currency.code

The currency code from the first order line is used.

DateCreated created-at
ContactName

requisition-header.requested-by.email

or

ship-to-user.email

StatusText status
Description n/a
Purchase order master data (line-item fields)
OrderLineNumber

order-lines.line-num

ArticleNumber

order-lines.supp-aux-part-num

or

order-lines. source-part-num

ArticleDescription order-lines.description
CategoryDescription order-lines.commodity.name
Quantity order-lines.quantity or 0.0
Unit order-lines.uom.code
UnitPrice order-lines.price or 0.0
RowTotalAmountVatExcluded order-lines.total or 0.0
StatusText order-lines.status
InvoicedQuantity order-lines.invoiced or 0.0
DeliveredQuantity order-lines.received or 0.0
IsDeliveryRequired Always set to false.
PriceUnit Always set to 1.
DeliveryDate1 order-lines.need-by-date
User master data
Name fullname
Value email
Active active

Master data for lookups

In Coupa, "lookups" are similar to field suggestions (autocomplete) in Tungsten AP Essentials. They are used for fields in Coupa that require users to choose from a list of options. A lookup consists of a lookup name and a number of options, each called a lookup value.

Lookup values are grouped into named sets. Each named set that you specify (semicolon separated) in the Name based lookups setting is imported as master data with the same name. You can connect fields to master data to provide autocomplete functionality in Tungsten AP Essentials. In this manner, you can utilize Coupa lookups while processing documents in Tungsten AP Essentials.

When importing master data for lookups, the field mappings differ depending on whether the lookup is for the Requester field or general fields.

Lookup values master data
Tungsten AP Essentials field (type name) Coupa field
Name external-ref-code or name
Value name or external-ref-num
Description description
Active active

Import purchase orders by status

By default, AP Essentials imports purchase orders with the issued status, and purchase order lines with these statuses:

  • cancelled

  • closed

  • created

  • currency_hold

  • draft

  • expensed

  • partially_received

  • received

  • soft_closed_for_invoicing

  • soft_closed_for_receiving

You can customize the statuses of the purchase orders and purchase order lines you want to import in the Target system view.

  1. Navigate to the Target system view and click EDIT.
  2. In the PO statuses to synchronize setting, specify the statuses of the purchase orders that you want to import. Separate each status with a comma.
  3. In the PO line statuses to synchronize setting, specify the statuses of the purchase order lines that you want to import. Separate each status with a comma.
  4. Save your settings.

    The next time purchase orders are synchronized, only purchase orders and lines with the statuses you specified are imported.

Map the supplier description field

By default, when AP Essentials imports supplier master data from Coupa, the supplier description field is empty. However, you can map the supplier description field to supplier fields in Coupa, so additional information is available during verification.

  1. Navigate to the Target system view and click EDIT.
  2. In the Supplier description mapping setting, specify a field name from the Coupa supplier entity enclosed in braces. Example: {payment-method}
    • You can specify more than one supplier field from Coupa. Enclose each field name in its own set of braces.

    • Any text not enclosed in braces is treated as static text.

    • Use dots to designate nested fields. Example: {primary-address.country.name}

    • Currently, only fields containing, text, numbers, dates, or boolean values are supported.

    Assume you enter the following example in the Supplier description mapping setting.

    Supplier status: {status}; Primary country: {primary-address.country.name}

    Continuing with the example above, the value of the description field for a supplier could look like this example:

    Supplier status: Active; Primary country: USA

  3. Save your settings.

    The next time supplier master data is synchronized, the supplier description field is populated according to the settings you specified.

Specify a default chart of accounts and default billing account template

Normally, you specify a default chart of accounts and default billing account in their respective settings in the Target system view . Then, if the chart of accounts field or billing account field is empty or does not exist on an invoice during verification, the default values are used automatically. There may be cases, however, when you want to use different accounts on the buyer level. In this case, you can click Buyer-specific settings and use the view that appears to specify default values for individual buyers. Specifying buyer-specific settings is optional, and you do not have to specify default values for all buyers.

When Tungsten AP Essentials determines the chart of accounts and billing account values, field values entered during verification take the highest precedence. If the fields are missing or empty, Tungsten AP Essentials uses the default values specified on the buyer level. If nothing is specified on the buyer level, Tungsten AP Essentials uses the default values specified in the target system settings. In other words, the order of precedence is: verified field values, default buyer settings, default target system settings.

Map remit-to addresses

Suppliers in Coupa can be associated with multiple remit-to addresses. You can save time by having users specify the corresponding remit-to code while verifying invoices in Tungsten AP Essentials, rather than adjusting it later in Coupa. Tungsten AP Essentials lets you accomplish this using custom field. During verification, a user can specify a code in the custom field which is then mapped to a remit-to address in Coupa. Behind the scenes, Tungsten AP Essentials maps the custom field to the Remit-To Code in Coupa.

To set up the custom field and target systems settings in Tungsten AP Essentials for this purpose:

  1. Add a custom field to the document type.

    For demonstration purposes, specify "RemitCode" as the Type name of the field.

  2. Select Remit-to code in the target system settings.
  3. Click Use remit-to code (Buyer-specific settings) and use the view that appears to specify which buyers should utilize the mapping.
  4. Specify the field type name of the custom field in the Remit-to code mapping setting.

    Continuing with the example above, specify "RemitCode" in the Remit-to code mapping setting.

    After you save your settings, you are ready to specify remit-to addresses during verification. When a user verifies an invoice in Tungsten AP Essentials, the value from the RemitCode field is used to designate the appropriate remit-to address in Coupa.

    Note: You can use any field type name to specify whatever value you need to match the reference in Coupa. For example, if your document type already captures a field that corresponds to the reference in Coupa, you can specify the existing field, instead of creating a new custom field. You can also use the Buyer-specific settings to map different fields for individual buyers

  5. Optionally select the Use default remit-to code setting if all, or most, of your suppliers only have one remit-to address.

    When Use default remit-to code is selected, if you do not specify a remit-to code during invoice verification, and there is only one remit-to code for the current supplier, that remit-to code is used when the invoice is sent to Coupa.

Map requesters

Documents in Coupa can be associated with a requester. You can save time by having users specify the requester while verifying invoices in Tungsten AP Essentials, rather than adjusting it later in Coupa. Tungsten AP Essentials lets you accomplish this using custom field which is populated with users from Coupa. During verification, a user can specify a user in the custom field which is then mapped to the requester in Coupa. Behind the scenes, Tungsten AP Essentials maps the custom field to the Requester in Coupa.

To set up the custom field and target systems settings in Tungsten AP Essentials for this purpose:

  1. Add a custom field to the document type.

    Give the field an appropriate name, such as "Requester," and specify "Requester" as the Type name of the field.

  2. Select Use master data to suggest field values and choose User from the box.
  3. Select Synchronize users in the target system settings.
  4. Specify the field type name of the custom field in the in the Requester mapping setting.

    For this example, specify "Requester" in the Requester mapping setting to map the field to the requester field in Coupa.

    After you save your settings, setup is complete. When verifying documents, users imported from Coupa are available for selection in the requester field. When the document is sent to Coupa, the value from the requester field is mapped to the requester in Coupa.

    Note that requesters in Coupa can be specified using lookups or contact name and email. The Coupa integration supports both cases.

Troubleshooting

  • If you encounter problems with delta synchronization of master data, try disabling delta synchronization in the target system settings. After synchronization is complete, you can enable delta synchronization again.

  • In Coupa, make sure all of the suppliers have supplier numbers.

  • If you receive audit trail messages about problems with delta synchronization on purchase orders, enable Filtered synchronization to exclude suppliers and purchase orders that are meant to be integrated with Tungsten AP Essentials.

  • If you receive 403 errors, make sure these Coupa scopes are specified in the target system settings.

    • core.accounting.read

    • core.supplier.read

    • core.contract.read

    • core.invoice.read

    • core.invoice.write

    • core.purchase_order.read

    • core.common.read

    • core.user.read

    The lack of some scopes, such as core.invoice.write, can lead to this issue.

  • If you encounter problems importing master data due to invalid characters, such as line breaks, use the Replace invalid characters setting to specify a replacement character, which will substitute those invalid characters and allow for a smoother import process.