# Coupa
Coupa (opens new window) is a business spend management platform. It supports procurement, invoicing, expense, and payment functions for enterprises. Coupa enables users to create and approve procurement processes such as requisitions and invoices. It also has an integrated expense module that allows users to submit expense reports and have them approved directly on Coupa. Traditionally, this information is then synced with ERP systems such as NetSuite, Oracle EBS or SAP for other business functions such as accounting or making payments.
Workato's integration with Coupa helps you to sync this data with any of these ERP systems to support your Procure To Pay, Procure To Order and Expense Management processes. Read on to find out how to set up your connection on Workato to your Coupa instance and how you can leverage on Workato to increase the business value you gain from Coupa through integrations with your other business applications.
# How to connect to Coupa on Workato
Coupa uses authentication based off API keys. API keys are keys you generate to let Coupa know this Workato connection is allowed to work with your information. Generate your API key in your Coupa instance by heading to https://[your-instance-name].coupacloud.com/api_keys or logging into your Coupa account.
API keys can be found under the Setup
=> Integrations
=> API Keys
in the top navigation header in your Coupa instance.
Field | Description |
---|---|
Connection name | Give this Coupa connection a unique name that identifies which API key it is connected to. |
Host | Enter the Coupa URL for your instance. |
API key | Enter your API key which you have generated in your Coupa instance. |
# Working with the Coupa connector
# Objects
In Workato, we grouped Coupa data into objects in our actions and triggers. Objects refer to almost anything Workato currently supports in our Coupa actions or triggers. When selecting an action such as Create Object
, you'll be prompted later on to clarify whether you want to create a purchase order or an invoice. We currently support the following objects in Coupa.
Object | Description |
---|---|
Account | Trigger off, query, create, or update accounts that match your financial structure. |
Address | Trigger off, query, create, or update personal or supplier remit-to address information. |
Approvals | Trigger off or query approvals for requisitions or purchase orders |
Contract | Trigger off, query, create, or update a contract. |
Department | Trigger off, query, create, or update department information. Departments are used to mimic your company's operating structure and to organize groups and users accordingly. |
Exchange rate | Trigger off, query, create, or update exchange rates. |
Expense line | Query or create expense report lines used for expense management. |
Expense report | Trigger off, query, create, or update expense reports used for expense management. |
Integration | Query or create integrations in Coupa. |
Integration error | Query or create integrations errors in Coupa. |
Integration run | Query or create integrations runs in Coupa. |
Integration history record | Query or create integrations history records in Coupa. |
Invoice | Trigger off, query, create, or update invoices in Coupa. |
Inventory Transaction | Trigger off, query, or create inventory transactions. Receipts of goods are the same as inventory transactions in Coupa. |
Item | Trigger off, query, create, or update items not provided by suppliers. If you are looking to work with items provided by suppliers, use the supplier item object. |
Lookup value | Trigger off, query, create, or update lookup values in Coupa. |
Purchase order | Trigger off, query, create, or update purchase order in Coupa. |
Purchase order line | Trigger off, query, or create purchase order lines in Coupa. |
Remit to address | Trigger off, query, create, or update supplier remit-to addresses. This address is used to send payment to suppliers. |
Requisition | Trigger off or query requisitions in Coupa. |
Supplier | Trigger off, query, create, or update suppliers. |
Supplier information | Trigger off, query, create, or update supplier information. |
Supplier item | Trigger off, query, create, or update items provided by suppliers that users can select when creating a requisition. |
Supplier site | Trigger off, query, create, or update supplier sites. |
User | Trigger off, query, create, or update a user. |
This is a non-exhaustive list of Coupa objects and there are still more enhancements to come. Check out the rest of the available Coupa objects on their resource portal (opens new window). If you see an object that we currently don't support, you can use custom actions that allow you to send custom HTTP requests.
# Using Coupa actions and triggers on Workato
The Coupa connector in Workato first requires you to select your action which is a mixture of generic actions as well as commonly used specific actions.
Generic triggers
Generic actions
Specific actions
- Close purchase order
- Cancel purchase order
- Get supplier sites by supplier
- Set integration run status
For generic actions and triggers, you'll be able to select the object you want to work with later on when configuring the step. The required input fields for the object you select will then be dynamically generated. This includes any custom fields that you or your team have defined in Coupa
# Custom object fields in Coupa
The Coupa connector on Workato automatically pulls all custom fields whenever you request for an object. Search for custom fields you or your team have defined in the Add/remove optional fields
drop down.
# Return types in Coupa
Records in Coupa can be large due to its many attributes. Sometimes, retrieving a batch of records may result in time outs or slow performance. The Coupa connector allows you to control the amount of data retrieved per record to combat these cases. This can be done via the input field - Return Type
. As the input field is toggled, the output datatree that describes the record changes as well. We provide 3 different options for return types in Coupa.
Option | Description |
---|---|
Default | This is the default option on the Coupa Connector. All fields and child attributes will be returned |
Shallow | All attributes/fields of the object being called and only the IDs and natural keys of the one-deep associations. |
Limited | Only ID's are returned. This is supported for all commands. |
# List of triggers and actions
Workato currently supports the following Coupa triggers and actions. Find out more details about each by clicking on the links below. You can also navigate to them through the sidebar.