Download OpenAPI specification:Download
API cung cấp dữ liá»u khách hà ng, danh mục Äầu tư, lá»ch sá» giao dá»ch và thá»ng kê hiá»u quả Äầu tư cho HocChungKhoan CMS.
Truy vấn chi tiết há» sÆ¡ khách hà ng theo slug, bao gá»m thông tin cá nhân, nhân viên chÄm sóc và danh sách tà i khoản liên kết.
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng (và dụ: bangnh) |
{- "success": true,
- "data": {
- "id": "a1b07384-c113-4ec2-a5d6-c95a2d67d7d4",
- "slug": "bangnh",
- "name": "Nguyen Huu Bang",
- "email": "bangnh@example.com",
- "phone": "0987654321",
- "staff_id": "d3b07384-d113-4ec2-a5d6-c95a2d67d712",
- "staff": {
- "id": "d3b07384-d113-4ec2-a5d6-c95a2d67d712",
- "name": "Lê VÄn A",
- "email": "vana.le@hocchungkhoan.com"
}, - "accounts": [
- {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "customer_id": "a1b07384-c113-4ec2-a5d6-c95a2d67d7d4",
- "broker_id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
]
}
}Truy vấn danh sách holdings (mã cá» phiếu, khá»i lượng, giá vá»n, công ty chứng khoán) cá»§a khách hà ng theo slug.
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
{- "success": true,
- "data": [
- {
- "id": "f4b07384-f113-4ec2-a5d6-c95a2d67d7b2",
- "stock_code": "FPT",
- "isin_code": "VN000000FPT4",
- "quantity": 1500,
- "avg_cost": 125000,
- "total_cost": 187500000,
- "account": {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
}
]
}Truy vấn toà n bá» lá»ch sá» giao dá»ch mua/bán cá»§a khách hà ng há» trợ phân trang và bá» lá»c theo mã cá» phiếu, công ty chứng khoán, loại giao dá»ch.
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
| page | integer Default: 1 Sá» trang kết quả (mặc Äá»nh: 1) |
| per_page | integer Default: 10 Sá» lượng kết quả trên má»i trang (mặc Äá»nh: 10) |
| broker | string Mã công ty chứng khoán Äá» lá»c (và dụ: SSI, PINETREE) |
| stock_code | string Mã chứng khoán Äá» lá»c (và dụ: FPT, HPG) |
| type | string Enum: "buy" "sell" Loại giao dá»ch (buy hoặc sell) |
| start_date | string <date> Ngà y bắt Äầu lá»c (YYYY-MM-DD) |
| end_date | string <date> Ngà y kết thúc lá»c (YYYY-MM-DD) |
{- "success": true,
- "data": [
- {
- "id": "7a007384-a113-4ec2-a5d6-c95a2d67d7a1",
- "trade_date": "2026-05-20",
- "stock_code": "FPT",
- "isin_code": "VN000000FPT4",
- "type": "buy",
- "quantity": 500,
- "price": 126000,
- "total_value": 63000000,
- "fee": 63000,
- "personal_tax": 0,
- "account": {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
}
], - "pagination": {
- "page": 1,
- "per_page": 10,
- "total": 45
}
}Truy vấn lá»ch sá» giao dá»ch lá»c theo ID tà i khoản chứng khoán cụ thá» cá»§a khách hà ng.
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
| accountId required | string <uuid> UUID tà i khoản chứng khoán liên kết |
| page | integer Default: 1 |
| per_page | integer Default: 10 |
{- "success": true,
- "data": [
- {
- "id": "7a007384-a113-4ec2-a5d6-c95a2d67d7a1",
- "trade_date": "2026-05-20",
- "stock_code": "FPT",
- "isin_code": "VN000000FPT4",
- "type": "buy",
- "quantity": 500,
- "price": 126000,
- "total_value": 63000000,
- "fee": 63000,
- "personal_tax": 0,
- "account": {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
}
], - "pagination": {
- "page": 1,
- "per_page": 10,
- "total": 45
}
}Truy vấn thá»ng kê tá»ng giá trá» mua/bán, tá»ng phà thuế và lợi nhuáºn thá»±c tế (realized P&L) cá»§a khách hà ng.
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
{- "success": true,
- "data": {
- "total_buy_value": 540000000,
- "total_sell_value": 620000000,
- "total_buy_fee": 540000,
- "total_sell_fee": 620000,
- "total_tax": 620000,
- "realized_pnl": 80000000,
- "transaction_count": 34,
- "date_range": {
- "from": "2026-01-10",
- "to": "2026-05-24"
}
}
}Truy vấn phân tÃch hiá»u quả giao dá»ch và phong cách Äầu tư cá»§a khách hà ng theo slug (bao gá»m win rate, profit factor, holding time, trading frequency, và top 5 thắng/thua).
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng (và dụ: bangnh) |
{- "success": true,
- "data": {
- "summary": {
- "total_deals": 14,
- "win_deals": 9,
- "loss_deals": 5,
- "win_rate": 0.643,
- "avg_win_pnl": 12000000,
- "avg_loss_pnl": -4500000,
- "profit_factor": 4.8,
- "avg_holding_days_win": 18.5,
- "avg_holding_days_loss": 12.3,
- "total_realized_pnl": 85500000,
- "total_fee_tax": 1160000,
- "monthly_trade_counts": {
- "2026-01": 4,
- "2026-02": 6,
- "2026-03": 8,
- "2026-04": 10,
- "2026-05": 6
}
}, - "top_wins": [
- {
- "stock_code": "FPT",
- "sell_date": "2026-05-18",
- "realized_pnl": 25000000,
- "holding_days": 22,
- "quantity_sold": 1000
}
], - "top_losses": [
- {
- "stock_code": "FPT",
- "sell_date": "2026-05-18",
- "realized_pnl": 25000000,
- "holding_days": 22,
- "quantity_sold": 1000
}
]
}
}Truy vấn toà n bá» dữ liá»u há» sÆ¡, danh mục holdings, thá»ng kê P&L và phân tÃch phong cách giao dá»ch chá» trong má»t lượt gá»i duy nhất giúp giảm sá» lượng HTTP request từ frontend.
| slug required | string Slug Äá»nh danh duy nhất cá»§a khách hà ng |
{- "success": true,
- "data": {
- "customer": {
- "id": "a1b07384-c113-4ec2-a5d6-c95a2d67d7d4",
- "slug": "bangnh",
- "name": "Nguyen Huu Bang",
- "email": "bangnh@example.com",
- "phone": "0987654321",
- "staff_id": "d3b07384-d113-4ec2-a5d6-c95a2d67d712",
- "staff": {
- "id": "d3b07384-d113-4ec2-a5d6-c95a2d67d712",
- "name": "Lê VÄn A",
- "email": "vana.le@hocchungkhoan.com"
}, - "accounts": [
- {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "customer_id": "a1b07384-c113-4ec2-a5d6-c95a2d67d7d4",
- "broker_id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
]
}, - "portfolio": [
- {
- "id": "f4b07384-f113-4ec2-a5d6-c95a2d67d7b2",
- "stock_code": "FPT",
- "isin_code": "VN000000FPT4",
- "quantity": 1500,
- "avg_cost": 125000,
- "total_cost": 187500000,
- "account": {
- "id": "c1b07384-b113-4ec2-a5d6-c95a2d67d7e3",
- "account_no": "0001234567",
- "broker": {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
}
}
], - "stats": {
- "total_buy_value": 540000000,
- "total_sell_value": 620000000,
- "total_buy_fee": 540000,
- "total_sell_fee": 620000,
- "total_tax": 620000,
- "realized_pnl": 80000000,
- "transaction_count": 34,
- "date_range": {
- "from": "2026-01-10",
- "to": "2026-05-24"
}
}, - "analytics": {
- "summary": {
- "total_deals": 14,
- "win_deals": 9,
- "loss_deals": 5,
- "win_rate": 0.643,
- "avg_win_pnl": 12000000,
- "avg_loss_pnl": -4500000,
- "profit_factor": 4.8,
- "avg_holding_days_win": 18.5,
- "avg_holding_days_loss": 12.3,
- "total_realized_pnl": 85500000,
- "total_fee_tax": 1160000,
- "monthly_trade_counts": {
- "2026-01": 4,
- "2026-02": 6,
- "2026-03": 8,
- "2026-04": 10,
- "2026-05": 6
}
}, - "top_wins": [
- {
- "stock_code": "FPT",
- "sell_date": "2026-05-18",
- "realized_pnl": 25000000,
- "holding_days": 22,
- "quantity_sold": 1000
}
], - "top_losses": [
- {
- "stock_code": "FPT",
- "sell_date": "2026-05-18",
- "realized_pnl": 25000000,
- "holding_days": 22,
- "quantity_sold": 1000
}
]
}
}
}Truy vấn danh mục các công ty chứng khoán ÄÆ°á»£c há» trợ trong há» thá»ng (và dụ: SSI, Pinetree).
{- "success": true,
- "data": [
- {
- "id": "e2b07384-a113-4ec2-a5d6-c95a2d67d7f1",
- "name": "SSI Securities",
- "code": "SSI"
}
]
}Cho phép Admin trigger thá»§ công viá»c kéo dữ liá»u thay Äá»i từ Neon Postgres sang Insforge Postgres.
| X-Admin-Key required | string API key xác thá»±c quyá»n Admin |
{- "success": true,
- "data": {
- "synced_rows": 145,
- "duration_ms": 320
}
}