A Comprehensive Financial Management RESTful API
FinTrackWebApi is a robust financial management system that provides comprehensive tools for personal and business financial tracking. Built with ASP.NET Core, it offers a secure and scalable solution for managing finances with modern features and AI integration.
# Authentication
POST /api/auth/login
POST /api/auth/register
POST /api/auth/refresh-token
# Financial Management
GET /api/transactions
POST /api/transactions
PUT /api/transactions/{id}
DELETE /api/transactions/{id}
# Budget Management
GET /api/budgets
POST /api/budgets
PUT /api/budgets/{id}
DELETE /api/budgets/{id}
# Account Management
GET /api/accounts
POST /api/accounts
PUT /api/accounts/{id}
DELETE /api/accounts/{id}
# AI Chatbot
POST /api/chatbot/query
GET /api/chatbot/history
# Lending System
GET /api/loans
POST /api/loans
PUT /api/loans/{id}
DELETE /api/loans/{id}
-- Core Tables
CREATE TABLE Users (
Id INT PRIMARY KEY,
Username NVARCHAR(50),
Email NVARCHAR(100),
PasswordHash NVARCHAR(MAX),
CreatedAt DATETIME
);
CREATE TABLE Accounts (
Id INT PRIMARY KEY,
UserId INT,
Name NVARCHAR(50),
Balance DECIMAL(18,2),
Currency NVARCHAR(3),
CreatedAt DATETIME
);
CREATE TABLE Transactions (
Id INT PRIMARY KEY,
AccountId INT,
Amount DECIMAL(18,2),
Type NVARCHAR(20),
Category NVARCHAR(50),
Description NVARCHAR(MAX),
Date DATETIME
);
CREATE TABLE Budgets (
Id INT PRIMARY KEY,
UserId INT,
Category NVARCHAR(50),
Amount DECIMAL(18,2),
Period NVARCHAR(20),
StartDate DATETIME,
EndDate DATETIME
);
CREATE TABLE Loans (
Id INT PRIMARY KEY,
LenderId INT,
BorrowerId INT,
Amount DECIMAL(18,2),
InterestRate DECIMAL(5,2),
Status NVARCHAR(20),
DueDate DATETIME
);