API Gợi ý sản phẩm

API này cung cấp nhiều loại gợi ý sản phẩm thông minh dựa trên logic hệ thống hiện tại, bao gồm voucher, freeship và giá thành viên.
Ví dụ minh họa: Gợi ý sản phẩm
GET https://api.socdo.vn/v1/product_suggest
Các tham số:
  • type: Loại gợi ý (mặc định: home_suggest)
    • home_suggest - Gợi ý trang chủ (sản phẩm 3 tháng gần đây, có kho)
    • related - Sản phẩm liên quan (cần product_id)
    • bestseller - Sản phẩm bán chạy
    • featured - Sản phẩm nổi bật
    • flash_sale - Sản phẩm flash sale
    • newest - Sản phẩm mới nhất
    • random - Sản phẩm ngẫu nhiên
  • product_id: ID sản phẩm gốc (cho type=related)
  • category_id: Lọc theo danh mục (tùy chọn)
  • user_id: ID người dùng
  • limit: Số sản phẩm trả về (mặc định: 40, tối đa: 100)
  • exclude_ids: Loại trừ các ID sản phẩm (cách nhau bởi dấu phẩy)
  • is_member: Là thành viên (1) hay không (0) - để hiển thị giá CTV

Các loại gợi ý chi tiết:

1. Gợi ý trang chủ (home_suggest)

Sản phẩm đăng trong 3 tháng gần đây, có kho, kết hợp với reviews và ratings từ product_comments.
GET https://api.socdo.vn/v1/product_suggest?type=home_suggest&limit=40&is_member=1

2. Sản phẩm liên quan (related)

Gợi ý dựa trên sản phẩm hiện tại, ưu tiên cùng thương hiệu, danh mục và khoảng giá tương tự.
GET https://api.socdo.vn/v1/product_suggest?type=related&product_id=123&limit=8

3. Sản phẩm bán chạy (bestseller)

Sản phẩm có lượng bán cao nhất, có kho.
GET https://api.socdo.vn/v1/product_suggest?type=bestseller&category_id=1&limit=10
Ví dụ gợi ý trang chủ bằng cURL:
curl -X GET "https://api.socdo.vn/v1/product_suggest?type=home_suggest&limit=40&is_member=1" -H "Authorization: Bearer <token>"
Ví dụ gợi ý sản phẩm liên quan bằng PHP:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.socdo.vn/v1/product_suggest?" . http_build_query([
    "type" => "related",
    "product_id" => 123,
    "limit" => 8,
    "exclude_ids" => "124,125,126",
    "is_member" => 1
]));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer <token>"
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
Dữ liệu trả về mẫu (home_suggest):
{
    "success": true,
    "message": "Lấy gợi ý sản phẩm thành công",
    "data": {
        "type": "home_suggest",
        "total_products": 40,
        "products": [
            {
                "id": "456",
                "ma_sanpham": "SP002",
                "tieu_de": "iPhone 15 Pro",
                "minh_hoa": "/uploads/minh-hoa/iphone15pro.jpg",
                "gia_cu": 30000000,
                "gia_moi": 25000000,
                "gia_ctv": 24000000,
                "thuong_hieu": "Apple",
                "kho": 80,
                "ban": 45,
                "view": 2500,
                "box_banchay": 1,
                "box_noibat": 1,
                "date_post": "1695020400",
                "link": "iphone-15-pro",
                "noi_bat": "Chip A17 Pro, Camera 48MP Pro",
                "shop": "123",
                "pl": "789",
                "total_reviews": 45,
                "avg_rating": 4.8,
                "gia_cu_formatted": "30,000,000",
                "gia_moi_formatted": "25,000,000",
                "gia_ctv_formatted": "24,000,000",
                "discount_percent": 17,
                "date_post_formatted": "18/09/2023 15:00:00",
                "image_url": "https://api.socdo.vn/uploads/thumbs/sanpham_anh_340x340/iphone15pro.jpg",
                "product_url": "https://api.socdo.vn/san-pham/456/iphone-15-pro.html",
                "badges": ["Bán chạy", "Nổi bật", "-17%", "Voucher", "Freeship", "Chính hãng"],
                "voucher_icon": "Voucher",
                "freeship_icon": "Freeship",
                "chinhhang_icon": "Chính hãng",
                "sold_count": 89,
                "star_html": "",
                "price_thanhvien": "24,000,000₫"
            }
        ],
        "parameters": {
            "product_id": 0,
            "category_id": 0,
            "user_id": 0,
            "limit": 40,
            "exclude_ids": "",
            "is_member": 1
        }
    }
}
Logic gợi ý theo hàm list_home_goiy:
  • Home suggest: Sản phẩm đăng trong 3 tháng gần đây, có kho > 0, JOIN với phanloai_sanpham và product_comments
  • Giá thành viên: Hiển thị khi is_member=1, lấy từ bảng phanloai_sanpham hoặc sanpham
  • Voucher/Freeship: Tự động check từ bảng coupon và transport
  • Hình ảnh: Ưu tiên thumbnail 340x340, fallback về ảnh gốc
  • Rating: Lấy từ product_comments hoặc fake data
  • Badges: Bao gồm Bán chạy, Nổi bật, Flash sale, Voucher, Freeship, Chính hãng
Các bảng database liên quan:
  • sanpham: Thông tin sản phẩm chính
  • phanloai_sanpham: Phân loại và giá chi tiết
  • product_comments: Đánh giá và rating
  • coupon: Voucher giảm giá
  • transport: Chính sách vận chuyển
Lưu ý:
  • Bạn cần lấy token xác thực trước khi gọi API này
  • Chỉ trả về sản phẩm có kho > 0
  • API tự động tính giá từ bảng phanloai_sanpham nếu có
  • Tự động check voucher và freeship theo thời gian thực
  • Hình ảnh ưu tiên thumbnail để tối ưu tốc độ tải
  • Rating và reviews được lấy từ bảng product_comments
  • Giá thành viên chỉ hiển thị khi is_member=1
API Mini App Documentation
Tài liệu hướng dẫn tích hợp API cho ứng dụng Mini App của Sóc Đỏ. Cung cấp các endpoint để phát triển ứng dụng di động với đầy đủ tính năng.
Base URL: https://api.socdo.vn/mini-app/v1/
Ví dụ tích hợp cơ bản
// Khởi tạo Mini App
const miniApp = new SocdoMiniApp({
    appId: 'your-app-id',
    secretKey: 'your-secret-key',
    environment: 'production' // hoặc 'sandbox'
});

// Xác thực người dùng
const authResult = await miniApp.auth.login({
    phone: '0123456789',
    password: 'password123'
});

// Lấy danh sách sản phẩm
const products = await miniApp.products.list({
    page: 1,
    limit: 20,
    category: 'electronics'
});
                        
Response mẫu
{
    "success": true,
    "data": {
        "products": [
            {
                "id": 1,
                "name": "iPhone 15 Pro",
                "price": 29990000,
                "image": "https://example.com/image.jpg",
                "category": "electronics"
            }
        ],
        "pagination": {
            "page": 1,
            "limit": 20,
            "total": 100
        }
    },
    "message": "Lấy danh sách sản phẩm thành công"
}