Skip to main content

Overview

The System User role is designed for machine-to-machine API integrations. When you create API keys and authenticate via POST /auth/system-login, your requests run under this role. System Users have a focused permission set covering the core O2C (order-to-cash) lifecycle — they can ingest data, manage contracts, trigger invoicing, and read financial records, but they cannot perform destructive administrative operations (e.g. deleting plans, managing other users, or purging organisations).

Permission Summary by Domain

What System Users CANNOT Do

  • Create, update, or delete billing plans (full plan management)
  • Create, update, or delete users, including other system users
  • Create or delete SKU groups
  • Delete customers (only supported via AdminAccess for safety)
  • Manage invoice templates
  • Manage email templates
  • Manage workflows, schedules, or filters
  • Access organisation/user administration features

Authenticating as a System User

Step 1 — Generate credentials (Admin UI or API):
Response includes clientKey and clientSecret. Step 2 — Exchange for a JWT:
Response:
Step 3 — Use the token:
Tokens expire after a short TTL. Use POST /auth/refresh with your refreshToken to obtain a new access token without re-authenticating.

Permission Errors

If a System User calls an endpoint that requires a policy action they don’t have, the API returns:
HTTP 403 — Insufficient policy permissions. Each endpoint in this reference includes a SystemUser accessible note listing the required policy actions.