Skip to main content
Registering an OAuth 2.0 client allows Pleo to identify your application, apply the correct redirect and scope configuration, and issue client credentials (Client ID and Client Secret) securely. This how-to covers advanced registration, where you manage redirects and the access-token lifecycle yourself. For a simpler setup using Postman, see the Postman guide (coming soon).

Prerequisites

Before you begin:
  • You have access to Pleo’s Staging environment.
  • Pleo has asked you to complete the Developer Partner Registration form.
  • Pleo will use the information you provide below to register your application in Staging.

Steps

1. Provide Registration Data

You provide information to Pleo in the following categories.

Human-Readable Information

Do not use Pleo branding or claim your app is a Pleo client.
This information is shown to end users during authorisation:
ParameterDescription
Client NameYour application’s brand name.
Client URILink to your app homepage or integration announcement page.
LogoSquare image (1:1 ratio) representing your application.
Terms of ServiceLink to the legal agreement governing use of your app.
Privacy PolicyLink explaining how user data is collected and processed.
ContactsEmail addresses for people responsible for the application.

Pleo-Specific Information

This information allows Pleo to integrate your application into the product:
ParameterDescription
Initiation URIWhere users start connecting your app to Pleo.
Settings URIWhere users manage your app’s settings from within Pleo.

Technical Information

This information is required to establish a secure OAuth 2.0 flow:
ParameterDescription
Redirect URIsEndpoint(s) Pleo redirects users to after authentication. Must be HTTPS in production.
ScopesAPI scopes your application requests access to.
PKCE SupportRequired for public clients to mitigate authorisation-code attacks. Exceptions are allowed on request.
Subject Type Preference(Optional) Default resource type your application operates on.
For local development, loopback redirect URIs (localhost, 127.0.0.1, [::1]) may use HTTP.

Available API Scopes

Each Pleo API defines its own set of scopes. Your application can only access APIs and perform actions that correspond to the scopes you request during registration. Refer to the scope reference for each API: Ensure you request all scopes required for your integration. Missing scopes will prevent your application from accessing the corresponding API endpoints.

Example Registration

ParameterValue
Client NameExample Client
Client URIhttps://client.example/
Terms of Servicehttps://client.example/legal/tos.html
Privacy Policyhttps://client.example/legal/privacy.pdf
Contactsname.surname@example.io
Redirect URIshttps://client.example/callback
Scopesusers:read users:write
PKCE SupportSupported
Subject Type PreferenceNone
Verify all URLs and scopes before submitting. Incorrect redirect URIs or missing scopes commonly cause authorisation failures.

2. Receive Client Credentials

Do not embed the Client Secret in frontend code or distribute it. Storing secrets on client devices is not supported by Pleo.
After registration, Pleo shares your credentials securely via 1Password:
CredentialDescriptionExample Value
Client IDPublic identifier used to request authorisation and identify your app.12a3b456-78c9-0d12-34e5-f678ab9bcd0e
Client SecretConfidential secret used to authenticate your app. Must be stored securely on a server and never exposed to end users.12345a6bcd789ef012abcd34ef5a6b

Result

After completing these steps:
  • Your application is registered as an OAuth 2.0 client in Pleo’s Staging environment.
  • You have received a Client ID and Client Secret.
  • No users are authorised.
  • No access tokens exist.
  • API calls are not possible at this stage.

What Comes Next?

Direct Users to Authorisation Endpoint

Continue in the OAuth 2.0 Setup Workflow Guide by directing users to the authorisation endpoint.