Deutsche Bank Transactions API

Provides all transactions information from your customers' savings and current accounts for the last 13 months.

Operations 2

GET / Reads transactions for cash accounts #
GET /{transactionId} Reads a single transaction by id #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/deutsche-bank-transactions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

deutsche-bank-transactions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: dbapi Transactions API
  description: Provides transactions information from your customer's savings and current accounts for the last 13 months.
  termsOfService: https://developer.db.com/termsandconditions
  contact:
    url: https://developer.db.com/contact
    email: bank.api@db.com
  version: v2
servers:
- url: https://simulator-api.db.com:443/gw/dbapi/banking/transactions/v2
tags:
- name: Transactions
  description: Provides all transactions information from your customers' savings and current accounts for the last 13 months.
paths:
  /:
    get:
      tags:
      - Transactions
      summary: Reads transactions for cash accounts
      description: Reads transactions for cash accounts (current and deposit) for the given customer. The API provides in default up to 13 months of transaction history. If given IBAN is not valid or does not represent an account of the current customer, an empty result is returned. It is not apparent who issued a transaction, only whether the user gained or lost money by it (based on whether the amount is positive or negative respectively). The maximum number of transactions returned is 200.
      operationId: getCashAccountTransactions
      parameters:
      - name: iban
        in: query
        description: IBAN representing an account of the current user.
        required: true
        style: form
        explode: true
        schema:
          maxLength: 34
          minLength: 5
          pattern: '[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}'
          type: string
      - name: currencyCode
        in: query
        description: ISO 4217 Alpha 3 currency code.
        required: false
        schema:
          pattern: '[A-Z]{3}'
          type: string
      - name: bookingDateFrom
        in: query
        description: booking date of original transaction. Date in ISO 8601 format, YYYY-MM-DD. If not provided, 1980-01-01 will be chosen if called with a PSD2-compliant strong customer authentication (SCA), or the date prior to today with a maximum PSD2-compliant daycount if not called with a PSD2-compliant SCA. Please note that choosing a date too far into the past might lead to an error response if the result set would become too big. In this case narrowing the interval can help.
        required: false
        style: form
        explode: true
        schema:
          type: string
          format: date
      - name: bookingDateTo
        in: query
        description: booking date until which the transactions to be searched for. Date in ISO 8601 format YYYY-MM-DD. If not provided, the current day will be chosen. bookingDateTo must be greater than or equal to bookingDateFrom.
        required: false
        style: form
        explode: true
        schema:
          type: string
          format: date
      - name: sortBy
        in: query
        description: sort order of transactions - supported sort orders are 'bookingDate[ASC]' or 'bookingDate[DESC]'.
        required: false
        style: form
        explode: true
        schema:
          type: string
          default: bookingDate[ASC]
          enum:
          - bookingDate[ASC]
          - bookingDate[DESC]
      - name: limit
        in: query
        description: limit defines count of resources per request/page.
        required: false
        style: form
        explode: true
        schema:
          maximum: 200
          minimum: 0
          type: integer
          format: int32
          default: 10
      - name: offset
        in: query
        description: the page to be returned.
        required: false
        schema:
          minimum: 0
          type: integer
          format: int32
          default: 0
      - name: Correlation-Id
        in: header
        description: Free form key controlled by the caller e.g. uuid
        required: false
        schema:
          maxLength: 50
          type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  totalItems:
                    minimum: 0
                    type: integer
                    description: Cumulated number of items across all pages for your request parameters.
                    format: int32
                  limit:
                    minimum: 0
                    type: integer
                    description: The number of items of a page.
                    format: int32
                  offset:
                    minimum: 0
                    type: integer
                    description: The page to be returned.
                    format: int32
                  transactions:
                    type: array
                    items:
                      $ref: '#/components/schemas/CashAccountTransaction'
        '400':
          description: Unsuccessful operation, returns http status 400. See 'example' property for possible values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
              - code: 2
                message: Invalid value for %s.
              - code: 3
                message: 'Invalid value for %s: %s.'
              - code: 17
                message: Invalid OTP.
              - code: 18
                message: Backend problem. Please narrow time interval.
              - code: 114
                message: Unable to identify transaction by Id.
              - code: 127
                message: Booking date from must precede booking date to.
              - code: 131
                message: Invalid value for 'sortBy'. Valid values are 'bookingDate[ASC]' and 'bookingDate[DESC]'.
        '401':
          description: Unsuccessful operation, returns http status 401. See 'example' property for possible values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
              - code: 401
                message: The requested function requires a SCA Level Authentication.
        '500':
          description: Unsuccessful operation, returns http status 500. See 'example' property for possible values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
              - code: 3
                message: The server encountered an internal error and was unable to complete your request. Please try again.
      security:
      - api_auth_code:
        - read_transactions
      - api_db_smart_access:
        - read_transactions
  /{transactionId}:
    get:
      tags:
      - Transactions
      summary: Reads a single transaction by id
      description: Reads a single transaction by its id.
      operationId: getCashAccountTransactionById
      parameters:
      - name: transactionId
        in: path
        description: The id of the requested transaction. This id is NOT immutable and is to be used primarily in conjunction with the transaction notification API when requesting a specific transaction.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: Correlation-Id
        in: header
        description: Free form key controlled by the caller e.g. uuid
        required: false
        schema:
          maxLength: 50
          type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CashAccountTransaction'
        '400':
          description: Unsuccessful operation, returns http status 400. See 'example' property for possible values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
              - code: 2
                message: Invalid value for %s.
              - code: 3
                message: 'Invalid value for %s: %s.'
              - code: 17
                message: Invalid OTP.
              - code: 18
                message: Backend problem. Please narrow time interval.
              - code: 114
                message: Unable to identify transaction by Id.
              - code: 127
                message: Booking date from must precede booking date to.
              - code: 131
                message: Invalid value for 'sortBy'. Valid values are 'bookingDate[ASC]' and 'bookingDate[DESC]'.
        '401':
          description: Unsuccessful operation, returns http status 401. See 'example' property for possible values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
              - code: 401
                message: The requested function requires a SCA Level Authentication.
        '500':
          description: Unsuccessful operation, returns http status 500. See 'example' property for possible values.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
              - code: 3
                message: The server encountered an internal error and was unable to complete your request. Please try again.
      security:
      - api_auth_code:
        - read_transactions
      - api_db_smart_access:
        - read_transactions
components:
  schemas:
    IBAN:
      pattern: '[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}'
      type: string
      description: The IBAN of this account.
    CurrencyCode:
      pattern: '[A-Z]{3}'
      type: string
      description: ISO 4217 Alpha 3 currency code.
      example: EUR
    CashAccountTransaction:
      allOf:
      - $ref: '#/components/schemas/CashAccountTransaction_1'
      - required:
        - id
        type: object
        properties:
          id:
            type: string
            description: The id of the requested transaction. This id is NOT immutable and is to be used primarily in conjunction with the transaction notification API when requesting a specific transaction.
    BIC:
      pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}'
      type: string
      description: BIC (Bank Identifier Code) code.
    ErrorResponse:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: integer
          description: The error code
        message:
          type: string
          description: Description of the belonging error code.
        messageId:
          type: string
          description: dbAPI internal message-id (unique identifier) that allow reference to each of your API calls.
      description: Default error response message
    CashAccountTransaction_1:
      required:
      - amount
      - bookingDate
      - currencyCode
      - originIban
      type: object
      properties:
        originIban:
          $ref: '#/components/schemas/IBAN'
        amount:
          type: number
          description: Amount of the transaction. If the amount is positive, the customer received money, if the amount is negative the customer lost money.
        counterPartyName:
          type: string
          description: Name of the counter party.
        counterPartyIban:
          $ref: '#/components/schemas/IBAN'
        counterPartyBic:
          $ref: '#/components/schemas/BIC'
        paymentReference:
          type: string
          description: Payment reference.
        bookingDate:
          type: string
          description: Booking date. In the format YYYY-MM-DD.
        currencyCode:
          $ref: '#/components/schemas/CurrencyCode'
        transactionCode:
          type: string
          description: Specifies the business transaction code (GVC).
        externalBankTransactionDomainCode:
          type: string
          description: Specifies the bank transaction code domain, as published in an external bank transaction code domain code list according to ISO 20022.
        externalBankTransactionFamilyCode:
          type: string
          description: Specifies the external family code of the bank transaction code in the format of character string with a maximum length of 4 characters according to ISO 20022.
        externalBankTransactionSubFamilyCode:
          type: string
          description: Specifies the bank transaction code sub-family, as published in an external bank transaction code sub-family code list according to ISO 20022.
        mandateReference:
          type: string
          description: MandateReference of the direct debit transaction, max length 35 characters.
        creditorId:
          type: string
          description: Creditor ID, max length 35 characters.
        e2eReference:
          type: string
          description: Unique identification given by the orderer to identify the order.
        paymentIdentification:
          type: string
          description: Unique and unambiguous identification of a transaction, as assigned by any of the customer parties on the initiating side.
        valueDate:
          type: string
          description: Value date of Transaction in ISO 8601 format (YYYY-MM-DD). In very specific cases, technical date is possible for e.g., (2020-02-30).
        uniqueTag:
          type: string
          description: Unique tag of the transaction. It is a stable identifier for a single transaction and can be used to distinguish it from other transactions over time. It cannot be used to retrieve transaction data by id; use the 'id' property for that.
      description: A cash account transaction.
  securitySchemes:
    api_auth_code:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://simulator-api.db.com:443/gw/oidc/oauth2/authorize
          tokenUrl: https://simulator-api.db.com:443/gw/oidc/oauth2/token
          scopes:
            read_transactions: Grants read access to transactions for cash accounts (current and deposit) for the given customer. The API provides in default up to 13 months of transaction history.
            openid: Request access to OpenId Connect functionality
            offline_access: Request an OAuth2 Refresh Token
    api_db_smart_access:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://simulator-api.db.com:443/gw/oidc/oauth2/token
          scopes:
            read_transactions: Grants read access to transactions for cash accounts (current and deposit) for the given customer. The API provides in default up to 13 months of transaction history.
x-original-swagger-version: '2.0'