General API

The abnamro package provides both a low-level API, which lets you call server methods directly, and a high-level API, which provides a basic abstraction and validation.

In general, you want to use the high-level API.

The remainder of this page documents classes that are not bound to a specific service.

class Settings
Contains configuration for the service clients, such as the user agent.

class ServiceClient
A client that can be used to send HTTP requests to the server. The service client also keeps track of the session cookie.

class ServiceError(Exception)
Raised when the server returns an error message.

Global Constants

APP_ID_ANDROID = "ANDROID_APP"
APP_ID_IPHONE = "IPHONE_APP"
APP_ID_SIMPLE_BANKING = "SIMPLE_BANKING"

ACCESS_EDENTIFIER1 = "EDENTIFIER1"
ACCESS_EDENTIFIER2_UNCONNECTED = "EDENTIFIER2_UNCONNECTED"
ACCESS_EDENTIFIER2_CONNECTED = "EDENTIFIER2_CONNECTED"
ACCESS_SOFTTOKEN = "SOFTTOKEN"
ACCESS_BOUNDDEVICE_USERPIN = "BOUNDDEVICE_USERPIN"
ACCESS_BOUNDDEVICE_TOUCHIDPIN = "BOUNDDEVICE_TOUCHIDPIN"
ACCESS_SESSIONHANDOVER = "SESSIONHANDOVER"
ACCESS_OOBGENERIC = "OOBGENERIC"

Settings

The settings class holds various parameters, such as the kind of device that you are using. The defaults should work fine.

host: str = "https://www.abnamro.nl"
app_id: str = APP_ID_IPHONE

The following fields are used for the user agent:

app_name: str = "Bankieren"
app_version: str = "12.44"
brand_name: str = "Apple"
model_name: str = "iPhone15,4"
platform_name: str = "iOS"
release_name: str = "17.1.1"
installation_id: str = str(uuid.uuid4()).upper()

def __init__()
Creates a new settings object with the default values.

ServiceClient

def __init__(settings: Settings)
Creates a new service client with the given settings.

ServiceError

response: requests.Response messages: list[dict]