Qwist Account Verification API
The Account Verification API from Qwist — 2 operation(s) for account verification.
The Account Verification API from Qwist — 2 operation(s) for account verification.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/qwist:qwist-account-verification-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: nrich Account Verification API
version: '2.10'
contact:
name: Qwist GmbH
email: partnersupport@qwist.com
url: https://qwist.com
description: This is the reference for Qwist's nrich API
servers:
- url: https://api.nrich.qwist.cloud
description: Staging environment
tags:
- name: Account Verification
paths:
/onetime/account-verification:
post:
summary: Account Verification
operationId: createAccountVerification
description: Start the onetime account verification flow.
tags:
- Account Verification
security:
- client_auth: []
- user_auth: []
requestBody:
required: true
content:
application/json:
schema:
required:
- redirect_uri
- name
allOf:
- $ref: '#/paths/~1ongoing~1sync/post/requestBody/content/application~1json/schema/allOf/0'
- type: object
properties:
name:
type: string
example: Max Mustermann
description: The alleged name of the account holder.
account:
$ref: '#/paths/~1uploads/post/requestBody/content/application~1json/schema/properties/accounts/items/properties/iban'
description: The IBAN of the account to be verified. If this value is provided the bank- and account-selection is automatically performed by the Widget, so that the user only has to take care of the authentication and authorization when connecting the account. If this value is left empty the user will be presented with a search-screen to select a bank institute and eventually a bank account to be used for the verification.
account_types:
type: array
default: []
items:
type: string
enum:
- Giro account
- Savings account
- Daily savings account
- Credit card
- Loan account
- PayPal
- Depot
- Unknown
description: The account type.
example: Giro account
description: Restricts which account types users can select during the connection flow. Use this to limit account selection to specific types (e.g., only Giro accounts). When empty, all account types are available for selection.
readout:
$ref: '#/paths/~1rest~1accesses~1{access-id}~1syncs/post/requestBody/content/application~1json/schema/properties/scope/allOf/0'
default: []
description: Defines entries that shall be available for a readout after the account verification is done. Depending on the values provided the account information and transaction history of the verified account can be retrieved.
responses:
'201':
$ref: '#/paths/~1ongoing~1sync/post/responses/201'
'400':
$ref: '#/paths/~1rest~1user/put/responses/400'
'401':
$ref: '#/paths/~1catalog/get/responses/401'
/rest/account-verifications/{account-verification-id}:
get:
summary: Get Account Verification Receipt
operationId: getAccountVerificationReceipt
description: Retrieve detailed information about the result of an account verification process. This verification receipt will give insights into the bank account connected by the user and how good the provided person name does match with the account-holder names.
tags:
- Account Verification
security:
- user_auth: []
parameters:
- name: account-verification-id
in: path
required: true
description: The ID of the initiation request.
schema:
type: string
format: UUID
example: 9054f9b1-0d19-4788-a990-b493d5723419
description: ID of the account verification flow.
responses:
'200':
description: The result of an account verification.
content:
application/json:
schema:
type: object
properties:
id:
$ref: '#/paths/~1rest~1account-verifications~1{account-verification-id}/get/parameters/0/schema'
provided:
type: object
description: The name and account information provided on flow initiation.
properties:
name:
type: string
example: Max Mustermann
description: Name provided by the user to be checked against the account-holder names.
iban:
$ref: '#/paths/~1uploads/post/requestBody/content/application~1json/schema/properties/accounts/items/properties/iban'
description: IBAN to be used for bank pre-selection. This will skip the corresponding selection screen on the Widget.
required:
- name
matched:
type: object
description: The matched account holder name.
properties:
name:
type: string
example: Max Mustermann
description: Account-holder name that most closely matches the name provided by the user. In case of a joint account the bank might return more than one account-holder name in which case the best match is used.
affinity:
type: string
enum:
- VERY_HIGH
- HIGH
- MEDIUM
- LOW
description: "The affinity is an indicator on how closely the name provided by the user matches the account-holder name provided by the bank. The value is:\n * `VERY_HIGH` if the names literally match (case insensitive)\n * `HIGH` if there is a significant overlap with only minor deviations (e.g. \"Doe, John\"\n instead of \"John Doe\" or \"Hans Muller\" instead of \"Hans Müller\")\n * `MEDIUM` if there is only some similarity between the names (e.g. \"Helge Braun\" vs.\n \"Stefan Braun\")\n * `LOW` if the names don't match at all.\nFor most applications the affinity `VERY_HIGH` and `HIGH` sufficiently ensure the similarity of the names."
required:
- name
- affinity
account:
type: object
description: The base information of the connected account.
properties:
name:
type: string
example: FlexiCash
description: Name of the account.
type:
$ref: '#/paths/~1onetime~1account-verification/post/requestBody/content/application~1json/schema/allOf/1/properties/account_types/items'
owners:
type: array
items:
type: string
example: Max Mustermann, Erika Mustermann
description: List of names of all the account holders.
iban:
$ref: '#/paths/~1uploads/post/requestBody/content/application~1json/schema/properties/accounts/items/properties/iban'
currency:
$ref: '#/paths/~1rest~1loans~1{loan-id}/get/responses/200/content/application~1json/schema/properties/currency'
required:
- name
- type
- owners
- currency
required:
- id
- provided
- matched
- account
'400':
$ref: '#/paths/~1rest~1user/put/responses/400'
'401':
$ref: '#/paths/~1catalog/get/responses/401'
'404':
$ref: '#/paths/~1auth~1token/post/responses/404'
components:
securitySchemes:
user_auth:
type: http
description: 'In order to access any information belonging to a user, a client has to authenticate with a token linking itself to the user. This token is called an `access token` and contains information on the client, the user and the level of access the client has to the users data. In order to authenticate using such an access token the HTTP header `Authorization` is set to `Bearer <access token>`. The `access token` is formatted
as a JSON Web Token according to [RFC7519](https://tools.ietf.org/html/rfc7519)
Such an `access token` is either returned when
* exchanging an authorization code after a successful OAuth login flow
* logging in with the user''s credentials
* exchanging a refresh token, which is returned at either of the aforementioned points
**Authentication errors**
In case of an authentication error a HTTP code 401 response is returned containing further
details on the kind of error in the `WWW-Authenticate` header.
In addition to the below listed scope the flags are used for simple boolean permissions.
| Flag | Description |
| -- | -- |
| submit_payments | Allow submission of payments to bank server |
| offline | Access finX API when the user is not present |
| create_user | Allow creation of finX accounts |
**Example**
The string `"accounts=rw submit_payments"` is URL-encoded and passed as the URL
parameter `scope`.'
scheme: bearer
bearerFormat: JWT
x-bearerInfoFunc: app.decode_token
x-scopes:
accounts=rw: Modify accounts
accounts=ro: Read accounts
balance=ro: Read account balance
securities=ro: Read securities
transactions=ro: Read transactions
transactions=rw: Modify transactions
payments=ro: Read payments
payments=rw: Create/modify payments
submit_payments: Submit payment to service provider
user=ro: Read user information
user=rw: Modify user information
client_auth:
x-basicInfoFunc: app.basic_auth
type: http
scheme: basic
description: Client authentication is performed via [HTTP Basic Auth](https://en.wikipedia.org/wiki/Basic_access_authentication) with client ID as username and client secret as password.
x-provenance:
method: searched
source: https://docs.qwist.com/reference
harvested: '2026-10-21'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://docs.qwist.com/reference/addprovideraccess.md
- https://docs.qwist.com/reference/categorizetransactions.md
- https://docs.qwist.com/reference/createaccesstoken.md
- https://docs.qwist.com/reference/createaccountverification.md
- https://docs.qwist.com/reference/createcontract.md
- https://docs.qwist.com/reference/createincomereport.md
- https://docs.qwist.com/reference/createmanualsync.md
- https://docs.qwist.com/reference/createnotification.md
- https://docs.qwist.com/reference/createonetimeaccess.md
- https://docs.qwist.com/reference/createonetimeincomereport.md
- https://docs.qwist.com/reference/createonetimepayment.md
- https://docs.qwist.com/reference/createonetimeriskreport.md
- https://docs.qwist.com/reference/createongoingaccess.md
- https://docs.qwist.com/reference/createongoingpayment.md
- https://docs.qwist.com/reference/createongoingriskreport.md
- https://docs.qwist.com/reference/createpayment.md
- https://docs.qwist.com/reference/createpaymentfromaccount.md
- https://docs.qwist.com/reference/createqwistlink.md
- https://docs.qwist.com/reference/createriskreport.md
- https://docs.qwist.com/reference/createsync.md
- https://docs.qwist.com/reference/createupload.md
- https://docs.qwist.com/reference/createuser.md
- https://docs.qwist.com/reference/createverifyandpay.md
- https://docs.qwist.com/reference/deleteaccount.md
- https://docs.qwist.com/reference/deleteclientuser.md
- https://docs.qwist.com/reference/deletecontract.md
- https://docs.qwist.com/reference/deletenotification.md
- https://docs.qwist.com/reference/deletepayment.md
- https://docs.qwist.com/reference/deleteprovideraccess.md
- https://docs.qwist.com/reference/deleteuser.md
- https://docs.qwist.com/reference/getaccount.md
- https://docs.qwist.com/reference/getaccountbalance.md
- https://docs.qwist.com/reference/getaccountverificationreceipt.md
- https://docs.qwist.com/reference/getandgenerateincomereport.md
- https://docs.qwist.com/reference/getartifact.md
- https://docs.qwist.com/reference/getcategories.md
- https://docs.qwist.com/reference/getcategoriesforaccess.md
- https://docs.qwist.com/reference/getcategoriesforaccount.md
- https://docs.qwist.com/reference/getcategorytree.md
- https://docs.qwist.com/reference/getcontract.md
- https://docs.qwist.com/reference/getcredential.md
- https://docs.qwist.com/reference/getincomereport.md
- https://docs.qwist.com/reference/getinsurance.md
- https://docs.qwist.com/reference/getloan.md
- https://docs.qwist.com/reference/getnotification.md
- https://docs.qwist.com/reference/getpaymentchallenge.md
- https://docs.qwist.com/reference/getpaymentchallengeofaccount.md
- https://docs.qwist.com/reference/getpaymentinitstatus.md
- https://docs.qwist.com/reference/getpaymentinitstatusofaccount.md
- https://docs.qwist.com/reference/getpaymentofaccount.md
- https://docs.qwist.com/reference/getpaymentpartners.md
- https://docs.qwist.com/reference/getpaymentpartnersforaccess.md
- https://docs.qwist.com/reference/getpaymentpartnersforaccount.md
- https://docs.qwist.com/reference/getpaymentreceipt.md
- https://docs.qwist.com/reference/getprovideraccess.md
- https://docs.qwist.com/reference/getriskreport.md
- https://docs.qwist.com/reference/getsecurityofaccount.md
- https://docs.qwist.com/reference/getsyncchallenge.md
- https://docs.qwist.com/reference/getsyncstatus.md
- https://docs.qwist.com/reference/gettimeline.md
- https://docs.qwist.com/reference/gettimelineforaccess.md
- https://docs.qwist.com/reference/gettimelineforaccount.md
- https://docs.qwist.com/reference/gettransaction.md
- https://docs.qwist.com/reference/gettransactionofaccount.md
- https://docs.qwist.com/reference/getuploadstatus.md
- https://docs.qwist.com/reference/getuser.md
- https://docs.qwist.com/reference/getversion.md
- https://docs.qwist.com/reference/initpayment.md
- https://docs.qwist.com/reference/initpaymentofaccount.md
- https://docs.qwist.com/reference/listaccounts.md
- https://docs.qwist.com/reference/listaccountsofaccess.md
- https://docs.qwist.com/reference/listbanks.md
- https://docs.qwist.com/reference/listcatalog.md
- https://docs.qwist.com/reference/listcatalogclientauth.md
- https://docs.qwist.com/reference/listclientusers.md
- https://docs.qwist.com/reference/listcontracts.md
- https://docs.qwist.com/reference/listcontractsofaccess.md
- https://docs.qwist.com/reference/listcontractsofaccount.md
- https://docs.qwist.com/reference/listcredentials.md
- https://docs.qwist.com/reference/listinsurances.md
- https://docs.qwist.com/reference/listinsurancesofaccess.md
- https://docs.qwist.com/reference/listloans.md
- https://docs.qwist.com/reference/listloansofaccess.md
- https://docs.qwist.com/reference/listnotifications.md
- https://docs.qwist.com/reference/listpaymentchallenges.md
- https://docs.qwist.com/reference/listpaymentchallengesofaccount.md
- https://docs.qwist.com/reference/listpayments.md
- https://docs.qwist.com/reference/listpaymentsofaccount.md
- https://docs.qwist.com/reference/listprovideraccesses.md
- https://docs.qwist.com/reference/listsecurities.md
- https://docs.qwist.com/reference/listsecuritiesofaccount.md
- https://docs.qwist.com/reference/listservices.md
- https://docs.qwist.com/reference/listsyncchallenges.md
- https://docs.qwist.com/reference/listtransactions.md
- https://docs.qwist.com/reference/listtransactionsofaccount.md
- https://docs.qwist.com/reference/patchcredential.md
- https://docs.qwist.com/reference/removepinfromprovideraccess.md
- https://docs.qwist.com/reference/replacenotifications.md
- https://docs.qwist.com/reference/revokeoauthtoken.md
- https://docs.qwist.com/reference/solvepaymentchallenge.md
- https://docs.qwist.com/reference/solvepaymentchallengeofaccount.md
- https://docs.qwist.com/reference/solvesyncchallenge.md
- https://docs.qwist.com/reference/updatecontract.md
- https://docs.qwist.com/reference/updatenotification.md
- https://docs.qwist.com/reference/updateuser.md
merge:
pages: 105
deduped: 1107
conflicts_kept_first: 0