Bank settings

Sending the bank settings to the Docker

You can send the bank settings to the Docker in the body of each API call or by using the name of a set of settings defined in the config.json file.
Sending the bank settings in each calls allows you to change them easily but you have to store them and they are sent on the network from your app to the BankingSDK Docker.

This communication should be carried out in a protected environment.

If you define the bank settings in a set of the config.json file, the name of the set is transported in the call and the calling app hasn't to store that information, which is safer.

Bank settings in the config.json file are defined in a "set". Multiple bank connectors might use the same "set" of bank settings.

The main flow

  • You request the options from the connector, they indicate the required bank settings
  • You define sets of bank settings in the docker configuration
  • You reference the name of the set you want to use in the request

You can still pass the bank settings to the call by filling the bankSettings field of the request. If both are defined, the config.json file supersedes the API call bank settings.

Getting the options for required bank settings from the docker

By calling

GET /pb/settings/{connector id}

You receive the options for the requested connector id. In the case of 40003/JP Morgan:

{
  "appClientId": "Application Client ID from the bank.",
  "signingCertificateName": "Name of the signing cetificate.",
  "signingCertificatePassword": "Password to the signing certificate."
}

Defining sets of settings in the docker configuration

In the following example, we define two sets "JPM" and "CITI" with different settings. Note that you are free to put the set name you want as long as it does not collide with other expected properties at the same level.
The config.json (partial):

{
  ...
  "sandbox": true,
  "JPM": {
    "appClientId": "value1",
    "signingCertificateName": "value2",
    "signingCertificatePassword": "value3",
  },
  "CITI": {
    "settingX": "valueX",
    "settingY": "valueY",
    "settingZ": "valueZ"
  },
  …
}

Using set of settings in the calls:

In the request, you don't set the "bankSettings" fields, you set rather the "bankSettingsCode" to the name of the set.
In our example with 40003/JP Morgan:

{
  "connectorId": 40003,
  "bankSettingsCode": "JPM",
  ...
}