Deutsche Bank Payment API

The Payment API contains endpoints to add or modify payment transactions. When using the API, the merchant is only integrated to the API at the backend. All use cases are triggered via an API call. It is the merchant's responsibility to collect all relevant payment data via their own frontend.

Operations 6

POST /payment/event/{event_id}/creditcard/{tx_action} Creates an initial creditcard payment transaction (authorization… #
POST /payment/event/{event_id}/directdebit/{tx_action} Creates an initial SDD payment transaction (pre-authorization, authorization… #
GET /payment/event/{event_id} Retrieves details of an event (consisting of one or more transactions) #
POST /payment/event/{event_id}/klarna/{tx_action} Creates an initial Klarna payment transaction (pre-authorization, authorization) #
POST /payment/event/{event_id}/tx/{tx_id}/{tx_action} Creates a subsequent transaction (capture, reversal, or refund) referencing a… #
GET /payment/tx/{tx_id} Retrieves details of a (single) transaction #

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-payment-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-payment-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Merchant-Server II REST Services Payment API
  version: v2.1
  description: The Payment API contains endpoints to add or modify payment transactions. When using the API, the merchant is only integrated to the API at the backend. All use cases are triggered via an API call. It is the merchant's responsibility to collect all relevant payment data via their own frontend.
servers:
- url: https://testmerch.directpos.de/rest-api/services/v2.1/
security:
- bearerAuth: []
tags:
- name: Payment
  description: The Payment API contains endpoints to add or modify payment transactions. When using the API, the merchant is only integrated to the API at the backend. All use cases are triggered via an API call. It is the merchant's responsibility to collect all relevant payment data via their own frontend.
paths:
  /payment/event/{event_id}/creditcard/{tx_action}:
    post:
      tags:
      - Payment
      summary: Creates an initial creditcard payment transaction (authorization…
      operationId: paymentCreditCardPost
      parameters:
      - name: Merchant-ID
        in: header
        description: Unique identification of the merchant for whom the transaction is carried out. This parameter is  required if the `Merchant-ID` cannot be derived from the `client_id` you used for authentication.
        required: false
        style: simple
        explode: false
        schema:
          maxLength: 10
          minLength: 10
          pattern: '[0-9]+'
          type: string
      - name: event_id
        in: path
        description: A unique ID for the event.
        required: true
        style: simple
        explode: false
        schema:
          maxLength: 50
          minLength: 1
          pattern: '[\/0-9a-zA-Z_.:,\-+*$%]+'
          type: string
      - name: tx_action
        in: path
        description: The action of an initial transaction.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          enum:
          - authorization
          - preauthorization
          - credit
          - verify-mop
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PaymentCreditCardRequestInitial'
            example:
              amount_total:
                amount: 100
                currency: EUR
              means_of_payment:
                credit_card:
                  number: '4111111111111111'
                  expiry_date:
                    year: 2027
                    month: 12
                  code: '111'
                  card_holder: Rene Meier
      responses:
        '400':
          description: Response in case of an error. Includes a response code and an error message.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '401':
          description: Unauthorized request. Response body may be empty.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '200':
          description: Information about the payment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResponse'
  /payment/event/{event_id}/directdebit/{tx_action}:
    post:
      tags:
      - Payment
      summary: Creates an initial SDD payment transaction (pre-authorization, authorization…
      operationId: paymentDirectDebitPost
      parameters:
      - name: Merchant-ID
        in: header
        description: Unique identification of the merchant for whom the transaction is carried out. This parameter is  required if the `Merchant-ID` cannot be derived from the `client_id` you used for authentication.
        required: false
        style: simple
        explode: false
        schema:
          maxLength: 10
          minLength: 10
          pattern: '[0-9]+'
          type: string
      - name: event_id
        in: path
        description: A unique ID for the event.
        required: true
        style: simple
        explode: false
        schema:
          maxLength: 50
          minLength: 1
          pattern: '[\/0-9a-zA-Z_.:,\-+*$%]+'
          type: string
      - name: tx_action
        in: path
        description: The action of an initial transaction.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          enum:
          - authorization
          - preauthorization
          - credit
          - verify-mop
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PaymentDirectDebitRequestInitial'
            example:
              amount_total:
                amount: 100
                currency: EUR
              means_of_payment:
                bank_account:
                  account_holder: Rene Meier
                  iban: DE39123456790009290701
              mandate:
                reference: MDT1620213727383XY
                mandate_name: Sample mandate name
                signed_on: '2020-12-30'
                mandate_sequence_type: ONEOFF
      responses:
        '400':
          description: Response in case of an error. Includes a response code and an error message.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '401':
          description: Unauthorized request. Response body may be empty.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '200':
          description: The request has been processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResponse'
  /payment/event/{event_id}:
    get:
      tags:
      - Payment
      summary: Retrieves details of an event (consisting of one or more transactions)
      operationId: paymentEventGet
      parameters:
      - name: Merchant-ID
        in: header
        description: Unique identification of the merchant for whom the transaction is carried out. This parameter is  required if the `Merchant-ID` cannot be derived from the `client_id` you used for authentication.
        required: false
        style: simple
        explode: false
        schema:
          maxLength: 10
          minLength: 10
          pattern: '[0-9]+'
          type: string
      - name: event_id
        in: path
        description: A unique ID for the event.
        required: true
        style: simple
        explode: false
        schema:
          maxLength: 50
          minLength: 1
          pattern: '[\/0-9a-zA-Z_.:,\-+*$%]+'
          type: string
      responses:
        '400':
          description: Response in case of an error. Includes a response code and an error message.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '401':
          description: Unauthorized request. Response body may be empty.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '200':
          description: The request has been processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentDiagnosisEventResponse'
  /payment/event/{event_id}/klarna/{tx_action}:
    post:
      tags:
      - Payment
      summary: Creates an initial Klarna payment transaction (pre-authorization, authorization)
      operationId: paymentKlarnaPost
      parameters:
      - name: Merchant-ID
        in: header
        description: Unique identification of the merchant for whom the transaction is carried out. This parameter is  required if the `Merchant-ID` cannot be derived from the `client_id` you used for authentication.
        required: false
        style: simple
        explode: false
        schema:
          maxLength: 10
          minLength: 10
          pattern: '[0-9]+'
          type: string
      - name: event_id
        in: path
        description: A unique ID for the event.
        required: true
        style: simple
        explode: false
        schema:
          maxLength: 50
          minLength: 1
          pattern: '[\/0-9a-zA-Z_.:,\-+*$%]+'
          type: string
      - name: tx_action
        in: path
        description: The action of an initial transaction.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          enum:
          - authorization
          - preauthorization
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PaymentKlarnaRequestInitial'
            example:
              customer_information:
                date_of_birth: '1980-01-01'
              shipping_address:
                title: Ms
                first_name: Jane
                last_name: Doe
                email: test_jane@gmail.com
                address_line_1: Main Street 123
                address_line_2: Building A
                address_line_3: Apartment 12
                postal_code: '80469'
                phone_contact:
                  phone_type: MOBILE
                  phone_number: '+4917614287464'
                city: Munich
                country: DE
                extensions: {}
              billing_address:
                title: Ms
                first_name: Jane
                last_name: Doe
                email: test_jane@gmail.com
                address_line_1: Main Street 123
                address_line_2: Building A
                address_line_3: Apartment 12
                postal_code: '80469'
                phone_contact:
                  phone_type: MOBILE
                  phone_number: '+4917614287464'
                city: Munich
                country: DE
                extensions:
                  klarna_data:
                    custom_payment_method_ids: []
              basket:
                basket_id: basket123456
                invoice_id: RE123345
                soft_descriptor: 800-123-1234
                shipping_costs:
                  amount: 200
                  currency: EUR
                basket_type: DIGITAL
                extensions:
                  paypal_data:
                    custom_id: CUSTOMID123
                basket_items:
                - name: A fine shirt
                  description: BI123456
                  reference: UGG-BB-PUR-06
                  quantity:
                    quantity_amount: 5
                    quantity_unit: pcs
                  unit_price:
                    net: 100
                    gross: 100
                    currency: EUR
                    tax: 1900
                  discount:
                    net: 0
                    gross: 0
                    currency: EUR
                    tax: 1900
                  extensions:
                    klarna_data:
                      klarna_type: PHYSICAL
                      image_url: https://upload.wikimedia.org/wikipedia/commons/thumb/a/a5/Camisade_pu%C3%B1o_doble.jpg/256px-Camisade_pu%C3%B1o_doble.jpg
              form_data:
                locale: en
              amount_total:
                amount: 700
                currency: EUR
              merchant_information:
                merchant_data_1: merchantData1
                merchant_data_2: merchantData2
                merchant_data_3: merchantData3
              means_of_payment:
                alias: AliAss
      responses:
        '400':
          description: Response in case of an error. Includes a response code and an error message.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '401':
          description: Unauthorized request. Response body may be empty.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '200':
          description: The request has been processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResponse'
  /payment/event/{event_id}/tx/{tx_id}/{tx_action}:
    post:
      tags:
      - Payment
      summary: Creates a subsequent transaction (capture, reversal, or refund) referencing a…
      operationId: paymentTxActionPost
      parameters:
      - name: Merchant-ID
        in: header
        description: Unique identification of the merchant for whom the transaction is carried out. This parameter is  required if the `Merchant-ID` cannot be derived from the `client_id` you used for authentication.
        required: false
        style: simple
        explode: false
        schema:
          maxLength: 10
          minLength: 10
          pattern: '[0-9]+'
          type: string
      - name: event_id
        in: path
        description: A unique ID for the event. Use the same value as in the predecessor transaction the current transaction relates to.
        required: true
        style: simple
        explode: false
        schema:
          maxLength: 50
          minLength: 1
          pattern: '[\/0-9a-zA-Z_.:,\-+*$%]+'
          type: string
      - name: tx_id
        in: path
        description: A reference to a transaction retrieved in a response (tx_reference_id).
        required: true
        style: simple
        explode: false
        schema:
          maxLength: 50
          minLength: 1
          pattern: '[/0-9a-zA-Z=_-]+'
          type: string
        example: 020LMG10jxSI8FN0OC4vLR
      - name: tx_action
        in: path
        description: The action of a subsequent transaction.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          enum:
          - capture
          - reversal
          - refund
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PaymentRequestSubsequent'
            examples:
              sample21:
                summary: Sample credit card subsequent transaction
                description: Sample credit card subsequent transaction
                value:
                  kind: CREDITCARD
                  basket:
                    basket_id: basket123456
      responses:
        '400':
          description: Response in case of an error. Includes a response code and an error message.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '401':
          description: Unauthorized request. Response body may be empty.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '200':
          description: The request has been processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResponse'
  /payment/tx/{tx_id}:
    get:
      tags:
      - Payment
      summary: Retrieves details of a (single) transaction
      operationId: paymentTxGet
      parameters:
      - name: Merchant-ID
        in: header
        description: Unique identification of the merchant for whom the transaction is carried out. This parameter is  required if the `Merchant-ID` cannot be derived from the `client_id` you used for authentication.
        required: false
        style: simple
        explode: false
        schema:
          maxLength: 10
          minLength: 10
          pattern: '[0-9]+'
          type: string
      - name: tx_id
        in: path
        description: A reference to a transaction retrieved in a response (tx_reference_id).
        required: true
        style: simple
        explode: false
        schema:
          maxLength: 50
          minLength: 1
          pattern: '[/0-9a-zA-Z=_-]+'
          type: string
        example: 020LMG10jxSI8FN0OC4vLR
      responses:
        '400':
          description: Response in case of an error. Includes a response code and an error message.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '401':
          description: Unauthorized request. Response body may be empty.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorModel'
        '200':
          description: The request has been processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentResponse'
components:
  schemas:
    AliasInfo:
      type: object
      properties:
        alias:
          type: string
          description: Name of the alias.
          example: da2c9029-b180-42a7-b473-50d182a01f8a
        credit_card:
          $ref: '#/components/schemas/CreditCardInfo'
        bank_account:
          $ref: '#/components/schemas/BankAccount'
        address:
          $ref: '#/components/schemas/CommonAddress'
      description: Contains information about the created or updated alias. This field is null if the there was no 'alias_info' in the request.
    ExpiryDate:
      required:
      - month
      - year
      type: object
      properties:
        year:
          maximum: 2099
          minimum: 2000
          type: integer
          description: The credit card expiry year.
          format: int32
          example: 2021
        month:
          maximum: 12
          minimum: 1
          type: integer
          description: The credit card expiry month.
          format: int32
          example: 11
      description: The credit card expiry date.
    CommonAddressExtensions:
      type: object
      properties:
        alternative_address_data:
          $ref: '#/components/schemas/AlternativeAddressData'
        paydirekt_data:
          $ref: '#/components/schemas/AddressPaydirektData'
      description: Service specific address fields.
    BankAccount:
      required:
      - iban
      type: object
      properties:
        bic:
          maxLength: 11
          minLength: 11
          pattern: '[A-Z]{6}[A-Z2-9][A-NP-Z0-9][A-Z0-9]{3}'
          type: string
          description: "The business identifier code (BIC) of a bank account. If the branch identifier\n                (positions 9 to 11) is not applicable, it is set to \"XXX\". "
          example: VZVDDED1XXX
        iban:
          maxLength: 34
          minLength: 15
          pattern: '[A-Z]{2}[0-9]{2}[A-Z0-9*]{11,30}'
          type: string
          description: The international bank account number of a bank account.
          example: DE17215730140403340300
        account_holder:
          maxLength: 27
          minLength: 1
          pattern: .*
          type: string
          description: The account holder of the bank account.
          example: Max Muster
        bank_name:
          type: string
          description: Name of the bank.
          example: Musterbank
      description: Information about a bank account.
    PaymentDiagnosisEventResponse:
      required:
      - message
      - rc
      type: object
      properties:
        rc:
          type: string
          description: Response code of the transaction. "0" in the case of a successful transaction. Other values signify errors.
          example: '0'
        message:
          type: string
          description: Success or error message, text for the response code.
          example: Transaction approved.
        transactions:
          type: array
          description: All transactions that are assigned to this event.
          items:
            $ref: '#/components/schemas/PaymentDiagnosisResponse'
        payment_link_info:
          $ref: '#/components/schemas/PaymentLinkInfo'
      description: Response contains all transactions belonging to the event.
    TaxInfo:
      required:
      - tax_id
      - tax_id_type
      type: object
      properties:
        tax_id:
          type: string
          description: The customer's tax ID value.
          example: 867.226.847-41
        tax_id_type:
          type: string
          description: 'Type of tax ID. May be country specific. Different types may adhere to different patterns.


            * `BR_CPF` : Brazilian individual tax id type.

            * `BR_CNPJ` : Brazilian business tax id type.

            * `OTHER` : None of the above.

            '
          example: BR_CPF
          enum:
          - BR_CPF
          - BR_CNPJ
          - OTHER
      description: Legal tax information of the payer.
    PaymentRequestSubsequent:
      required:
      - kind
      type: object
      properties:
        kind:
          type: string
          description: The type of transaction.
          enum:
          - DIRECTDEBIT
          - CREDITCARD
          - CREDITCARD_3DS20
          - CREDITTRANSFER
          - SOFORTUEBERWEISUNG
          - PAYPAL
          - PAYDIREKT
          - WECHATPAY
          - P24
          - GIROPAY
          - KLARNA
          - PSD2
        changed_amount:
          type: integer
          description: The changed transaction amount for follow-up transactions.
          format: int64
          example: 200
        due_date:
          type: string
          description: 'Optional in the case of a direct debit capture. Due date of a direct debit payment. Full-date notation as defined by

            RFC 3339, section 5.6. The due date has to be at least three TARGET2 business days (not on weekends or the so

            called TARGET2 or TARGET holidays) after the current date. If you leave this field empty the direct debit is carried

            out as soon as possible.'
          format: date
        description:
          type: string
          description: The description of the transaction.
          example: The description of the transaction.
        basket:
          $ref: '#/components/schemas/Basket'
        shipping_info:
          $ref: '#/components/schemas/ShippingInfo'
    MeansOfPaymentKlarna:
      required:
      - alias
      type: object
      properties:
        alias:
          type: string
          description: A previously registered alias.
          example: 221f56ca355d8e6c42517749cf79ceb8
      description: The means of payment that will be used. Exactly one of the given means is valid.
    BasketItem:
      type: object
      properties:
        name:
          maxLength: 127
          minLength: 0
          type: string
          description: Descriptive name of the order item. Mandatory for PayPal.
          example: A fine shirt
        description:
          maxLength: 127
          minLength: 0
          type: string
          description: Used for storing merchant's internal order number or other reference.
          example: BI123456
        reference:
          maxLength: 64
          minLength: 0
          type: string
          description: Article number, SKU or similar.
          example: UGG-BB-PUR-06
        quantity:
          $ref: '#/components/schemas/Quantity'
        unit_price:
          $ref: '#/components/schemas/TaxedAmountCurrency'
        item_discount:
          $ref: '#/components/schemas/TaxedAmountCurrency'
        extensions:
          $ref: '#/components/schemas/BasketItemExtensions'
      description: A purchasable item that is part of a shopping basket's list of items.
    RiskmanagementInfoResponse:
      type: object
      properties:
        case_priority:
          type: string
          description: Riskcheck information regarding the case priority.
          example: '1'
        error_information:
          $ref: '#/components/schemas/RiskmanErrorInformation'
        event_id:
          maxLength: 50
          minLength: 1
          pattern: '[\/0-9a-zA-Z_.:,\-+*$%]+'
          type: string
          description: A unique ID for the event.
          example: E5686585867636541231230
        infocodes_address:
          type: array
          items:
            type: string
            description: Riskcheck information regarding the address risk check. See user guide for details and all possible values.
            example: '["COR-BA","COR-SA","MM-A","MM-Z"]'
        infocodes_customerlist:
          type: array
          items:
            type: string
            description: Riskcheck information regarding the customer list risk check.  See user guide for details and all possible values.
            example: '["CONPOSNEG","NEG-BCO"]'
        infocodes_device_behaviour:
          type: array
          items:
            type: string
            description: Indicates the device behavior information code(s) returned from device fingerprinting. See user guide for details and all possible values.
            example: '["MouseOffPageDetected"]'
        infocodes_globalvelocity:
          type: array
          items:
            type: string
            description: Riskcheck information regarding the velocity risk check. See user guide for details and all possible values.
            example: '["VEL-ADDR","VELS-FP"]'
        infocodes_identitychange:
          type: array
          items:
            type: string
            description: Riskcheck information regarding the identity change. See user guide for details and all possible values.
            example: '["ID-M-HPOS"]'
        infocodes_internet:
          type: array
          items:
            type: string
            description: Riskcheck information regarding the internet check. See user guide for details and all possible values.
            example: '["FREE-EM"]'
        infocodes_phone:
          type: array
          items:
            type: string
            description: Riskcheck information regarding the phone risk check. See user guide for details and all possible values.
            example: '["MMACBST, "UNV-PH" ]'
        infocodes_suspicious:
          type: array
          items:
            type: string
            description: Riskcheck information regarding suspicious risk. See user guide for details and all possible values.
            example: '["BAD-FP","MUL-EM"]'
        infocodes_velocity:
          type: array
          items:
            type: string
            description: 'List of information codes triggered by the order. These information codes were generated when you created

              the order and product velocity rules and are returned so that you can associate them with the rules. See user guide for details and all possible values.'
            example: '["GVEL-R20","GVEL-R21"]'
        localtime:
          type: string
          description: Riskcheck information regarding the local time of the risk check.
          example: '55083'
        profile_destination_queue:
          type: string
          description: Riskcheck information regarding the profile destination queue of the risk check.
          example: dst-queue
        profile_name:
          type: string
          description: Riskcheck information regarding the profile of the risk check.
          example: example-profile
        profile_selectorrule:
          type: string
          description: Riskcheck information regarding the profile selector rule risk check.
          example: example-rule
        providers:
          type: array
          items:
            type: string
            description: Providers used to calculate the risk.
            example: '["provider1","provider2"]'
        rules:
          type: array
          items:
            type: string
            description: Riskcheck information regarding the matched rules in risk check.
            example: '["example-rule"]'
        score:
          type: string
          description: Calculated risk score of request data.
          example: '14'
        score_factor_codes:
          type: array
          items:
            type: string
            description: Riskcheck information regarding the profile factor codes of the risk check. See user guide for all possible values.
            example: '["G","H","Y","Z"]'
        score_model_used:
          type: string
          description: Name of the score model used for the transaction. This field contains the name of risk management’s selected model.
          example: default_eu
        travel_actual_final_dst_country:
          type: string
          description: Actual country of final destination of the travel.
          example: US
        travel_actual_final_dst_locality:
          type: string
          description: Actual city of final destination of the travel.
          example: Chicago
        travel_first_departure_country:
          type: string
          description: First departure country of the travel.
          example: US
        travel_first_departure_locality:
          type: string
          description: First departure city of the travel.
          example: San Francisco
        tx_risk_status:
          type: string
          description: Status result of an external risk management transaction. See user guide for all possible values.
          example: ACCEPTED
        tx_scoring_id:
          type: string
          description: Unique scoring transaction identifier. Can be used to reference the depending scoring transaction.
          example: '6373172383866963604006'
        utc_time:
          type: string
          description: Riskcheck information regarding the UTC time of the risk check, used in error cases.
          example: '2021-12-21T14:18:04Z'
    CreditCardInfo:
      required:
      - expiry_date
      - number
      type: object
      properties:
        number:
          maxLength: 19
          minLength: 10
          pattern: '[0-9]*'
          type: string
          description: The credit card number (Primary Account Number). It is sometimes masked in response messages, for example 411111******1111.
          example: '41111111111111111'
        expiry_date:
          $ref: '#/components/schemas/ExpiryDate'
        cardholder:
          maxLength: 27
          minLength: 1
          type: string
          description: The holder of a credit card.
          example: Max Muster
        brand:
          type: string
          description: "The credit card brand.  The use of this field requires an explicit activation. Please contact customer support. Possible values:     \n           \n* `AMEX`\n* `DINERS`\n* `JCB`\n* `MAESTRO`\n* `MASTERCARD`\n* `VISA`        \n"
          example: VISA
          enum:
          - AMEX
          - DINERS
          - JCB
          - MAESTRO
          - MASTERCARD
          - VISA
        issuer_country:
          type: string
          description: The card issuers country of origin.  The use of this field requires an explicit activation. Please contact customer support.
      description: Information about a credit card.
    PhoneContact:
      required:
      - phone_number
      - phone_type
      type: object
      properties:
        phone_type:
          type: string
          description: 'The phone type.


            * `FAX`

            * `HOME`

            * `MOBILE`

            * `OTHER`

            * `PAGER`

            * `WORK`

            '
          example: FAX
          enum:
          - FAX
          - HOME
          - MOBILE
          - OTHER
          - PAGER
          - WORK
        phone_number:
          maxLength: 16
          minLength: 0
          pattern: \+[1-9]\d{1,14}
          type: string
          description: A phone number in its canonical international E.164 numbering plan format.
          example: '+442071838750'
      description: A means of contacting a customer by phone.
      example:
        phone_type: FAX
        phone_number: '+442071838750'
    MerchantInformationKlarnaData:
      type: object
      properties:
        custom_payment_method_ids:
          type: array
          description: List of custom payment method ids.
          example:
          - klarna_invoice
          - klarna_installments
          items:
            type: string
            description: List of custom payment method ids.
            example: '["klarna_invoice","klarna_installments"]'
      description: Klarna specific MerchantInformation fields.
    CommonAddress:
      type: object
      properties:
        title:
          type: string
          description: Customer's title.


# --- truncated at 32 KB (100 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/deutsche-bank/refs/heads/main/openapi/deutsche-bank-payment-api-openapi.yml