1. Overview
The Swiss Bank Master API allows to access master data required for electronic payments in Switzerland. All participants connected to the Swiss payment systems SIC and euroSIC are listed. The data is centrally administered by SIX Interbank Clearing, updated daily and published in various electronic formats.
All the details published through the Swiss Bank Master API are based on information provided by the respective banks/institutions.
BIC are the property of SWIFT SCRL, 1310 La Hulpe, Belgium.
Information available through the API may be used freely. SIX assumes no responsibility for the completeness of this information, nor for any damages from actions taken based on this information. SIX reserves the express right to change or delete this information from its website at any time.
1.1. Changes to Swiss Bank Master API v2
-
As the IID type "3=Branch" is no longer published, V3 lists about 50% less entries than V2.1.
-
QR-IIDs are flagged with a dedicated IID type.
-
The record contains an indication on what day the data is valid.
-
Only the domicile address is shown, the postal address was removed. The data follows the structured address pattern used by ISO-20022 messages.
-
Outdated field (e.g. postal account number/fax) are removed.
-
Participation in services/systems is separated by distinct flags.
-
Mandatory/optional (Ma/Op) applies only if Field "Concatenation" is set to "N".
-
If "Concatenation" is set to "Y" only the fields "IID/QR-IID", "Valid On", "Concatenation" and "New IID/QR-IID" contain values, all others fields are empty. It is recommended to change a concatenated IID/QR-IID immediately.
1.2. ChangeLog
-
Added explicit HEAD method declarations to all endpoints to support downloads that require this.
1.3. Version information
Version : 3.0 (generated 2023-11-13T09:35:56Z)
1.4. Contact information
Contact : SIX Interbank Clearing
Contact Email : operations.sic@six-group.com
1.5. URI scheme
Host : api.six-group.com
BasePath : /api/epcd/v3
Schemes : HTTPS
1.6. Tags
-
bankmaster : Bankmaster API
All public REST endpoints of the bank master data are located here, such as the bank master data as JSON and downloadable files. -
healthcheck : System Healthcheck
This allows to check the basic state of the API (can it be reached, does it respond).
2. Resources
2.1. Bankmaster
Bankmaster API
All public REST endpoints of the bank master data are located here, such as the bank master data as JSON and downloadable files.
2.1.1. Bank master data as JSON object.
GET /bankmaster
Description
Bank master data as JSON object.
Parameters
Type | Name | Description | Schema | Default |
---|---|---|---|---|
Query |
prettyPrint |
Flag indicating whether the response is pretty printed. |
boolean |
|
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Bank master data as JSON object. |
|
default |
Unexpected error. |
Produces
-
application/json
2.1.2. Bank master data as JSON object (only head, no content).
HEAD /bankmaster
Description
Bank master data as JSON object (only head, no content).
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Content can be downloaded with GET method. |
No Content |
default |
Unexpected error. |
No Content |
2.1.3. Bank master data file in the CSV format.
GET /bankmaster_V3.csv
Description
Bank master data file in the CSV format, with header row. The CSV file contains UTF-8 encoded characters (important e.g. for umlauts and Euro sign).
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Bank master data file in the CSV format. |
No Content |
default |
Unexpected error. |
Produces
-
text/csv
2.1.4. Bank master data file in the CSV format (only head, no content).
HEAD /bankmaster_V3.csv
Description
Bank master data file in the CSV format, with header row. The CSV file contains UTF-8 encoded characters (important e.g. for umlauts and Euro sign) (only head, no content).
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Content can be downloaded with GET method. |
No Content |
default |
Unexpected error. |
No Content |
2.1.5. Bank master data as JSON object.
GET /bankmaster.json
Description
Bank master data as a JSON object.
Parameters
Type | Name | Description | Schema | Default |
---|---|---|---|---|
Query |
prettyPrint |
Flag indicating whether the response is pretty printed. |
boolean |
|
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Bank master data as JSON object. |
|
default |
Unexpected error. |
Produces
-
application/json
2.1.6. Bank master data as JSON object (only head, no content).
HEAD /bankmaster.json
Description
Bank master data as a JSON object (only head, no content).
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Content can be downloaded with GET method. |
No Content |
default |
Unexpected error. |
No Content |
2.2. Healthcheck
System Healthcheck
This allows to check the basic state of the API (can it be reached, does it respond).
2.2.1. Health check using GET method
GET /healthcheck
Description
Returns a status message of the system.
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Healthcheck successful |
|
default |
Unexpected error. |
Produces
-
application/json
2.2.2. Health check using GET method (only head, no content)
HEAD /healthcheck
Description
Returns a status message of the system (only head, no content).
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Content can be downloaded with GET method. |
No Content |
default |
Unexpected error. |
No Content |
3. Definitions
3.1. BankMasterJsonResponse
Name | Description | Schema |
---|---|---|
totalSize |
The total count of records in the entries list. |
integer |
validOn |
Master data is edited and published on a daily basis. Therefore the data is valid on that exact date only. |
string (date) |
readTime |
Date and time (according to ISO 8601) at which this response was created. |
string (date-time) |
entries |
< BankMasterBase > array |
3.2. BankMasterBase
Name | Description | Schema |
---|---|---|
iid |
Each bank / financial institution is identified by an IID (institution identification). IIDs are three to five digits long. QR-IIDs consist exclusively of numbers from 30000 to 31999. |
integer |
validOn |
Date to which the information in a record applies. This date (written as per ISO8601 standard) is identical for all records. |
string (date) |
entryType |
"New IID/QR-IID" must be used instead of "IID / QR-IID" if entryType is BankMasterConcatenated. |
enum (BankMasterConcatenated, BankMaster) |
3.3. BankMasterConcatenated
Polymorphism : Inheritance
Discriminator : entryType
Name | Description | Schema |
---|---|---|
iid |
Each bank / financial institution is identified by an IID (institution identification). IIDs are three to five digits long. QR-IIDs consist exclusively of numbers from 30000 to 31999. |
integer |
validOn |
Date to which the information in a record applies. This date (written as per ISO8601 standard) is identical for all records. |
string (date) |
entryType |
"New IID/QR-IID" must be used instead of "IID / QR-IID" if entryType is BankMasterConcatenated. |
enum (BankMasterConcatenated, BankMaster) |
newIid |
If this field contains a number, the IID/QR IID is no longer valid (e.g. due to a merger) and is to be replaced by the "New IID" (so-called concatenation). |
integer |
3.4. BankMaster
Polymorphism : Inheritance
Discriminator : entryType
Name | Description | Schema |
---|---|---|
iid |
Each bank / financial institution is identified by an IID (institution identification). IIDs are three to five digits long. QR-IIDs consist exclusively of numbers from 30000 to 31999. |
integer |
validOn |
Date to which the information in a record applies. This date (written as per ISO8601 standard) is identical for all records. |
string (date) |
entryType |
"New IID/QR-IID" must be used instead of "IID / QR-IID" if entryType is BankMasterConcatenated. |
enum (BankMasterConcatenated, BankMaster) |
sicIid |
This is always a 6-digit number and may be used only by SIC and euroSIC participants. |
string |
headQuarters |
IID of the headquarters of this participant. If this is the record of the headquarters itself, then this field contains the same value as the field IID. |
integer |
iidType |
Provides information as to the respective type of entry. |
enum (HEADQUARTERS, MAIN_BRANCH, QR_IID) |
qrIidBelongsTo |
IID of the bank/financial institution to which this QR IID is assigned to. It only contains a value, if the field iidType contains a QR_IID. Otherwise the field is empty. |
integer |
bankOrInstitutionName |
Name of participant |
string |
streetName |
Street of domicile address |
string |
buildingNumber |
Building number of domicile address |
string |
postCode |
Zip code/postcode |
string |
townName |
City |
string |
country |
2-digit alphabetical country code according to the ISO standard 3166. |
string |
bic |
BIC Formatted (XXXXXXXXXXX) (= 11-digit) |
string |
sicParticipation |
Participation in SIC. |
boolean |
rtgsCustomerPaymentsChf |
Available for RTGS customer payments. |
boolean |
ipCustomerPaymentsChf |
Available for IP customer payments. |
boolean |
euroSicParticipation |
Participation in euroSIC. |
boolean |
lsvBddChfParticipation |
Participation in LSV+/BDD in CHF (as debtor FI). |
boolean |
lsvBddEurParticipation |
Participation in LSV+/BDD in EUR (as debtor FI). |
boolean |
3.5. Problem
Name | Description | Schema |
---|---|---|
type |
An absolute URI that identifies the problem type. |
string (uri) |
title |
A short, human readable summary of the problem type. |
string |
status |
The HTTP status code generated by the origin server for this occurrence |
integer (int32) |
detail |
A human readable explanation specific to this occurrence of the |
string |
instance |
An absolute URI that identifies the specific occurrence of the problem. |
string (uri) |
metadata |
3.6. GenericObject
Structured type that contains an object and its type.
Name | Description | Schema |
---|---|---|
@type |
The field "@type" contains a URI/name identifying the type. Example: "@type": "types.example.com/standard/id". |
string |
data |
An object of type @type containing custom fields. |
object |
3.7. HealthCheckResponse
Name | Description | Schema |
---|---|---|
message |
Response message from health check. |
string |
requestDateTime |
According to RFC3339, section 5.6 in ISO 8601 with timezone and milliseconds. |
string (date-time) |
receivedHeaders |
< receivedHeaders > array |
|
environmentStage |
The instance to which the request was sent to. |
string |
applicationVersion |
The version of the API backend. |
string |
apiVersion |
The version of the API. |
string |
receivedHeaders
Name | Description | Schema |
---|---|---|
headerName |
The name of the provided header. |
string |
headerValue |
As received |
string |