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