---
title: How to manage white-label accounts and users with the Partner API
description: Shows how a white-label partner creates customer accounts, users, bank accounts and Peppol identifiers through the Partner API, and the rules that apply.
---

[Skip to content](https://knowledge.qvalia.com/white-label-accounts-and-users#main-content)

- [English](https://knowledge.qvalia.com/white-label-accounts-and-users)
- [Svenska](https://knowledge.qvalia.com/sv/konton-och-anvandare-for-white-label-via-partner-api)

English

Show submenu for translations

[![Qvalia Logo New Blue transparent.png\]](https://knowledge.qvalia.com/hs-fs/hubfs/Qvalia%20Logo%20New%20Blue%20transparent.png?height=24&name=Qvalia%20Logo%20New%20Blue%20transparent.png)](https://qvalia.com/)

Open main navigation

Close main navigation

- - [English](https://knowledge.qvalia.com/white-label-accounts-and-users)
    - [Svenska](https://knowledge.qvalia.com/sv/konton-och-anvandare-for-white-label-via-partner-api)

  English
  
  Show submenu for translations
- [Go to qvalia.com](https://qvalia.com/pricing/)

[Go to qvalia.com](https://qvalia.com/pricing/)

 How can we help you?

- There are no suggestions because the search field is empty.

1. [Knowledge base](https://knowledge.qvalia.com/?hsLang=en)
2. [Partner](https://knowledge.qvalia.com/partner?hsLang=en)

# How to manage white-label accounts and users with the Partner API

## All customer accounts and users in the white-label portal are managed through the Qvalia Partner API. Before go-live, your development team should be familiar with it and have the account provisioning flow working in the test environment.

- Each of your customers needs its own Qvalia account.
- Every person who will use the portal must exist as a user on the customer's account, whichever login method you choose.
- The user's email address is the login key.
- API integration must be active on every customer account, otherwise you cannot manage the account through the API.

The full reference is in the [Partner API documentation](https://api.qvalia.io/api-documentation/apis/partner-api/partner-api).

### Environments and authentication

 Environment

 Base URL

 Test

`https://api-test.qvalia.com`

 Production

`https://api.qvalia.com`

Requests are authenticated with an API key in the `Authorization` header, or with a bearer JWT obtained from the Authentication API. API credentials are for server-to-server calls only and must never be exposed in a browser.

### Operations you will use

All paths are under `/partner/{partnerRegNo}`.

 Resource

 Operations

 Path

 Accounts

 List, create, read, update

`/account`, `/account/{accountRegNo}`

 Users

 List, create, read, update, delete

`/account/{accountRegNo}/user[/{userEmail}]`

 Bank accounts

 List, create, read, update, delete

`/account/{accountRegNo}/bankaccount[/{bankAccount}]`

 Peppol identifiers

 List, read, add or update (PUT), delete

`/account/{accountRegNo}/peppol[/{peppolId}]`

 Peppol lookup

 Look up any Peppol participant

`/peppol/lookup/{peppolId}`

### Create a customer account

Create the account with `POST /partner/{partnerRegNo}/account`. Enable API integration so you can manage the account through the API, plus the features the customer should have:

`{`

`  "accountRegNo": "FI01234567",`

`  "name": "Customer Oy",`

`  "address": "Esimerkkikatu 1",`

`  "postalCode": "00100",`

`  "city": "Helsinki",`

`  "country": "FI",`

`  "currency": "EUR",`

`  "appFeatures": {`

`    "apiIntegration": { "active": true },`

`    "invoiceManagement": { "active": true },`

`    "orderManagement": { "active": true }`

`  }`

`}`

If your users sign in through a token (JWT) forward from your application, also add the `whiteLabel` feature with your partner alias to `appFeatures`. The alias must match the `wl` parameter in the login request. It is not needed if your users use the Qvalia portal login.

`"whiteLabel": { "active": true, "wl_partners": [" "] }`

### Add users to each account

Create users with `POST /partner/{partnerRegNo}/account/{accountRegNo}/user`. With Qvalia portal login, the email address is the username. With token login, it must be identical to the `email` parameter in the login request, otherwise the sign-in is rejected.

`{`

`  "email": "user@customer.example",`

`  "name": "Example User",`

`  "language": "fi",`

`  "privilege": "admin"`

`}`

### Things to know

- `accountRegNo`, `name`, `address`, `postalCode` and `country` (ISO 3166 alpha-2) are required. The `accountRegNo` is the value used as `account` in the login request.
- API integration must be active on every child account, otherwise you cannot manage it through the API.
- Users require `email`, `name` and `language` (`en`, `sv` or `fi`), with the privilege `viewer`, `user` or `admin`.
- Keep users in sync with your own system: add, update and remove them through the API as people join or leave.
- In a white-label setup, the bank account marked `is_default` is used on invoices the customer creates. Only one default is allowed.
- Peppol identifiers are created and updated with a full-object `PUT`. Read the current object first, then send the changed version.
- Register CreditNote whenever you register Invoice.
- Rate limits apply per account. On `429`, wait for the number of seconds in `Retry-After` before retrying.
- Errors use a common envelope. Branch on the stable `type` code, for example `E_VALIDATION`, not on the message text. See [API error codes and responses](https://knowledge.qvalia.com/api-error-codes-and-responses?hsLang=en).

### If it still does not work

- Check that API integration is active on the account and that you call the right environment with the credentials for that environment.
- Have your partner registration number, the `accountRegNo`, the endpoint, the time of the call and the `type` code from the error response ready.
- Contact your Qvalia partner manager, or reach Qvalia Support via [qvalia.com/contact-support](https://qvalia.com/contact-support).

- [General](https://knowledge.qvalia.com/general?hsLang=en#main-content)

    - [Peppol](https://knowledge.qvalia.com/general?hsLang=en#peppol)
- [Partner](https://knowledge.qvalia.com/partner?hsLang=en)
- [Logs and monitoring](https://knowledge.qvalia.com/logs-and-monitoring?hsLang=en)
- [Integrations](https://knowledge.qvalia.com/integrations?hsLang=en)
- [Invoice management](https://knowledge.qvalia.com/invoice-management?hsLang=en)
- [Order management](https://knowledge.qvalia.com/order-management?hsLang=en)
- [Data management](https://knowledge.qvalia.com/data-management?hsLang=en)
- [Security and compliance](https://knowledge.qvalia.com/security-and-compliance?hsLang=en)
- [Account](https://knowledge.qvalia.com/account?hsLang=en)
- [Troubleshooting](https://knowledge.qvalia.com/troubleshooting?hsLang=en)

[![Chill listening crop-3](https://knowledge.qvalia.com/hs-fs/hubfs/Qvalia%20Logo%20New%20Blue%20transparent.png?width=107&height=24&name=Qvalia%20Logo%20New%20Blue%20transparent.png "Chill listening crop-3")](https://qvalia.com/)

Knowledge base

Copyright © 2025, Qvalia