Integration Service
latest
false
Banner background image
Integration Service User Guide
Last updated Apr 24, 2024

Coupa authentication

Before establishing a connection with your Coupa instance, you need to choose the Authentication Type. Currently, the following type is supported:

  • OAuth 2.0 Client Credentials

Creating an OAuth connection

To create an OAuth connection, you have to provide the following credentials:

  • OAuth Scope
  • Client ID
  • Secret
  • Domain

To obtain the necessary credentials, you first have to log in to Coupa as an integrations-enabled administrator to create a Client using a Client credentials Grant Type.

  1. Log in to your Coupa instance and click the Setup button in the upper-right corner of the interface.
  2. Scroll to the Integrations section and click Oauth2/OpenID Connect Clients.
  3. Click Create.

Scopes

The following Scopes are required for any connection and are pre-filled.

By default, the OAuth app must have the following scopes. The rest of the scopes must be filled in manually, depending on your case (see the table below).

  • email
  • login
  • offline_access
  • openid
  • profile
  • core.common.read

Below is a list of objects and their respective scopes.

Note:

Write scopes are necessary only for Create/Update/Delete operations, whereas Read scopes are only needed for ListAll/List/Get operations.

The OAuth app must have, at all times, the same scopes that you manually provide when creating a connection. Otherwise, you encounter issues. For example, if your OAuth App has the email, login, offline_access, openid, profile, core.common.read, and core.supplier.read scopes, then you must make sure to provide only these scopes when you add a Coupa connection.

Object

Scopes

accounts

core.accounting.read

core.accounting.write

approvals

core.approval.read

budget_lines

core.budget.read

cancel_purchaseorders

core.purchase_order.write

close_purchaseorders

core.purchase_order.write

contracts

core.contract.read

contracts/{contractId

core.contract.read

expense_lines

core.expense.read

expense_reports

core.expense.read

inventory_transactions

core.inventory.adjustment.read

core.inventory.adjustment.write

core.inventory.asn.read

core.inventory.balance.read

core.inventory.common.read

core.inventory.consumption.read

core.inventory.consumption.write

core.inventory.receiving.read

core.inventory.receiving.write

core.inventory.transfer.read

core.inventory.transfer.write

invoices

core.invoice.approval.bypass

core.invoice.approval.write

core.invoice.create

core.invoice.delete

core.invoice.read

core.invoice.write

issue_purchaseorders

core.purchase_order.write

items

 

purchase_order_changes

core.purchase_order.read

purchase_order_lines

core.purchase_order.read

purchase_orders

core.purchase_order.read

core.purchase_order.write

quote_requests

 

Requisitions

core.requisition.read

core.requisition.write

Suppliers

core.supplier.read

core.supplier.write

user_groups

core.user_group.read

core.user_group.write

Users

core.user.read

core.user.write

The above steps were originally documented on the Coupa website on November 29, 2021. For updated information and more details regarding Coupa visit the OAuth 2.0 Getting Started with Coupa API page.

  • Creating an OAuth connection
  • Scopes

Was this page helpful?

Get The Help You Need
Learning RPA - Automation Courses
UiPath Community Forum
Uipath Logo White
Trust and Security
© 2005-2024 UiPath. All rights reserved.