Tutorial
Overview
The IBAN-Name Check API by SurePay enables you to verify customer or supplier data. The API performs an instant check on the correctness of your customer and supplier data, such as the name and IBAN combination. Using the API ensures that payments are made to the right creditor, money is collected from the right debtor, and that new customers and suppliers are being validated. Validations can be performed on different levels (e.g. IBAN, name, VAT, companyID) depending on your own business requirements and use case.
The API provides the following standard features:
- Confirmation of the IBAN and name combination: Whether the payee's name and IBAN combination matches the data registered at the bank and to what extend.
- Confirmation on the IBAN validity: Whether the IBAN is active or expired.
- Information about the account: Whether it is an business or private account, and the number of account holders.
Upon request, the API provides the following additional features:
- Confirmation on the company: Whether the IBAN, name, companyID and branch combination matches the data registered at the Chamber of Commerce.
- Confirmation on the VAT: Whether the VAT number matches the company or trade name.
- Confirmation on cross-border IBAN and name combination: Whether the payee's name and IBAN combination matches for international accounts (e.g. FR and IT).
- Information about the Switch Check / Overstapservice: Whether the account has switched to a new bank and the 'switching service' / 'Overstapservice' is active.
- Information about the account age: The age of an account since the date of opening.
The result of the checks are available digitally. They can be directly used in any financial system, for instance your Enterprise Resource Planning (ERP) software or Treasury Management System (TMS). By integrating the IBAN-Name Check API of SurePay into your systems, you make your processes more efficient, safer and reduce the risk of fraud.
Note: This service covers 99.5% of Dutch bank accounts. Besides the Netherlands, SurePay offers cross-border IBAN-Name check services in other countries via scheme partners. For the EU corporate market only checks with IBANs are currently functionally available.
API Partner: SurePay
ABN AMRO partners with SurePay to offer the IBAN-Name Check API. Benefits of consuming the API via ABN AMRO:
- High-quality technical support.
- High-quality functional support on the financial value chain and beyond.
- Clear, consistent, and high-quality documentation / specifications of all APIs.
- Simple, secure, and easy, access to all relevant APIs in one place.
For more information about ABN AMRO's partner and venture portfolio, see our Partner page.
Requirements
To use this API in a production environment, you must have the following:
- An ABN AMRO Business Current Account registered in the Netherlands.
- A contract for Internet Banking Business or Access Online.
- A TLS certificate of the type Organization Validation (OV) or Extended Validation (EV) from Digicert, Quo Vadis, Sectigo or Entrust without wildcard options.
- Your TLS certificate MUST include Client Authentication (1.3.6.1.5.5.7.3.2) value for the certificate usage which can be found in the "Enhance Key Usage" tag of your certificate.
- Note: for certificates requested or renewed after the 1st of October 2025 Client Authentication is not by default added in your certificate by your CA. Please specifically request this to your CA.
- The organization name issued on the certificate must correspond to the name of the API contract holder.
Sandbox access
Use the ABN AMRO Developer Sandbox to access dummy data, and safely test all functionality of this API. For most products, the sandbox environment is identical to production.
To use the IBAN-Name Check API in a sandbox environment, complete the following steps:
- Register and create an account:
- Click Sign up.
- Enter your details, and click Create new account.
- Developer Support will send you an activation link by email.
- Click the activation link.
- Create an register application:
- Log in to your account.
- In the left-side navigation click Apps.
- Click Add app.
- In the App name field, enter a name for your application.
- In the APIs field, select IBAN-Name Check API, and click Add app.
- Complete the process described in How to use this API.
To provide feedback on this API, see Contact.
Note: The sandbox environment for IBAN-Name Check is only available from 7:00 - 20:00 CET.
Sandbox access details
- Sandbox URL: https://api-sandbox.abnamro.com
- Sandbox authorization URL: https://auth-mtls-sandbox.abnamro.com
Use the following credentials for the sandbox:
| Attribute | Value |
|---|---|
| Authorization URL | https://auth-mtls-sandbox.abnamro.com/as/token.oauth2 |
| Public certificate | sandbox.public.cer |
| Private key | sandbox.private.key |
| client_id | test_client |
To provide feedback on this API, see contact us.
Production access
Note: For access to the API, contact us.
To get access to production:
- Log in to your account.
- In the left-side navigation, click Apps.
- Click Request Production Access.
- Select the API category that you want to request production access for.
Note: It is not possible to request production access for multiple API categories in one request.
- Fill in the form, and click Submit.
- You receive a confirmation email and ticket-ID.
- ABN AMRO Developer Support validates the form.
- When the form is validated and the setup is complete, ABN AMRO Developer Support contacts you and supplies you with a client_id.
- A new app is added in Apps. This new app contains your API key.
Production access details
- Production URL: https://api.abnamro.com/third-party-api/surepay/iban-name-check/v3
- Production Token URL: https://auth-mtls.abnamro.com/as/token.oauth2
Use the following credentials for production:
| Attribute | Value for Production |
|---|---|
| client_id | As supplied to you by ABN AMRO |
| API-Key | The API Key for your production application on the Developer Portal |
| Certificate files: |
|---|
| Certificate file : Your OV or EV SSL certificate |
| Private key : Your private key |
How to use this API
This instruction describes how to connect the IBAN-Name Check by SurePay API and its functionality to the sandbox environment. For test cases, please click here.
Postman collection
Use the following Postman collections to try out the functionality of this API:
- This collection combines individual operations to try out usage scenarios: run this API in Postman.
For additional information on how to configure Postman and import a collection, see Postman.
Step 1 - Get an API key
- Register and create an account:
- Go to https://developer.abnamro.com/ and click Sign up.
- Enter your details, and click Create an account.
- Developer Support will send you an activation link by email.
- Click the activation link.
- Create and register an application:
- Log in to your account.
- In the top navigation bar, click My Apps.
- Click Add a new App or +.
- In the App name field, enter a name for your application.
- In the API product field, select IBAN-Name Check, and click Submit.
- Obtain your API key:
- In the top navigation bar, click My Apps.
- Click on the app you created.
- Copy the API Key number.
Step 2 - Get sandbox authorization
Note: The attributes described in this step are valid in the sandbox environment only. In a production environment, the attributes for requesting the
access_tokenare acquired while registering. To register for the beta production environment, contact us.
| Attribute | Value |
|---|---|
| Authorization URL | https://auth-mtls-sandbox.abnamro.com/as/token.oauth2 |
| Public certificate | sandbox.public.cer |
| Private key | sandbox.private.key |
| client_id | test_client |
To request the access_token, send a POST request to the authorization server.
curl --location --request POST https://auth-mtls-sandbox.abnamro.com/as/token.oauth2 \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=test_client' \
--data-urlencode 'scope=surepay:ibannamecheck:read' \
--data-urlencode 'grant_type=client_credentials' \
--cert {path/to/ban-sandbox.public.cer} \
--key {path/to/ban-sandbox.private.key} \
--insecure
The Authorization header is formed by combining the access_token from the response body with the word Bearer. For example, Bearer {access_token}.
Both the API-key and the Authorization header are used in all subsequent requests.
Step 3 - Request an IBAN-Name Check
To request an IBAN-Name Check, using the API-key from Step 1 and the Authorization token from Step 2, execute: POST IBAN-Name Check.
This operation checks if the given name matches, and to what extent, the known name for the provided IBAN in the SurePay database.
Examples for use in the sandbox:
Check if "D.Doorzon" matches, and to what extent, the name on the account with IBAN "NL12ABNA9999876523":
curl --location --request POST 'https://api-sandbox.abnamro.com/third-party-api/surepay/iban-name-check/v3' \
--header 'Content-Type: application/json' \
--header 'Trace-Id: bd4f101c-715d-459e-ad4f-cfbad571c16e' \
--header 'API-key: {{your_api_key}}' \
--header 'Authorization: Bearer {{access_token}}' \
--data-raw '{
"accountId": {
"value": "NL78RABO5394792070",
"type": "IBAN"
},
"name": "Nadine Bok"
}'
Need help?