Tink Money Manager API

Personal and business financial-management surface. Cash-flow summaries, recurring and one-off business budgets, a financial calendar of bills and invoices, and reconciliations against bank transactions.

Tink Money Manager API is one of 9 APIs that Tink publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 machine-runnable capability that can be deployed as REST, MCP, or Agent Skill surfaces via Naftiko.

Tagged areas include Money Manager, BFM, Cash Flow, Budgets, and Financial Calendar. The published artifact set on APIs.io includes API documentation, an OpenAPI specification, and 1 Naftiko capability spec.

OpenAPI Specification

tink-money-manager-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Tink Money Manager API
  description: >
    Tink Money Manager (Business Financial Management) provides personal and
    business financial management capabilities including cash flow
    summaries, budgets, financial calendar events, and reconciliations. The
    finance-management API powers SMB-facing dashboards inside customer
    banking and accounting apps.
  version: '1.0'
  contact:
    name: Tink Developer Support
    url: https://docs.tink.com/resources/money-manager
servers:
  - url: https://api.tink.com
    description: Tink EU Production
security:
  - BearerAuth: []
tags:
  - name: CashFlow
    description: Cash flow summaries.
  - name: Budgets
    description: Personal and business budgets.
  - name: FinancialCalendar
    description: Financial calendar events and reconciliations.
paths:
  /finance-management/v1/cash-flow-summaries/{resolution}:
    get:
      summary: Tink Get Cash Flow Summaries
      description: >
        Retrieve cash flow summaries (income vs expense) for the user at the
        requested resolution. Resolution values include DAILY, WEEKLY,
        MONTHLY, QUARTERLY, and YEARLY.
      operationId: getCashFlowSummaries
      tags:
        - CashFlow
      parameters:
        - in: path
          name: resolution
          required: true
          schema:
            type: string
            enum: [DAILY, WEEKLY, MONTHLY, QUARTERLY, YEARLY]
        - in: query
          name: from_gte
          required: true
          schema:
            type: string
            format: date
        - in: query
          name: to_lte
          required: true
          schema:
            type: string
            format: date
      responses:
        '200':
          description: Cash flow summaries returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CashFlowSummaryList'
  /finance-management/v1/business-budgets:
    post:
      summary: Tink Create A Business Budget
      description: Create a one-off or recurring business budget tied to a category, merchant, or tag set.
      operationId: createBusinessBudget
      tags:
        - Budgets
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BudgetRequest'
      responses:
        '201':
          description: Budget created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Budget'
    get:
      summary: Tink List Business Budgets
      description: List business budgets, optionally filtered by progress status.
      operationId: listBusinessBudgets
      tags:
        - Budgets
      parameters:
        - in: query
          name: progress_status_in
          schema:
            type: string
            enum: [ON_TRACK, AT_RISK, EXCEEDED]
      responses:
        '200':
          description: Budgets returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BudgetList'
  /finance-management/v1/business-budgets/{budgetId}:
    get:
      summary: Tink Get A Business Budget
      description: Retrieve a business budget by id with current progress and remaining amount.
      operationId: getBusinessBudget
      tags:
        - Budgets
      parameters:
        - $ref: '#/components/parameters/BudgetIdParam'
      responses:
        '200':
          description: Budget returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Budget'
    patch:
      summary: Tink Update A Business Budget
      description: Update fields on a business budget (limit, period, tags).
      operationId: updateBusinessBudget
      tags:
        - Budgets
      parameters:
        - $ref: '#/components/parameters/BudgetIdParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BudgetRequest'
      responses:
        '200':
          description: Budget updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Budget'
    delete:
      summary: Tink Delete A Business Budget
      description: Delete a business budget.
      operationId: deleteBusinessBudget
      tags:
        - Budgets
      parameters:
        - $ref: '#/components/parameters/BudgetIdParam'
      responses:
        '204':
          description: Budget deleted.
  /finance-management/v1/business-budgets/{budgetId}/history:
    get:
      summary: Tink Get Business Budget History
      description: Retrieve the historical performance of a budget across past periods.
      operationId: getBusinessBudgetHistory
      tags:
        - Budgets
      parameters:
        - $ref: '#/components/parameters/BudgetIdParam'
      responses:
        '200':
          description: Budget history returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BudgetHistory'
  /finance-management/v1/financial-calendar-events:
    post:
      summary: Tink Create A Financial Calendar Event
      description: Create a scheduled or recurring financial calendar event such as a bill, invoice, or tax payment.
      operationId: createCalendarEvent
      tags:
        - FinancialCalendar
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CalendarEventRequest'
      responses:
        '201':
          description: Event created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CalendarEvent'
    get:
      summary: Tink List Financial Calendar Events
      description: List financial calendar events filtered by due-date range.
      operationId: listCalendarEvents
      tags:
        - FinancialCalendar
      parameters:
        - in: query
          name: due_date_gte
          schema:
            type: string
            format: date
        - in: query
          name: due_date_lte
          schema:
            type: string
            format: date
      responses:
        '200':
          description: Events returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CalendarEventList'
  /finance-management/v1/financial-calendar-events/{calendarEventId}:
    get:
      summary: Tink Get A Financial Calendar Event
      description: Retrieve a single financial calendar event by id.
      operationId: getCalendarEvent
      tags:
        - FinancialCalendar
      parameters:
        - $ref: '#/components/parameters/CalendarEventIdParam'
      responses:
        '200':
          description: Event returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CalendarEvent'
    patch:
      summary: Tink Update A Financial Calendar Event
      description: Update fields on a financial calendar event.
      operationId: updateCalendarEvent
      tags:
        - FinancialCalendar
      parameters:
        - $ref: '#/components/parameters/CalendarEventIdParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CalendarEventRequest'
      responses:
        '200':
          description: Event updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CalendarEvent'
    delete:
      summary: Tink Delete A Financial Calendar Event
      description: Delete a financial calendar event.
      operationId: deleteCalendarEvent
      tags:
        - FinancialCalendar
      parameters:
        - $ref: '#/components/parameters/CalendarEventIdParam'
      responses:
        '204':
          description: Event deleted.
  /finance-management/v1/financial-calendar-events/{calendarEventId}/reconciliations:
    post:
      summary: Tink Create A Calendar Event Reconciliation
      description: Reconcile a calendar event against a matched transaction.
      operationId: createReconciliation
      tags:
        - FinancialCalendar
      parameters:
        - $ref: '#/components/parameters/CalendarEventIdParam'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReconciliationRequest'
      responses:
        '201':
          description: Reconciliation created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Reconciliation'
  /finance-management/v1/financial-calendar-summaries/{resolution}:
    get:
      summary: Tink List Calendar Event Summaries
      description: Aggregate financial calendar events into summaries at the requested resolution.
      operationId: listCalendarEventSummaries
      tags:
        - FinancialCalendar
      parameters:
        - in: path
          name: resolution
          required: true
          schema:
            type: string
            enum: [WEEKLY, MONTHLY, QUARTERLY, YEARLY]
        - in: query
          name: period_gte
          schema:
            type: string
            format: date
        - in: query
          name: period_lte
          schema:
            type: string
            format: date
      responses:
        '200':
          description: Summaries returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CalendarEventSummaryList'
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
  parameters:
    BudgetIdParam:
      in: path
      name: budgetId
      required: true
      schema:
        type: string
    CalendarEventIdParam:
      in: path
      name: calendarEventId
      required: true
      schema:
        type: string
  schemas:
    CashFlowSummaryList:
      type: object
      properties:
        summaries:
          type: array
          items:
            type: object
            properties:
              periodStart:
                type: string
                format: date
              periodEnd:
                type: string
                format: date
              income:
                $ref: '#/components/schemas/Money'
              expenses:
                $ref: '#/components/schemas/Money'
              net:
                $ref: '#/components/schemas/Money'
    BudgetRequest:
      type: object
      properties:
        name:
          type: string
        amount:
          $ref: '#/components/schemas/Money'
        period:
          type: string
          enum: [ONE_OFF, WEEK, MONTH, QUARTER, YEAR]
        startDate:
          type: string
          format: date
        endDate:
          type: string
          format: date
        filters:
          type: object
          properties:
            categoryIds:
              type: array
              items:
                type: string
            merchantNames:
              type: array
              items:
                type: string
            tags:
              type: array
              items:
                type: string
    Budget:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        amount:
          $ref: '#/components/schemas/Money'
        period:
          type: string
        startDate:
          type: string
          format: date
        endDate:
          type: string
          format: date
        progress:
          type: object
          properties:
            spent:
              $ref: '#/components/schemas/Money'
            remaining:
              $ref: '#/components/schemas/Money'
            status:
              type: string
              enum: [ON_TRACK, AT_RISK, EXCEEDED]
    BudgetList:
      type: object
      properties:
        budgets:
          type: array
          items:
            $ref: '#/components/schemas/Budget'
    BudgetHistory:
      type: object
      properties:
        budgetId:
          type: string
        periods:
          type: array
          items:
            type: object
            properties:
              periodStart:
                type: string
                format: date
              periodEnd:
                type: string
                format: date
              spent:
                $ref: '#/components/schemas/Money'
              status:
                type: string
                enum: [ON_TRACK, AT_RISK, EXCEEDED]
    CalendarEventRequest:
      type: object
      properties:
        title:
          type: string
        amount:
          $ref: '#/components/schemas/Money'
        dueDate:
          type: string
          format: date
        type:
          type: string
          enum: [BILL, INVOICE, TAX, SALARY, OTHER]
        recurrence:
          type: string
          enum: [SINGLE, WEEKLY, MONTHLY, QUARTERLY, YEARLY]
        tags:
          type: array
          items:
            type: string
    CalendarEvent:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        amount:
          $ref: '#/components/schemas/Money'
        dueDate:
          type: string
          format: date
        type:
          type: string
        recurrence:
          type: string
        status:
          type: string
          enum: [OPEN, PAID, OVERDUE, CANCELLED]
    CalendarEventList:
      type: object
      properties:
        events:
          type: array
          items:
            $ref: '#/components/schemas/CalendarEvent'
    CalendarEventSummaryList:
      type: object
      properties:
        summaries:
          type: array
          items:
            type: object
            properties:
              periodStart:
                type: string
                format: date
              periodEnd:
                type: string
                format: date
              eventCount:
                type: integer
                format: int32
              totalAmount:
                $ref: '#/components/schemas/Money'
    ReconciliationRequest:
      type: object
      properties:
        transactionId:
          type: string
        amount:
          $ref: '#/components/schemas/Money'
    Reconciliation:
      type: object
      properties:
        id:
          type: string
        calendarEventId:
          type: string
        transactionId:
          type: string
        amount:
          $ref: '#/components/schemas/Money'
        reconciledAt:
          type: string
          format: date-time
    Money:
      type: object
      properties:
        amount:
          type: string
        currencyCode:
          type: string
    Error:
      type: object
      properties:
        errorMessage:
          type: string
        errorCode:
          type: string