Fintecture E-Mandates API

Customer e-mandates

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

fintecture-e-mandates-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Fintecture Account Information Services Accounts E-Mandates API
  description: 'PSD2 Account Information Services. Authenticates a PSU at their bank using either the redirect or decoupled (mobile-app) model, then retrieves bank accounts, balances, holders, and transactions. Also exposes the AIS-backed identity verification endpoint.

    '
  version: v2
  contact:
    name: Fintecture Support
    url: https://fintecture.com/contact
servers:
- url: https://api.fintecture.com
  description: Production
- url: https://api-sandbox.fintecture.com
  description: Sandbox
security:
- BearerAuth: []
tags:
- name: E-Mandates
  description: Customer e-mandates
paths:
  /v1/e-mandates:
    get:
      summary: List All E-Mandates
      description: List all merchant e-mandates.
      operationId: listAllEmandates
      tags:
      - E-Mandates
      responses:
        '200':
          description: E-mandates list
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/EMandate'
    post:
      summary: Create E-Mandate
      description: Create a customer e-mandate. Returns 409 Conflict if an e-mandate with the same RUM already exists.
      operationId: createEmandate
      tags:
      - E-Mandates
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EMandateCreate'
      responses:
        '201':
          description: E-mandate created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EMandate'
        '409':
          description: RUM already exists
  /v1/e-mandates/{mandate_id}:
    get:
      summary: Get An E-Mandate
      operationId: getEmandateById
      tags:
      - E-Mandates
      parameters:
      - $ref: '#/components/parameters/MandateIdPath'
      responses:
        '200':
          description: E-mandate details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EMandate'
    patch:
      summary: Update An E-Mandate
      description: Update a customer e-mandate. Only status updates are allowed. Accepted statuses are 'cancelled' and 'revoked'.
      operationId: patchEmandateById
      tags:
      - E-Mandates
      parameters:
      - $ref: '#/components/parameters/MandateIdPath'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                status:
                  type: string
                  enum:
                  - cancelled
                  - revoked
      responses:
        '200':
          description: E-mandate updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EMandate'
components:
  schemas:
    EMandate:
      type: object
      properties:
        id:
          type: string
        rum:
          type: string
          description: Reference Unique Mandate identifier.
        customer_id:
          type: string
        iban:
          type: string
        holder_name:
          type: string
        type:
          type: string
          enum:
          - recurring
          - one-off
        scheme:
          type: string
          enum:
          - SEPA
          - SEPA-B2B
        status:
          type: string
          enum:
          - active
          - cancelled
          - revoked
          - expired
        signed_at:
          type: string
          format: date-time
        created_at:
          type: string
          format: date-time
    EMandateCreate:
      type: object
      required:
      - rum
      - customer_id
      - iban
      - holder_name
      properties:
        rum:
          type: string
        customer_id:
          type: string
        iban:
          type: string
        holder_name:
          type: string
        type:
          type: string
          enum:
          - recurring
          - one-off
        scheme:
          type: string
          enum:
          - SEPA
          - SEPA-B2B
  parameters:
    MandateIdPath:
      in: path
      name: mandate_id
      required: true
      schema:
        type: string
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT