How to use IBM App Connect with Coupa

Coupa is a cloud-based software that allows you to manage and analyze your employees' spending, from procurement to invoicing and expenses.

Availability:
  • App Connect Enterprise as a Service connector
  • A local connector in a Designer instance of IBM App Connect in containers (Continuous Delivery release)Local connector in containers (Continuous Delivery release)
  • A local connector in a Designer instance of IBM App Connect in containers (Support Cycle 2)Local connector in containers (Long Term Support Cycle-2 release)

Supported product and API versions

To find out which product and API versions this connector supports, see Detailed System Requirements on the IBM Support page.

Connecting to Coupa

Important:

The Coupa endpoint is deprecating API KEY based authentication and migrating to OAuth 2.0 authentication in Release 35 (January 2023). All Coupa Administrators must transition their API integrations to authenticate with Coupa using OAuth 2.0 as soon as possible. For more information, see API Key Deprecation FAQ.

Consider the following changes in App Connect after migration:
  • You must re-create the accounts as API KEY based authentication is deprecated. The new accounts need to be created by using OAuth 2.0 authentication method.
  • The Coupa connector supports only the latest Release 35 (January 2023) from Coupa.
  • There are a few property-level changes (for example, property names having underscore are now replaced with hyphens) made to Coupa APIs. Make sure to re-create and rebuild the flows to avoid broken mappings.
  • You need to add App Connect specific scopes that provide access to specific functions for the API. The following is a list of applicable scopes:
    • core.common.read
    • core.common.write
    • core.expense.read
    • core.expense.write
    • core.inventory.receiving.read
    • core.inventory.receiving.write
    • core.invoice.read
    • core.invoice.write
    • core.purchase_order.read
    • core.purchase_order.write
    • core.supplier.read
    • core.supplier.write
    • core.user.read
    • core.user.write
    • core.inventory.transaction.read
    For more information about scopes, see OAuth 2.0 Getting Started with Coupa API on the Coupa compass page.

Complete the connection fields that you see in the App Connect Designer Connect > Applications and APIs page (previously the Catalog page) or flow editor. If necessary, work with your Coupa administrator to obtain these values.

Coupa connection fields:

Connection field Description
API URL The Coupa REST API URL in the format http://<instance-name>.<coupahost>.com. For example, https://companyname.coupacloud.com.
Client ID The unique identifier of your Coupa client application. Get the client ID from your Coupa account user interface.
Tip: For more information about generating client ID, see OAuth 2.0 Getting Started with Coupa API on the Coupa compass page.
Client secret The client secret of your Coupa client application. Get the client secret from your Coupa account user interface.
Tip: For more information about generating client secret, see OAuth 2.0 Getting Started with Coupa API on the Coupa compass page.

To obtain the connection values for Coupa, see Obtaining connection values for Coupa.

To connect to a Coupa endpoint from the App Connect Designer Applications and APIs page for the first time, expand Coupa, then click Connect. For more information, see Managing accounts.

General considerations

Before you use App Connect Designer with Coupa, take note of the following considerations:

  • (General consideration) You can see lists of the trigger events and actions that are available on the Applications and APIs page of the App Connect Designer.

    For some applications, the events and actions depend on the environment and whether the connector supports configurable events and dynamic discovery of actions. If the application supports configurable events, you see a Show more configurable events link under the events list. If the application supports dynamic discovery of actions, you see a Show more link under the actions list.

  • (General consideration) If you are using multiple accounts for an application, the set of fields that is displayed when you select an action for that application can vary for different accounts. In the flow editor, some applications always provide a curated set of static fields for an action. Other applications use dynamic discovery to retrieve the set of fields that are configured on the instance that you are connected to. For example, if you have two accounts for two instances of an application, the first account might use settings that are ready for immediate use. However, the second account might be configured with extra custom fields.

Events and actions

Coupa events

These events are for changes in this application that trigger a flow to start completing the actions in the flow.

Show more configurable events: Events that are shown by default are pre-configured by using optimized connectivity. More items are available after you configure events that can trigger a flow by polling this application for new or updated objects.

Coupa actions

Your flow completes these actions on this application.

Object Action Description
Addresses Create address Creates an address in Coupa
Retrieve addresses Retrieves addresses from Coupa
Update address Updates an address in Coupa
Exchange rates Create exchange rate Creates an exchange rate in Coupa
Retrieve exchange rates Retrieves details of exchange rates in Coupa
Update exchange rate Updates an exchange rate in Coupa
Expense reports Create expense report Creates an expense report
Retrieve expense reports Retrieves details of expense reports from Coupa
Update expense report Updates an expense report in Coupa
Inventory transactions Create inventory transaction Creates an inventory transaction in Coupa
Retrieve inventory transactions Retrieves details of inventory transactions from Coupa
Invoices Create invoice Creates an invoice in Coupa
Retrieve invoices Retrieves details of invoices from Coupa
Update invoice Updates an invoice in Coupa
Lookup values Create lookup value Creates a lookup value in Coupa
Retrieve lookup values Retrieves lookup values from Coupa
Update lookup value Updates a lookup value in Coupa
Purchase orders Retrieve purchase orders Retrieves details of purchase orders from Coupa
Remit-to addresses Create remit-to address Creates a remit-to address in Coupa
Retrieve remit-to addresses Retrieves remit-to addresses from Coupa
Update remit-to address Updates a remit-to address in Coupa
Suppliers Create supplier Creates a supplier in Coupa
Retrieve suppliers Retrieves details of suppliers from Coupa
Update supplier Updates a supplier's details in Coupa
Users Create user Creates a user in Coupa
Retrieve users Retrieves details of Coupa users
Update user Updates a user's details in Coupa

Examples

Dashboard tile for a template that uses Coupa

Use templates to quickly create flows for Coupa

Learn how to use App Connect templates to quickly create flows that perform actions on Coupa. For example, open Discover, and then search for Coupa.

Dashboard tile for a template that uses Coupa
Coupa flow in detailed view

Use IBM® App Connect to build flows that integrate with Coupa.

Read the blog in the IBM Community to learn how to create a supplier and invoice in Coupa for each purchase order retrieved from IBM Maximo®. Click Read the blog to go to the blog.