> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.finverse.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Mandates including plaintext sensitive account data

> List Mandates associated with a Customer App, including sensitive account details of the Sender Account (such as plaintext account number and accountholder name).

**Access:** This flow is available on demand for Finverse customers who need to retrieve sensitive account details on each sender account (e.g. for KYC or adhoc payment purposes). Contact [support@finverse.com](mailto:support@finverse.com) to request access.

**Authorization**: `customer_token`

## URL query parameters

Same as `GET /mandates`.

## Response fields

Same as `GET /mandates` except for the `mandates.sender_account` object.

### sender_account (object)

Same as `GET /payment_accounts` except for the following fields:

### account_number (object)

Bank account number details, including account number in plaintext.



## OpenAPI

````yaml /api-reference/openapi.json get /mandates/details
openapi: 3.0.0
info:
  description: Documentation of the early finverse services
  title: Finverse Public
  termsOfService: https://example.com
  contact:
    name: Maintainers
    email: info@finverse.com
  license:
    name: unknown license
  version: 0.0.1
servers:
  - url: https://api.prod.finverse.net
security:
  - Oauth2:
      - test
tags:
  - name: public
    description: Publicly accessible endpoints
    x-group: Public
  - name: customer
    description: Customer app and institution endpoints
    x-group: Customer
  - name: link
    description: Finverse Link flows
    x-group: Link
  - name: login_identity
    description: Login identity lifecycle and metadata
    x-group: Login identity
  - name: accounts
    description: Accounts, balances, and account numbers
    x-group: Accounts
  - name: statements
    description: Statements and composite statements
    x-group: Statements
  - name: transactions
    description: Transaction history
    x-group: Transactions
  - name: identity_income
    description: Identity and income insights
    x-group: Identity & income
  - name: payment_links
    description: Payment link creation and checkout
    x-group: Payment links
  - name: mandates
    description: Direct debit mandates
    x-group: Mandates
  - name: payments
    description: Payment initiation and status
    x-group: Payment operations
  - name: payouts
    description: Payouts and scheduled payouts
    x-group: Payouts
  - name: payment_users
    description: Payment user profiles
    x-group: Payment users
  - name: payment_accounts
    description: Payment accounts for users
    x-group: Payment accounts
  - name: payment_methods
    description: Stored payment methods
    x-group: Payment methods
  - name: bills
    description: Bill presentment
    x-group: Bills
  - name: disputes
    description: Payment disputes
    x-group: Disputes
  - name: ledger
    description: Ledger and statements
    x-group: Ledger
paths:
  /mandates/details:
    get:
      tags:
        - mandates
      summary: List Mandates including plaintext sensitive account data
      description: >-
        List Mandates associated with a Customer App, including sensitive
        account details of the Sender Account (such as plaintext account number
        and accountholder name).


        **Access:** This flow is available on demand for Finverse customers who
        need to retrieve sensitive account details on each sender account (e.g.
        for KYC or adhoc payment purposes). Contact
        [support@finverse.com](mailto:support@finverse.com) to request access.


        **Authorization**: `customer_token`


        ## URL query parameters


        Same as `GET /mandates`.


        ## Response fields


        Same as `GET /mandates` except for the `mandates.sender_account` object.


        ### sender_account (object)


        Same as `GET /payment_accounts` except for the following fields:


        ### account_number (object)


        Bank account number details, including account number in plaintext.
      operationId: listDetokenizedMandates
      parameters:
        - description: ISO format (YYYY-MM-DD)
          name: date_from
          in: query
          schema:
            type: string
            format: date
        - description: ISO format (YYYY-MM-DD)
          name: date_to
          in: query
          schema:
            type: string
            format: date
        - description: The mandate statuses to filter for, comma separated
          name: statuses
          in: query
          style: form
          explode: false
          schema:
            type: array
            items:
              enum:
                - AUTHORIZATION_REQUIRED
                - AUTHORIZING
                - PROCESSING
                - SUBMITTED
                - SUCCEEDED
                - FAILED
                - REVOKED
                - READY_TO_SUBMIT
                - CLOSED
                - CANCELLED
              type: string
        - description: The sender type of the mandate
          name: sender_type
          in: query
          schema:
            type: string
            enum:
              - INDIVIDUAL
              - BUSINESS
        - description: The user_id the mandate was setup for
          name: user_id
          in: query
          schema:
            type: string
        - description: The institution the mandate was executed against
          name: institution_id
          in: query
          schema:
            type: string
        - description: default is 0
          name: offset
          in: query
          schema:
            type: integer
            default: 0
        - description: default is 500, max is 1000
          name: limit
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 1000
            default: 500
      responses:
        '200':
          description: Successful
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListMandatesResponse'
              examples:
                success:
                  summary: Success
                  value:
                    mandates:
                      - created_at: '2025-06-21T06:30:22.964Z'
                        fees:
                          - amount: 0
                            currency: HKD
                            paid_by: RECIPIENT
                            paid_by_account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                        mandate_details:
                          collection_entity_name: Finverse Technologies Limited
                          currency: HKD
                          dda_reference: FINVERSE T-62F2-FINV
                          description: Test Mandate
                          end_date: '2025-12-01'
                          mandate_bank_reference: 01JY8JWMAV62AVC00FP2EC6509
                          processor_entity_name: Finverse Technologies Limited
                          start_date: '2025-06-21'
                          transaction_limits:
                            max_period_amount: 10000
                            max_period_count: 10
                            max_transaction_amount: 10000
                            period: MONTHLY
                        mandate_id: 01JY8JWDY51SYHP006XZBAMVGN
                        metadata:
                          employer_name: Apple Inc
                          key: value
                        payment_method_id: 01JY8JWE50618D9RGH44AR884F
                        recipient:
                          name: Finverse Test
                        recipient_account:
                          account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                          account_type: SETTLEMENT_ACCOUNT
                        sender:
                          external_user_id: user_id_1_1750487415
                          name: John Doe
                          user_details: []
                          user_id: 01JY8JWE3NG8CJ7DVJZJC3HMJT
                          user_type: INDIVIDUAL
                        sender_account:
                          account_id: 01JY8JWKX2HSZJ500DNEJ3JGHQ
                          account_number:
                            number: 01JY8JWM06NV1VNCPM6D5JJ9Y9
                            number_plaintext: '12345'
                            type: LOCAL
                          account_number_masked: XXX45
                          account_type: EXTERNAL_ACCOUNT
                          accountholder_name: 01JY8JWKZRZ32FFE4G0FPM19H1
                          accountholder_name_plaintext: John Doe
                          institution_id: testbank-dbs-hk
                          institution_name: Testbank (HK) Payments - Personal
                          user_id: 01JY8JWE3NG8CJ7DVJZJC3HMJT
                        status: SUCCEEDED
                        updated_at: '2025-06-21T06:30:22.964Z'
                      - created_at: '2025-06-21T05:58:18.257Z'
                        fees:
                          - amount: 0
                            currency: HKD
                            paid_by: RECIPIENT
                            paid_by_account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                        mandate_details:
                          collection_entity_name: Finverse Technologies Limited
                          currency: HKD
                          dda_reference: FINVERSE T-R885-FINV
                          description: Payment link mandate
                          mandate_bank_reference: 01JY8H1X2H8FSQHV5DPPBAXTD8
                          processor_entity_name: Finverse Technologies Limited
                          start_date: '2025-06-21'
                          transaction_limits:
                            max_transaction_amount: 500000
                        mandate_id: 01JY8H1ATJXEZGV3EDCK0MWY6Z
                        payment_method_id: 01JY8H1AX3TRC1TBHMB45WASEH
                        recipient:
                          name: Finverse Test
                        recipient_account:
                          account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                          account_type: SETTLEMENT_ACCOUNT
                        sender:
                          external_user_id: user_id_1||1750485452
                          name: John Doe
                          user_details: []
                          user_id: 01JY8H0J30ZBW17EG37128HRPN
                          user_type: INDIVIDUAL
                        sender_account:
                          account_id: 01JY8H1W0C66V5F8NJW9CG62PF
                          account_number:
                            number: 01JY8H1W6XJETFS21BEPV0BGEC
                            number_plaintext: '434949449'
                            type: LOCAL
                          account_number_masked: 434XXXX49
                          account_type: EXTERNAL_ACCOUNT
                          accountholder_name: 01JY8H1W5T5FGB22TZCDBGDM33
                          accountholder_name_plaintext: John Doe
                          institution_id: testbank-dbs-hk
                          institution_name: Testbank (HK) Payments - Personal
                          user_id: 01JY8H0J30ZBW17EG37128HRPN
                        status: SUCCEEDED
                        updated_at: '2025-06-21T05:58:18.257Z'
                      - created_at: '2025-06-21T05:35:23.088Z'
                        fees:
                          - amount: 0
                            currency: HKD
                            paid_by: RECIPIENT
                            paid_by_account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                        mandate_details:
                          collection_entity_name: Finverse Technologies Limited
                          currency: HKD
                          dda_reference: FINVERSE T-8F52-FINV
                          description: Payment link mandate
                          mandate_bank_reference: 01JY8FQX8ZAENPWSRG87961DXC
                          processor_entity_name: Finverse Technologies Limited
                          start_date: '2025-06-21'
                          transaction_limits:
                            max_transaction_amount: 500000
                        mandate_id: 01JY8FQHTEX7FAJMM4SGK4GRSZ
                        payment_method_id: 01JY8FQHXCZXWYN2EG383YAGR2
                        recipient:
                          name: Finverse Test
                        recipient_account:
                          account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                          account_type: SETTLEMENT_ACCOUNT
                        sender:
                          external_user_id: user_id_1||1750484076
                          name: John Doe
                          user_details: []
                          user_id: 01JY8FPJ0XFTEBPH5VHF379XF3
                          user_type: INDIVIDUAL
                        sender_account:
                          account_id: 01JY8FQWS1D4ZX8PJJS9ZY6B58
                          account_number:
                            number: 01JY8FQWYTG44WF6RECHN6M09F
                            number_plaintext: '300030303'
                            type: LOCAL
                          account_number_masked: 300XXXX03
                          account_type: EXTERNAL_ACCOUNT
                          accountholder_name: 01JY8FQWXZN9CFXFKPPKEHTE2M
                          accountholder_name_plaintext: John Doe
                          institution_id: testbank-dbs-hk
                          institution_name: Testbank (HK) Payments - Personal
                          user_id: 01JY8FPJ0XFTEBPH5VHF379XF3
                        status: SUCCEEDED
                        updated_at: '2025-06-21T05:35:23.088Z'
                      - created_at: '2025-06-21T04:31:20.442Z'
                        fees:
                          - amount: 0
                            currency: HKD
                            paid_by: RECIPIENT
                            paid_by_account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                        mandate_details:
                          collection_entity_name: Finverse Technologies Limited
                          currency: HKD
                          dda_reference: FINVERSE T-2X6K-FINV
                          description: Test Mandate
                          end_date: '2025-12-01'
                          mandate_bank_reference: 01JY8C2N74X3E4Y2A5YT030KCD
                          processor_entity_name: Finverse Technologies Limited
                          start_date: '2025-06-21'
                          transaction_limits:
                            max_period_amount: 10000
                            max_period_count: 10
                            max_transaction_amount: 10000
                            period: MONTHLY
                        mandate_id: 01JY8C0V23FPKZXH1YAHC9JBD5
                        metadata:
                          employer_name: Apple Inc
                          key: value
                        payment_method_id: 01JY8C0V652P775DQG7DXH9HNR
                        recipient:
                          name: Finverse Test
                        recipient_account:
                          account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                          account_type: SETTLEMENT_ACCOUNT
                        sender:
                          external_user_id: user_id_1_1750480219
                          name: John Doe
                          user_details: []
                          user_id: 01JY8C0V4VMZRC8YM399JF84BP
                          user_type: INDIVIDUAL
                        sender_account:
                          account_id: 01JY8C2MR456G4EXKVZHB45WPR
                          account_number:
                            number: 01JY8C2MWT0M5NXR1V7FW8ZJEG
                            number_plaintext: '12345'
                            type: LOCAL
                          account_number_masked: XXX45
                          account_type: EXTERNAL_ACCOUNT
                          accountholder_name: 01JY8C2MW9WT09SK3AA0928518
                          accountholder_name_plaintext: John Doe
                          institution_id: testbank-dbs-hk
                          institution_name: Testbank (HK) Payments - Personal
                          user_id: 01JY8C0V4VMZRC8YM399JF84BP
                        status: SUCCEEDED
                        updated_at: '2025-06-21T04:31:20.442Z'
                      - created_at: '2025-06-21T04:22:58.369Z'
                        fees: []
                        mandate_details:
                          collection_entity_name: Finverse Technologies Limited
                          currency: SGD
                          dda_reference: DDA-1234567890
                          description: Paper eGIRO Mandate
                          processor_entity_name: Finverse Technologies Limited
                          transaction_limits:
                            max_period_amount: 100000000
                            max_period_count: 100000
                            max_transaction_amount: 100000000
                            period: MONTHLY
                        mandate_id: 01JY8BKCGV63S66V3VDSTXF29D
                        payment_method_id: 01JY8BKCGV63S66V3VDS3G6NX3
                        recipient:
                          name: Finverse Test
                        recipient_account:
                          account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                          account_type: SETTLEMENT_ACCOUNT
                        sender:
                          external_user_id: user_id_1||1750479613
                          name: John Doe
                          user_details: []
                          user_id: 01JY8BECD0ARSWMA0YX0DRY57A
                          user_type: INDIVIDUAL
                        sender_account:
                          account_id: 01JY8BF0GD7H9WWSD892FP5FJT
                          account_number:
                            number: 01JY8BF0Q7VGR0H60M00ZG4HXZ
                            number_plaintext: '030404404004'
                            type: LOCAL
                          account_number_masked: 030XXXXX4004
                          account_type: EXTERNAL_ACCOUNT
                          accountholder_name: 01JY8BF0MPCWYC25B4AFJNGGSQ
                          accountholder_name_plaintext: John Doe
                          institution_id: testbank-dbs-hk
                          institution_name: Testbank (HK) Payments - Personal
                          user_id: 01JY8BECD0ARSWMA0YX0DRY57A
                        status: SUCCEEDED
                        updated_at: '2025-06-21T04:22:58.369Z'
                      - created_at: '2025-06-21T04:20:38.049Z'
                        fees:
                          - amount: 0
                            currency: HKD
                            paid_by: RECIPIENT
                            paid_by_account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                        mandate_details:
                          collection_entity_name: Finverse Technologies Limited
                          currency: HKD
                          dda_reference: FINVERSE T-8M2Z-FINV
                          description: Payment link mandate
                          mandate_bank_reference: 01JY8BF14GNY1N0TBA5H168X0E
                          processor_entity_name: Finverse Technologies Limited
                          start_date: '2025-06-21'
                          transaction_limits:
                            max_transaction_amount: 500000
                        mandate_id: 01JY8BEMF3AGBQ7C9CJWTV2W4X
                        payment_method_id: 01JY8BEMJZQQWGFTCKNSJGB0BD
                        recipient:
                          name: Finverse Test
                        recipient_account:
                          account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                          account_type: SETTLEMENT_ACCOUNT
                        sender:
                          external_user_id: user_id_1||1750479613
                          name: John Doe
                          user_details: []
                          user_id: 01JY8BECD0ARSWMA0YX0DRY57A
                          user_type: INDIVIDUAL
                        sender_account:
                          account_id: 01JY8BF0GD7H9WWSD892FP5FJT
                          account_number:
                            number: 01JY8BF0Q7VGR0H60M00ZG4HXZ
                            number_plaintext: '030404404004'
                            type: LOCAL
                          account_number_masked: 030XXXXX4004
                          account_type: EXTERNAL_ACCOUNT
                          accountholder_name: 01JY8BF0MPCWYC25B4AFJNGGSQ
                          accountholder_name_plaintext: John Doe
                          institution_id: testbank-dbs-hk
                          institution_name: Testbank (HK) Payments - Personal
                          user_id: 01JY8BECD0ARSWMA0YX0DRY57A
                        status: SUCCEEDED
                        updated_at: '2025-06-21T04:20:38.049Z'
                      - created_at: '2025-06-21T04:15:07.903Z'
                        fees:
                          - amount: 0
                            currency: HKD
                            paid_by: RECIPIENT
                            paid_by_account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                        mandate_details:
                          collection_entity_name: Finverse Technologies Limited
                          currency: HKD
                          dda_reference: FINVERSE T-0KMR-FINV
                          description: Payment link mandate
                          mandate_bank_reference: 01JY8B4YT7GHP4625QEJNFN5DV
                          processor_entity_name: Finverse Technologies Limited
                          start_date: '2025-06-21'
                          transaction_limits:
                            max_transaction_amount: 500000
                        mandate_id: 01JY8B4MK6T0KFYPV028FRW1YS
                        payment_method_id: 01JY8B4MPYMWNJ7XT603HV2SZ8
                        recipient:
                          name: Finverse Test
                        recipient_account:
                          account_id: 01JY8AKPBC32AZ5TPD99R27JZP
                          account_type: SETTLEMENT_ACCOUNT
                        sender:
                          external_user_id: user_id_1||1750479256
                          name: John Doe
                          user_details: []
                          user_id: 01JY8B3FK244XNJCZV2J2PBRMN
                          user_type: INDIVIDUAL
                        sender_account:
                          account_id: 01JY8B4XY0N1AVRR88WWHC7NK2
                          account_number:
                            number: 01JY8B4Y2W8GJGVV1G6ZZNAPE9
                            number_plaintext: '404040404040'
                            type: LOCAL
                          account_number_masked: 404XXXXX4040
                          account_type: EXTERNAL_ACCOUNT
                          accountholder_name: 01JY8B4Y1HQFKHXKG2RGA0CZZ3
                          accountholder_name_plaintext: John Doe
                          institution_id: testbank-dbs-hk
                          institution_name: Testbank (HK) Payments - Personal
                          user_id: 01JY8B3FK244XNJCZV2J2PBRMN
                        status: SUCCEEDED
                        updated_at: '2025-06-21T04:15:07.903Z'
                    total_mandates: 7
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrBodyModelV2'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrBodyModelV2'
              examples:
                not_authorized_for_this_endpoint_contact_support:
                  summary: Error (Not authorized for this endpoint, contact support)
                  value:
                    code: 401
                    error:
                      code: NOT_AUTHORIZED
                      details: Invalid bearer token
                      error_code: NOT_AUTHORIZED
                      message: >-
                        Authorization failed. Please review authorization
                        requirements in API documentation.
                      request_id: '1712547129'
                      type: API_ERROR
                    message: Invalid bearer token
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrBodyModelV2'
      security:
        - Oauth2:
            - mandate:listSensitive
components:
  schemas:
    ListMandatesResponse:
      required:
        - total_mandates
      properties:
        mandates:
          type: array
          items:
            $ref: '#/components/schemas/GetMandateResponse'
          description: >-
            List of Mandate objects that satisfy the filters in the request.
            Refer to Mandate object data model in `GET /mandates/{mandate_id}`
        total_mandates:
          type: integer
          description: >-
            Total number of Mandate records available for the selected filtering
            criteria (can be used to inform pagination requests)
    ErrBodyModelV2:
      properties:
        error:
          $ref: '#/components/schemas/FvErrorModelV2'
    GetMandateResponse:
      required:
        - updated_at
        - mandate_id
        - status
        - recipient
        - sender
        - mandate_details
      properties:
        created_at:
          description: Timestamp when the mandate was first created
          type: string
          format: date-time
        error:
          $ref: '#/components/schemas/FvEmbeddedErrorModel'
          description: >-
            Details on why the mandate failed (returned when `status` =
            `FAILED`). Note: this is used to detail any asynchronous e errors
            occuring after mandate creation; any synchronous errors (e.g. API
            validation errors) will instead be returned directly during `POST
            /mandates`.
        fees:
          type: array
          items:
            $ref: '#/components/schemas/Fee'
          description: Details on the fee(s) to be charged
        mandate_details:
          $ref: '#/components/schemas/MandateDetailsResponse'
          description: Details on the mandate
        mandate_id:
          description: >-
            Finverse Mandate ID for this mandate. Always unique. Creating a
            mandate with different idempotency keys will result in two mandates
            with different IDs.
          type: string
        metadata:
          description: >-
            Customer-supplied attributes in key:value format. E.g.
            `employer_name`: `Apple Inc`
          type: object
          additionalProperties:
            type: string
        payment_method_id:
          description: >-
            Finverse Payment Method ID for this mandate, used to create payments
            using the mandate (see `POST /`payments). Always unique. Creating a
            mandate with different idempotency keys will result in two mandates
            with different IDs.
          type: string
        recipient:
          $ref: '#/components/schemas/MandateRecipient'
          description: Details on the recipient of the payment
        recipient_account:
          $ref: '#/components/schemas/MandateRecipientAccount'
          description: >-
            Details on the recipient's account for the payment (i.e. the
            Customer App's settlement account at Finverse)
        sender:
          $ref: '#/components/schemas/GetMandateSender'
          description: Details on the sender of the payment
        sender_account:
          $ref: '#/components/schemas/MandateSenderAccount'
          description: >-
            Details on the sender's source institution and account, which is
            funding the payment
        status:
          description: >-
            Current status of the mandate. Possible values:
            `AUTHORIZATION_REQUIRED`, `PROCESSING`, `READY_TO_SUBMIT`,
            `SUBMITTED`, `SUCCEEDED`, `CANCELLED`, `CLOSED`, `FAILED` Note:
            `CLOSED` occurs when a draft Mandate is created by a Finverse
            Payment Link (with status `AUTHORIZATION_REQUIRED`), and the user
            then drops-off or creates a new Payment Method or Mandate. In these
            cases, Finverse closes the draft Mandate in order to associate a new
            Payment Method / Mandate with the same Payment Link.
          type: string
          enum:
            - AUTHORIZATION_REQUIRED
            - AUTHORIZING
            - PROCESSING
            - SUBMITTED
            - SUCCEEDED
            - FAILED
            - REVOKED
        updated_at:
          description: Timestamp of the last update to the mandate's record
          type: string
          format: date-time
    FvErrorModelV2:
      required:
        - type
        - error_code
        - message
        - details
        - request_id
      properties:
        details:
          type: string
        error_code:
          type: string
          example: CREDENTIALS_INVALID
        message:
          type: string
        request_id:
          description: The request_id provided in the request header
          type: string
        type:
          description: The error type
          type: string
          enum:
            - LINK_ERROR
            - API_ERROR
          example: LINKING_ERROR
    FvEmbeddedErrorModel:
      required:
        - type
        - error_code
        - message
        - details
      properties:
        details:
          type: string
        error_code:
          type: string
          example: CREDENTIALS_INVALID
        message:
          type: string
        type:
          description: The error type
          type: string
          enum:
            - LINK_ERROR
            - API_ERROR
          example: LINKING_ERROR
    Fee:
      required:
        - amount
      properties:
        amount:
          description: Amount of the fee (in minor currency unit)
          type: integer
          example: 100
        currency:
          type: string
          example: HKD
          description: Currency of the fee (e.g. HKD)
        paid_by:
          type: string
          enum:
            - RECIPIENT
            - SENDER
          example: RECIPIENT
          description: >-
            Party who will be charged the fee. Possible values: `RECIPIENT`,
            `SENDER`
        paid_by_account_id:
          description: >-
            Finverse Payment Account ID of the party who will be charged the
            fee. This references the `account_id` of either the
            `recipient_account` or the `sender_account`.
          type: string
          example: The payment account ID
    MandateDetailsResponse:
      required:
        - currency
      properties:
        collection_entity_name:
          type: string
          description: >-
            Name of the legal entity directly collecting the payment. This name
            may be displayed to users in the Finverse UI and in email
            notifications and in the sender's bank statements. For direct debit
            payments directly collected by the merchant (e.g. SG eGIRO
            payments), `collection_entity_name` is typically the merchant's
            legal entity name, configured by Finverse during customer
            onboarding. Contact
            [support@finverse.com](mailto:support@finverse.com) to configure
            your merchant details. For direct debit payments collected through
            Finverse (e.g. HK eDDA payments), `collection_entity_name` will be
            the same as `processor_entity_name`
        currency:
          description: Currency of the mandate (e.g. HKD)
          type: string
        dda_reference:
          description: >-
            Unique reference ID for the Direct Debit Authorization registered
            with the user's bank. The user's bank may quote this reference in
            notifications to the user, and in direct debit payment records on
            the user's bank statements.
          type: string
        description:
          description: User-facing description for the mandate
          type: string
        end_date:
          description: >-
            Expiration date of the mandate, e.g. `2022-12-31`. Payment requests
            will be allowed up to this date (inclusive). All date inputs assume
            UTC times (e.g. if `end_date` = `2022-12-31`, then a payment will be
            allowed until 2022-12-31 at 23:59:59 UTC). `end_date` must be equal
            to or greater than `start_date` (in UTC).
          type: string
          format: date
          nullable: true
        mandate_bank_reference:
          description: >-
            Bank-generated reference for the mandate, usually shown to senders
            on their bank notifications or statements. Only returned once
            mandate has been processed successfully by the sender's bank (i.e.
            mandate `status`\= `SUCCESSFUL`).
          type: string
        payment_schedule:
          $ref: '#/components/schemas/PaymentSchedule'
          description: RESERVED FOR FUTURE USE - Specifies scheduled auto-payments
        processor_entity_name:
          type: string
          description: >-
            Name of the payment processor (if any) through which the payment is
            collected. This name may be displayed to users in the Finverse UI,
            in email notifications and in the sender's bank statements. For
            direct debit payments directly collected by the merchant (e.g. SG
            eGIRO payments), no `processor_entity_name` is returned. For direct
            debit payments collected through Finverse (e.g. HK eDDA payments),
            `processor_entity_name` will be Finverse's legal entity name.
        start_date:
          description: >-
            Start date of the mandate, e.g. `2022-06-01`. Payment requests will
            be allowed from this date onwards (inclusive). All date inputs
            assume UTC times (e.g. if `start_date` = `2022-06-01`, then a
            payment will be allowed starting from 2022-06-01 at 00:00:00 UTC).
            `start_date` must be equal to or greater than today's date (in UTC).
          type: string
          format: date
          nullable: true
        transaction_limits:
          $ref: '#/components/schemas/TransactionLimitsResponse'
          description: Specifies custom limits per payment transaction
    MandateRecipient:
      required:
        - name
      properties:
        name:
          description: Merchant account name
          type: string
    MandateRecipientAccount:
      required:
        - account_id
        - account_type
      properties:
        account_id:
          description: Merchant account ID assigned by Finverse
          type: string
        account_type:
          description: Type of recipient account.
          type: string
          enum:
            - EXTERNAL_ACCOUNT
            - SETTLEMENT_ACCOUNT
          example: SETTLEMENT_ACCOUNT
    GetMandateSender:
      required:
        - user_id
        - external_user_id
        - user_type
      properties:
        external_user_id:
          description: >-
            Customer App's user ID, representing the end-user making the
            payment.
          type: string
        name:
          type: string
        user_details:
          description: Sender details which will be used for fraud checking.
          type: array
          items:
            $ref: '#/components/schemas/SenderDetail'
        user_id:
          description: A unique identifier generated after creating sender
          type: string
        user_type:
          description: >-
            Type of account held by the Sender at the Institution. Possible
            values are INDIVIDUAL, BUSINESS
          type: string
          enum:
            - INDIVIDUAL
            - BUSINESS
    MandateSenderAccount:
      type: object
      properties:
        account_id:
          description: A unique identifier generated after creating sender account
          type: string
          example: sender_account_id
        account_number:
          $ref: '#/components/schemas/RecipientAccountNumber'
          description: Bank account number details, including account number in plaintext
        account_number_masked:
          description: Masked Account number of the sender’s account
          type: string
        account_type:
          description: Type of sender account.
          type: string
          enum:
            - EXTERNAL_ACCOUNT
          example: EXTERNAL_ACCOUNT
        accountholder_name:
          description: Tokenized accountholder name of the sender's account
          type: string
          example: 01EP4A1MZDHKETZFRPF0K62S6S
        accountholder_name_plaintext:
          description: Accountholder name in plaintext.
          type: string
          example: Chan Li Pak
          nullable: true
        bank_code:
          type: string
        institution_id:
          description: Finverse Institution ID for the sender’s institution.
          type: string
          example: hsbc-hk
        institution_name:
          description: Institution Name for the sender’s institution.
          type: string
          example: HSBC
        metadata:
          description: >-
            Additional attributes of the sender account in key:value format
            (e.g. sender_id: 1234). It supports up to 10 key:value pairs,
            whereas the key and value supports up to 50 and 1000 characters
            respectively.
          type: object
          additionalProperties:
            type: string
        user_id:
          description: >-
            A unique identifier generated after creating sender (Finverse
            Payment User ID)
          type: string
          example: 01GY6H0JA7BS8EVGY56NSHFX2E
    PaymentSchedule:
      required:
        - amount
        - frequency
      properties:
        amount:
          description: Amount of the scheduled payment in major currency
          type: integer
          example: 100
        frequency:
          description: >-
            Frequency of the scheduled payment. Possible values: `DAILY`,
            `WEEKLY`, `MONTHLY`
          type: string
          enum:
            - DAILY
            - WEEKLY
            - MONTHLY
            - QUARTERLY
            - YEARLY
    TransactionLimitsResponse:
      properties:
        max_period_amount:
          description: >-
            Maximum cumulative amount (in minor currency unit) of payment
            transactions (for the specified `period` unit)
          type: integer
          minimum: 1
        max_period_count:
          description: >-
            Maximum number of payment transactions (for the specified `period`
            unit)
          type: integer
          minimum: 1
        max_transaction_amount:
          description: >-
            Maximum amount per single payment transaction, set by your Customer
            App (in minor currency units). Note: to avoid your Customer App
            triggering over-limit payments, Finverse will block any `POST
            /payments` requests exceeding the `max_transaction_amount` Banks may
            separately apply their own per transaction limit (see
            `max_transaction_amount_set_by_payer_initial` below)
          type: integer
          minimum: 1
        max_transaction_amount_set_by_payer_initial:
          description: >-
            Maximum amount per single payment transaction, optionally set by the
            end-user at the time of direct debit mandate creation, e.g. for
            eGIRO in Singapore (in minor currency units). Note: Finverse will
            attempt to submit `POST /payments` requests to banks even when the
            payment amount exceeds this limit, however you should expect the
            end-user's bank will reject over-limit payemnt requests, unless the
            user directly updates their limit through their bank (e.g. through
            their bank's internet banking portal > eGIRO management page).
            Finverse separately applies its own per transaction limit (see
            `max_transaction_limit` above)
          type: integer
          nullable: true
        period:
          description: Returned if `max_period_amount` or `max_period_count` are set.
          type: string
          enum:
            - DAILY
            - WEEKLY
            - MONTHLY
            - QUARTERLY
            - YEARLY
          nullable: true
    SenderDetail:
      properties:
        details_type:
          description: >-
            Type of the user identity information submitted. Possible values:
            `HK_ID`, `PASSPORT`, `HK_BUSINESS_REGISTRATION`,
            `HK_CERTIFICATE_OF_INCORPORATION`, `ACCOUNTHOLDER_NAME`
          type: string
          enum:
            - HK_ID
            - PASSPORT
            - HK_BUSINESS_REGISTRATION
            - HK_CERTIFICATE_OF_INCORPORATION
        values:
          description: >-
            Value(s) of the user identity information submitted. Min 1 value
            required, max 10 values. Values in responses are tokenized by
            Finverse.
          type: array
          maxItems: 10
          items:
            type: string
    RecipientAccountNumber:
      type: object
      required:
        - type
        - number
      properties:
        number:
          description: >-
            Account number. Account numbers in responses are tokenized by
            Finverse.
          type: string
          maxLength: 100
          minLength: 1
        number_plaintext:
          description: Account number in plaintext
          type: string
          maxLength: 100
          minLength: 1
          nullable: true
        type:
          description: 'Type of account number format. Possible values: `IBAN`, `LOCAL`'
          type: string
          enum:
            - LOCAL
            - IBAN
  securitySchemes:
    Oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://finverse-dev.us.auth0.com/oauth/token
          scopes:
            account: Account
            balance: Balance
            credit: Credit
            institution: Institution
            investment: Investment
            link: Link
            test: Test
            transaction: Transaction

````