Before you begin, complete Set Up in the Dashboard — you’ll need the Client ID and Client Secret from the API credential you created. SSO with Okta must already be working.
➊ Create the app with the OIN Wizard
Build the integration with Okta’s OIN Integration Wizard:- In your Okta org, open the OIN Integration Wizard and start a new integration.
- For provisioning, choose SCIM 2.0 with OAuth 2.0 authentication (not the bearer-token option) — OAuth is required for the authorization-code + refresh-token flow.
- The wizard asks for a lot of submission and test details (test accounts, descriptions, and similar). You are not submitting this integration to Okta, so enter placeholder values wherever a field doesn’t apply to your setup.
- Continue only until Okta creates the application in your org. You don’t need to finish or submit the integration for review.
Don’t use a custom Create App Integration → SCIM 2.0 app — it only supports a static bearer token, not the OAuth 2.0 flow this integration requires.
➋ Configure OAuth and authenticate
On the app’s Provisioning tab, configure the API integration with your OAuth details:- The Client ID and Client Secret from your API credential.
- The Authorization and Token endpoints for your environment:
Okta uses a redirect URI of the form:
redirect_uri does not match error.
Click Authenticate. Okta redirects you to the Paxos Dashboard to authorize the credential for the scim:read and scim:write scopes. Sign in and approve.
➌ Enter the SCIM base URL
In the next step, set the SCIM base URL for your environment:- Sandbox:
https://api.sandbox.paxos.com/v2/scim - Production:
https://api.paxos.com/v2/scim
➍ Push to the Dashboard (“To App”)
These control what Okta pushes to the Dashboard:
Leave the default attribute mappings. The Dashboard reads only
userName, email, and the name attributes (displayName, givenName, familyName) and ignores anything else, so there’s no need to trim them.
➎ Import from the Dashboard (“To Okta”)
Importing lets Okta discover and match users who already have Dashboard access — useful when enabling SCIM for an existing Organization.- Import Users on; match by email, exact match, with partial-name matching off.
- Okta username format: Email — set the username to the
appuser.emailexpression so imported users match the Dashboard by email. - Auto-confirm exact matches off while testing, on for production.
- Import Groups off — group membership already flows from Okta at sign-in.
➏ Push groups and map roles
- On the Push Groups tab, push a group by name. Choose Create Group if none exists, or Link to an existing one — pushing never creates duplicates.
- Map the group to one or more Roles at Admin > Team Management > Mapping. Membership grants no access until it’s mapped. See SSO Access for how to create mappings.
Okta-Specific Notes
- Suspend ≠ Deactivate. Suspending a user in Okta sends no SCIM signal and has no effect. Use Deactivate or Unassign to remove Dashboard access.
Verify
Test in a non-production environment first:- Sign a test user in via SSO — confirm they appear Active in Admin > Team Management > Users with the expected Roles.
- Run Import Now — confirm the user is matched by email.
- Deactivate the user — confirm their Dashboard access is removed.
Questions? Contact Support.