Coupa

Finance OAuth

Read and create requisitions, purchase orders, invoices and suppliers in Coupa from any Windmill script, flow or app.

Set up in 2 steps

1

Connect from the Resources page

Open Resources, click Add a resource/API and find Coupa under Others. Enter your instance name and the client id and secret from Coupa's OAuth2/OIDC Clients page, then save.

2

Run your first script

Fork any script below and read before writing anything.

Scripts

Building blocks, if none of the projects above fit. Fork one, run it, or call it as a step inside your own flow.

Resource type

coupa — the shape of the credential every script on this page expects.

View raw schema →
FieldTypeRequiredWhat it is
instance_urlstringYesBase URL of your Coupa instance, e.g. https://yourcompany.coupahost.com (or .coupacloud.com for partner/demo instances). Filled automatically when you connect via Windmill's OAuth. No trailing slash.
tokenstringYesOAuth access token, written and refreshed automatically by Windmill's OAuth (client credentials) connection.

Questions

Where do the client credentials come from?

Your Coupa instance, under Setup then OAuth2/OIDC Clients. Create a client with the client credentials grant and the scopes your scripts need.

Why does it ask for an instance name?

Coupa gives each customer its own host, so both the token endpoint and every API call are built from it. instance_url is filled in for you when you connect.

Is my token stored on the hub?

Never. It lives only in your own Windmill workspace, encrypted at rest.