Chuyển tới nội dung chính

reportAnalytics

reportAnalytics là API dùng để ghi nhận dữ liệu của một số sự kiện tuỳ chỉnh. Khi khách hàng truy xuất MiniApp sẽ có những system events được gửi lên hệ thống như page_view, tuy nhiên với những tác vụ đặc biệt thì developer có thể gửi những analytics tùy biến của mình lên, để từ đó có thể tổng hợp ra những phân tích hỗ trợ phát triển kinh doanh của MiniApp.

Các sự kiện hỗ trợ

Auto-tracked events

Đây là các event mà SDK tự động bắn, developer không cần code gì

miniapp_open

Trigger khi User mở Mini App thành công (first page loaded)

{
"event_name": "miniapp_open",
"properties": {
"page_path": "/home", //
"page_title": "Trang chủ", // Chưa có
"referrer": "home_screen", // home_screen | notification | deeplink | qr_code
"is_first_open": false, // Chưa có
"app_query": "...", // Mini app params/query
"utm_source": "home", // Attribution
"utm_medium": "quicklink",
"utm_campaign": "HPNY"
}
}

miniapp_close

Trigger khi User đóng Mini App

{
"event_name": "miniapp_close",
"properties": {
"page_path": "/home", // Trang khi mini app đóng - Chưa có
"page_title": "Trang chủ" // Chưa có
}
}

page_view

Trigger khi User navigate đến một page mới (kể cả first page)

{
"event_name": "page_view",
"properties": {
"page_path": "/category/bike",
"page_title": "Xe máy điện",
"referrer_page": "/home", // Page trước đó
"is_first_page_in_session": false, // có phải trang đầu tiên
"app_query": "id=12345"
}
}

permission_request

Trigger khi User trả lời permission prompt (accept/reject)

{
"event_name": "permission_request",
"properties": {
"permission_type": "location",
"permission_result": "accept", // accept | reject
"trigger_page": "/store-locator" // Page nơi request xảy ra - tạm thời chưa có
}
}

permission_grant / permission_revoke

Trigger khi User thay đổi permission trong Quản lý riêng tư

{
"event_name": "permission_revoke",
"properties": {
"permission_type": "location",
"previous_state": "enabled",
"trigger_source": "privacy_page" // privacy_page
}
}

Custom events

Đây là các event mà developer phải gắn. Nếu developer muốn bắn custom event ngoài những event phía dưới thì có thể sử dụng structure dưới đây, sau đó liên hệ team PTNT để được whiltelist.


import apis from '@v-miniapp/apis'

apis.reportAnalytics("event_name", {
payload...
})

view_item

Trigger: User xem chi tiết danh sách sản phẩm/nội dung

Ecommerce Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
currencystringVNDĐơn vị tiền tệ
valuenumber115000Tổng giá trị của các sản phẩm vừa xem
itemsItem[]Danh sách các sản phẩm vừa xem

Item Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
item_idstringSKU_12345Mã định danh sản phẩm.
item_namestringStan and Friends TeeTên của sản phẩm.
item_pricenumber10000Giá sản phẩm.
item_variantstringgreenPhẩn bản của sản phẩm.
item_brandstringGoogleThương hiệu của sản phẩm.
item_categorystringApparelDanh mục của sản phẩm.
item_category2stringAdultDanh mục của sản phẩm.
item_category3stringShirtsDanh mục của sản phẩm.
item_category4stringCrewDanh mục của sản phẩm.
item_category5stringShort sleeveDanh mục của sản phẩm.
quantitynumber1số lượng của sản phẩm đó.

Sử dụng

Ví dụ sau dùng để ghi nhận đơn hàng lên hệ thống analytics:

import apis from '@v-miniapp/apis'

apis.reportAnalytics('view_item', {
currency: 'VND',
value: 150000,
items: [
{
item_id: 'SKU_12345',
item_name: 'Stan and Friends Tee',
item_price: 50000,
item_variant: 'green',
item_brand: 'Google',
item_category: 'Apparel',
item_category2: 'Adult',
item_category3: 'Shirts',
item_category4: 'Crew',
item_category5: 'Short sleeve',
quantity: 3,
},
],
})
---oOo---

add_to_cart

Trigger khi User thêm sản phẩm vào giỏ

Ecommerce Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
currencystringVNDĐơn vị tiền tệ
valuenumber115000Tổng giá trị các sản phẩm vừa thêm vào giỏ
itemsItem[]Danh sách các sản phẩm vừa xem

Item Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
item_idstringSKU_12345Mã định danh sản phẩm.
item_namestringStan and Friends TeeTên của sản phẩm.
item_pricenumber50000Giá sản phẩm.
item_variantstringgreenPhẩn bản của sản phẩm.
item_brandstringGoogleThương hiệu của sản phẩm.
item_categorystringApparelDanh mục của sản phẩm.
item_category2stringAdultDanh mục của sản phẩm.
item_category3stringShirtsDanh mục của sản phẩm.
item_category4stringCrewDanh mục của sản phẩm.
item_category5stringShort sleeveDanh mục của sản phẩm.
quantitynumber1số lượng của sản phẩm đó.

Sử dụng

Ví dụ sau dùng để ghi nhận đơn hàng lên hệ thống analytics:

import apis from '@v-miniapp/apis'

apis.reportAnalytics('add_to_cart', {
currency: 'VND',
value: 150000,
items: [
{
item_id: 'SKU_12345',
item_name: 'Stan and Friends Tee',
item_price: 50000,
item_variant: 'green',
item_brand: 'Google',
item_category: 'Apparel',
item_category2: 'Adult',
item_category3: 'Shirts',
item_category4: 'Crew',
item_category5: 'Short sleeve',
quantity: 3,
},
],
})
---oOo---

remove_from_cart

Trigger khi user xóa 1 mặt hàng khỏi giỏ hàng

Ecommerce Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
currencystringVNDĐơn vị tiền tệ
valuenumber115000Tổng giá các sản phẩm vừa xóa khỏi giỏ
itemsItem[]Danh sách các sản phẩm vừa xem

Item Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
item_idstringSKU_12345Mã định danh sản phẩm.
item_namestringStan and Friends TeeTên của sản phẩm.
item_pricenumber50000Giá sản phẩm.
item_variantstringgreenPhẩn bản của sản phẩm.
item_brandstringGoogleThương hiệu của sản phẩm.
item_categorystringApparelDanh mục của sản phẩm.
item_category2stringAdultDanh mục của sản phẩm.
item_category3stringShirtsDanh mục của sản phẩm.
item_category4stringCrewDanh mục của sản phẩm.
item_category5stringShort sleeveDanh mục của sản phẩm.
quantitynumber1số lượng của sản phẩm đó.

Sử dụng

Ví dụ sau dùng để ghi nhận đơn hàng lên hệ thống analytics:

import apis from '@v-miniapp/apis'

apis.reportAnalytics('remove_from_cart', {
currency: 'VND',
value: 150000,
items: [
{
item_id: 'SKU_12345',
item_name: 'Stan and Friends Tee',
item_price: 50000,
item_variant: 'green',
item_brand: 'Google',
item_category: 'Apparel',
item_category2: 'Adult',
item_category3: 'Shirts',
item_category4: 'Crew',
item_category5: 'Short sleeve',
quantity: 3,
},
],
})
---oOo---

begin_checkout

Trigger khi User bắt đầu checkout

Ecommerce Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
currencystringVNDĐơn vị tiền tệ
valuenumber115000Tổng giá trị đơn hàng.
itemsItem[]Danh sách các sản phẩm vừa xem

Item Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
item_idstringSKU_12345Mã định danh sản phẩm.
item_namestringStan and Friends TeeTên của sản phẩm.
item_pricenumber50000Giá sản phẩm.
item_variantstringgreenPhẩn bản của sản phẩm.
item_brandstringGoogleThương hiệu của sản phẩm.
item_categorystringApparelDanh mục của sản phẩm.
item_category2stringAdultDanh mục của sản phẩm.
item_category3stringShirtsDanh mục của sản phẩm.
item_category4stringCrewDanh mục của sản phẩm.
item_category5stringShort sleeveDanh mục của sản phẩm.
quantitynumber1số lượng của sản phẩm đó.

Sử dụng

Ví dụ sau dùng để ghi nhận đơn hàng lên hệ thống analytics:

import apis from '@v-miniapp/apis'

apis.reportAnalytics('begin_checkout', {
currency: 'VND',
value: 150000,
items: [
{
item_id: 'SKU_12345',
item_name: 'Stan and Friends Tee',
item_price: 50000,
item_variant: 'green',
item_brand: 'Google',
item_category: 'Apparel',
item_category2: 'Adult',
item_category3: 'Shirts',
item_category4: 'Crew',
item_category5: 'Short sleeve',
quantity: 3,
},
],
})
---oOo---

apply_promotion

Trigger khi user áp dụng voucher / promotion

Ecommerce Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
couponstringsocksSalecoupon name hoặc id
valuenumber20000Giá trị của coupon

Sử dụng

Ví dụ sau dùng để ghi nhận đơn hàng lên hệ thống analytics:

import apis from '@v-miniapp/apis'

apis.reportAnalytics("apply_promotion", {
coupon: "socksSale",
value: 20000
}
---oOo---

apply_vpoint

Trigger khi user lựa chọn sử dụng v-point để thanh toán

Ecommerce Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
amountnumber10000Giá trị của vpoint

Sử dụng

Ví dụ sau dùng để ghi nhận đơn hàng lên hệ thống analytics:

import apis from '@v-miniapp/apis'

apis.reportAnalytics('apply_vpoint', {
amount: 10000,
})
---oOo---

purchase

Trigger khi user hoàn tất thanh toàn và xem màn hình xác nhận đơn hàng thành công

Ecommerce Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
order_idstring0_123456ID của đơn hàng
transaction_idstringTXN_20251108_ABC123ID của giao dịch thanh toán
currencystringVNDĐơn vị tiền tệ
valuenumber115000Tổng giá trị đơn hàng
payment_methodstringcredit_cardPhương thức thanh toán đơn hàng
itemsItem[]Danh sách các sản phẩm thanh toán

Item Parameters

Thuộc tínhKiểu dữ liệuBắt buộcVí dụMô tả
item_idstringSKU_12345Mã định danh sản phẩm.
item_namestringStan and Friends TeeTên của sản phẩm.
item_pricenumber115000Giá sản phẩm.
item_variantstringgreenPhẩn bản của sản phẩm.
item_brandstringGoogleThương hiệu của sản phẩm.
item_categorystringApparelDanh mục của sản phẩm.
item_category2stringAdultDanh mục của sản phẩm.
item_category3stringShirtsDanh mục của sản phẩm.
item_category4stringCrewDanh mục của sản phẩm.
item_category5stringShort sleeveDanh mục của sản phẩm.
quantitynumber1số lượng của sản phẩm đó.

Sử dụng

Ví dụ sau dùng để ghi nhận đơn hàng lên hệ thống analytics:


import apis from '@v-miniapp/apis'

apis.reportAnalytics("purchase", {
order_id: "0_123456",
transaction_id: "TXN_20251108_ABC123",
currency: "VND",
value: 150000,
payment_method: "credit_card"
items: [
{
item_id: "SKU_12345",
item_name: "Stan and Friends Tee",
item_price: 50000,
item_variant: "green",
item_brand: "Google",
item_category: "Apparel",
item_category2: "Adult",
item_category3: "Shirts",
item_category4: "Crew",
item_category5: "Short sleeve",
quantity: 3
}
]
})
---oOo---