Bạn có thể tạo link để đưa khách hàng đi thẳng tới trang thanh toán cho một hoặc nhiều sản phẩm. Khi khách mở link, hệ thống sẽ thêm sản phẩm vào giỏ hàng thanh toán, sau đó chuyển tới trang:
/checkout/shopping-cart
Cách này phù hợp khi bạn muốn gắn nút “Mua ngay”, “Thanh toán ngay” trong bài viết, landing page, banner, email, chatbot hoặc tin nhắn tư vấn.

Thanh toán một sản phẩm

Cấu trúc link cơ bản:
/products/{productCode}/checkout
Ví dụ:
/products/sach-bao-tap-tay-son/checkout
Trong đó productCode là mã sản phẩm trên hệ thống.

Thanh toán một sản phẩm có số lượng

Thêm tham số quantity vào cuối link:
/products/sach-bao-tap-tay-son/checkout?quantity=2
Ví dụ mua 3 cuốn:
/products/truyen-tranh-co-chua/checkout?quantity=3
Nếu không truyền quantity, hệ thống mặc định là 1.

Thanh toán sản phẩm có màu, kích thước, chất liệu

Nếu sản phẩm có biến thể, có thể truyền thêm:
sizeName
colorName
materialName
quantity
Ví dụ mua sách màu xanh, kích thước A5, chất liệu bìa mềm, số lượng 2:
/products/sach-bao-tap-tay-son/checkout?colorName=xanh&sizeName=a5&materialName=bia-mem&quantity=2
Ví dụ mua móc khóa màu vàng, kích thước nhỏ, chất liệu kim loại, số lượng 5:
/products/moc-khoa-ky-thien-lenh/checkout?colorName=vang&sizeName=nho&materialName=kim-loai&quantity=5
Ví dụ mua sticker chất liệu giấy bóng, số lượng 2:
/products/set-sticker-va-moc-khoa/checkout?materialName=giay-bong&quantity=2
Lưu ý: giá trị colorName, sizeName, materialName nên dùng đúng mã biến thể trong hệ thống, không nhất thiết là tên hiển thị ngoài giao diện. Nếu giá trị có dấu hoặc khoảng trắng, hãy encode URL, ví dụ Bìa cứng thành B%C3%ACa%20c%E1%BB%A9ng.

Tạo link khuyến mại bằng mã giảm giá

Nếu muốn tạo link khuyến mại để khách bấm vào là được điền sẵn mã giảm giá ở trang checkout, thêm tham số:
discountCode
flowchart TD
    A["Tạo link sản phẩm"] --> B["Thêm discountCode vào URL"]
    B --> C["Khách bấm link khuyến mại"]
    C --> D["Hệ thống ghi nhớ mã giảm giá"]
    D --> E["Chuyển tới trang checkout"]
    E --> F["Mã giảm giá được điền sẵn"]
    F --> G["Khách kiểm tra và thanh toán"]

    classDef start fill:#0ea5e9,stroke:#0369a1,color:#ffffff;
    classDef code fill:#22c55e,stroke:#15803d,color:#ffffff;
    classDef action fill:#f59e0b,stroke:#b45309,color:#ffffff;
    classDef checkout fill:#8b5cf6,stroke:#6d28d9,color:#ffffff;
    classDef finish fill:#ec4899,stroke:#be185d,color:#ffffff;
    class A start;
    class B,D code;
    class C,E action;
    class F checkout;
    class G finish;
    linkStyle default stroke:#94a3b8,stroke-width:1.5px;
Ví dụ thanh toán một sản phẩm kèm mã giảm giá SACH10:
/products/sach-bao-tap-tay-son/checkout?discountCode=SACH10
Nếu link đã có tham số khác như quantity, colorName, sizeName, materialName, hãy nối thêm bằng dấu &:
/products/sach-bao-tap-tay-son/checkout?quantity=2&discountCode=SACH10
Ví dụ sản phẩm có biến thể, số lượng 2 và mã giảm giá:
/products/sach-bao-tap-tay-son/checkout?colorName=xanh&sizeName=a5&materialName=bia-mem&quantity=2&discountCode=SACH10
Tham số discountCode cũng dùng được với link thanh toán nhiều sản phẩm:
/products/checkout?productCodes=truyen-tranh-co-chua,set-sticker-va-moc-khoa&productQuantities=1,2&discountCode=COMBO15
Khi khách mở link, hệ thống sẽ ghi nhớ mã giảm giá này và đưa sang trang /checkout/shopping-cart để điền sẵn khi thanh toán. Mã giảm giá vẫn cần là mã hợp lệ trong hệ thống, còn hạn sử dụng và phù hợp với sản phẩm hoặc đơn hàng.

Thanh toán một sản phẩm và xóa giỏ hàng cũ

Nếu muốn khách chỉ thanh toán sản phẩm trong link, không giữ các sản phẩm đã có sẵn trong giỏ, thêm:
clearShoppingCart=true
Ví dụ:
/products/bg-thien-can-dia-chi-global/checkout?clearShoppingCart=true
Có thể kết hợp với số lượng và biến thể:
/products/sach-bao-tap-tay-son/checkout?colorName=do&sizeName=a4&materialName=bia-cung&quantity=1&clearShoppingCart=true

Thanh toán nhiều sản phẩm

Cấu trúc link:
/products/checkout?productCodes={code1},{code2},{code3}
Ví dụ:
/products/checkout?productCodes=co-tuong-phien-ban-trinh-nguyen-phan-tranh,moc-khoa-ky-thien-lenh,truyen-tranh-co-chua,set-sticker-va-moc-khoa

Thanh toán nhiều sản phẩm có số lượng

Dùng thêm productQuantities. Thứ tự số lượng phải khớp với thứ tự trong productCodes.
/products/checkout?productCodes=truyen-tranh-co-chua,set-sticker-va-moc-khoa,moc-khoa-ky-thien-lenh&productQuantities=1,2,5
Nghĩa là:
truyen-tranh-co-chua: 1
set-sticker-va-moc-khoa: 2
moc-khoa-ky-thien-lenh: 5

Thanh toán nhiều sản phẩm có màu, kích thước, chất liệu

Có thể truyền thêm các danh sách:
productSizeNames
productColorNames
productMaterialNames
productQuantities
Các danh sách này cũng phải cùng thứ tự với productCodes.
Ví dụ:
/products/checkout?productCodes=sach-bao-tap-tay-son,moc-khoa-ky-thien-lenh,set-sticker-va-moc-khoa&productSizeNames=a5,nho,combo&productColorNames=xanh,vang,do&productMaterialNames=bia-mem,kim-loai,giay-bong&productQuantities=2,5,1
Nghĩa là:
sach-bao-tap-tay-son: size a5, màu xanh, bìa mềm, số lượng 2
moc-khoa-ky-thien-lenh: size nhỏ, màu vàng, kim loại, số lượng 5
set-sticker-va-moc-khoa: size combo, màu đỏ, giấy bóng, số lượng 1

Lưu ý khi tạo link

Chỉ dùng mã sản phẩm đã được xuất bản. Nếu mã sản phẩm không tồn tại hoặc chưa bán, link sẽ không checkout được.
Với nhiều sản phẩm, thứ tự của productCodes, productSizeNames, productColorNames, productMaterialNames, productQuantities rất quan trọng.
Nếu không cần chọn màu, kích thước hoặc chất liệu, có thể bỏ qua các tham số đó.
Nên kiểm tra link trên trình duyệt trước khi gắn lên bài viết, banner hoặc gửi cho khách hàng.