[
 {
  "id": "L-01",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ XONG 14/09/2026 ~19:05. Bước 1 cleaning fee 7 căn ×1,15 (15 MN đặt mới 575.000) · bước 2 PriceLabs Base/Min ×1,15 Save+Sync, Airbnb khớp 100 % ngày không promo · bước 3 Single fee đã lưu (task Airbnb biến mất). Hệ số 15 %, thuế tắt. Việc phát sinh: L-96",
  "task": "Airbnb đổi sang phí host-only 15,5% ngày 15/09/2026. Cảnh báo hiện ở cả Airbnb (\"Action required by September 15\") lẫn PriceLabs. Không chỉnh giá + phí dọn dẹp thì payout thực nhận giảm trên toàn bộ listing Airbnb. 14/09 — đã đọc trọn cơ chế hai tool, CHƯA áp dụng: Airbnb task CONFIRM_HOST_ONLY_FEE còn ELIGIBLE; wizard Airbnb áp ×1,1479 cho 13 listing toàn tài khoản (kể cả 4 San Jose + 2 căn ngoài PriceLabs), sửa cả cleaning/pet fee 2 năm lịch, không đảo ngược; PriceLabs preview 7 dòng chỉ Base + Min, 0 group/profile/DSO. Thứ tự theo drawer PriceLabs: Airbnb tool → PriceLabs drawer 15 % → Save → Sync. Checklist từng cú bấm ở platforms/airbnb-hof-migration-2026-09.md §5.",
  "fix_where": "PriceLabs (giá) + Airbnb (cleaning & other fee)",
  "properties": [
   "15nuocman5"
  ],
  "platforms": [
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-01/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-02",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — fact đã chốt 17/08: KHÔNG có koi. Đây là task sửa tay treo từ 17/08 (xem HANDOFF.md), nay mở rộng ra cả 3 kênh",
  "task": "\"Koi Pond\" nằm trong TIÊU ĐỀ listing của 15 Nước Mặn 5 trên CẢ BA KÊNH — Airbnb · Booking 15668679 · Agoda 84463562 (xác nhận thêm 03/09). Vault đã chốt căn này bỏ hồ cá koi, cấm nêu koi ở mọi ngôn ngữ. Đang là overclaim chạy thật trên 2 kênh → rủi ro khách khiếu nại và review xấu.",
  "fix_where": "Airbnb title + Booking property name + Agoda listing name",
  "properties": [
   "15nuocman5"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-02/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-03",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "A La Carte 305 có HAI property Booking: 13311503 (Open/Bookable) và 15702691 (Closed/Not bookable, Booking gắn nhãn \"Learn why\"). Trùng listing làm loãng review và thứ hạng.",
  "fix_where": "Booking extranet",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-03/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-04",
  "level": "—",
  "status_group": "Tạm gác",
  "status": "⏸️ Tạm gác",
  "task": "⏸️ NGOÀI PHẠM VI (03/09). 86 Phạm Cự Lượng lệch kênh: Airbnb đang Listed, Booking 15702720 đang Closed/Not bookable. Hoặc đang cố ý chỉ bán Airbnb, hoặc Booking bị đóng quên mở.",
  "fix_where": "Booking extranet",
  "properties": [],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-04/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-05",
  "level": "—",
  "status_group": "Tạm gác",
  "status": "⏸️ Tạm gác",
  "task": "⏸️ NGOÀI PHẠM VI (03/09) — user chốt chỉ làm 7 căn có sẵn hồ sơ. Ghi lại để biết: vault biết 7 căn, thực tế có 11 listing Việt Nam. Thiếu hồ sơ: 86 Phạm Cự Lượng · Ba Na Hills 1BR · Ba Na Hills 2BR · 36 Dương Tử Giang (Unlisted). Không có property_details_*.md ⇒ mọi workflow content/tin nhắn/tour đều mù với 4 căn này.",
  "fix_where": "vault/02-villas/ + business.md",
  "properties": [],
  "platforms": [],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-05/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-06",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "alacarte502 (14756473) — 03/09 báo No inventory (không mở bán phòng nào, cũng không có khách), và 17/09 → 01/10+ báo Rate closed (còn phòng nhưng khoá giá) dù giá vẫn nạp đủ. Gần hai tuần không bán được.",
  "fix_where": "Channel manager / PriceLabs — lịch gắn XML (edits overwritten)",
  "properties": [
   "alacarte502"
  ],
  "platforms": [
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-06/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-07",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Airbnb có 90 tin nhắn chưa đọc. Tốc độ phản hồi là yếu tố xếp hạng của Airbnb.",
  "fix_where": "Airbnb Inbox",
  "properties": [],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-07/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-08",
  "level": "—",
  "status_group": "Xong",
  "status": "✅ Xong",
  "task": "✅ GIẢI XONG 03/09: 36 = 25 Airbnb + 8 Booking + 3 VRBO + 0 Agoda (đọc từ /api/pd_dropdown_options). Booking nằm ở cấp room (hotelid___roomid). (nội dung cũ) PriceLabs đồng bộ 36 listing trong khi Booking 9 + Airbnb 15 = 24. Chưa rõ 12 listing dôi ra là gì (Agoda? VRBO? room type tách lẻ? listing cũ?). Chưa đối chiếu thì không tin được số liệu giá/ADR của PriceLabs.",
  "fix_where": "PriceLabs → Add/Re-import Listings",
  "properties": [],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-08/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-09",
  "level": "—",
  "status_group": "Xong",
  "status": "✅ Xong",
  "task": "Bốn listing San Jose, CA nằm chung tài khoản Airbnb. ✅ Chốt 03/09: ngoài phạm vi — không đưa vào báo cáo, không tính vào chiến lược giá Harth Living.",
  "fix_where": "—",
  "properties": [],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-09/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-10",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — nâng lên P1 10/09, cần liên hệ partner support hỏi verification còn thiếu gì",
  "task": "Booking đang tạm khoá chính sách non-refundable và prepayment cho tài khoản (\"We've temporarily disabled the non-refundable and prepayment policies\"). Ảnh hưởng khả năng giữ tiền cọc. Chưa rõ lý do và thời hạn. 🔎 Đo lại 10/09/2026 — nguyên nhân đã rõ, và rộng hơn tưởng: trang policies.html của 14756473 ghi nguyên văn \"Prepayment options are temporarily paused while we finish verifying your property. Until your verification is complete, please collect payment directly from the guest at check-in.\" ⇒ cửa chặn là property verification, không phải hình phạt. Đồng thời, cả 7 property đều KHÔNG bật được Payments by Booking.com: endpoint finance_settings_pbb_status trả pbbStatus.type = inactive và canOptIn = false, finance_settings_bank_details trả showBankDetails = false / hasBankDetails = false, payoutOptionList = [], bank_details_status = no_bank_transfer, bhfsState = BHFS_NONE. ⇒ không có chỗ nào để khai tài khoản ngân hàng nhận tiền khách trả trước, và cũng chưa có nút xin bật. Cả hai đường thu tiền trước (Booking thu hộ · mình thu bằng chính sách prepayment) đều đang đóng cùng một lý do.",
  "fix_where": "Booking extranet → Finance settings + Reservation policies",
  "properties": [],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-10/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-11",
  "level": "P1",
  "status_group": "Xong",
  "status": "🟢 Đã lên sàn 18/09/2026 — ID 96450982, chờ Agoda duyệt. Tạo bằng Fast-track import từ Booking: bước 1–5 agent điền (Location tự nhập · Villa 200 m² 8 khách 3 WC · giá min 3.450.000 · promo 33 % 3 booking đầu bật · payout ACB ∗∗∗∗1117 · 5 sao · 14:00–23:00 / 11:00 · huỷ 3 ngày), bước 6 Profile (legal name = tên căn như Booking invoice details, UBO Huy Nguyen) + Publish user làm tay. Còn lại: content (ảnh gốc, 88 tiện ích, arrival guide, nội quy, occupancy, huỷ 5 ngày) sau khi duyệt hoặc ngay khi user ra lệnh; iCal Calendar connections hai chiều nên nối ngay. Nhật ký wizard: properties/25anthuong11/_raw/2026-09-18-agoda-onboarding/wizard/",
  "task": "25anthuong11 KHÔNG có trên Agoda. Là căn duy nhất trong 7 căn vắng mặt — Agoda chỉ có 6 listing. Hoặc cố ý không bán Agoda, hoặc chưa lên sàn và đang mất một kênh phân phối.",
  "fix_where": "Agoda Partner Portal",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-11/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-12",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — checklist ở platforms/agoda-listing-playbook.md §4 + §15",
  "task": "Content score trên Agoda thấp: 181tohienthanh 43/100 · 15nuocman5 48/100 · 41lehycat 50/100 · alacarte305 70/100 · hai căn A La Carte còn lại N/A. Điểm hồ sơ ảnh hưởng hiển thị và thứ hạng. Đây là việc thuần nội dung (ảnh, mô tả, tiện ích) — đúng sở trường workspace, không đụng giá hay lịch. Trọng số chính thức (tra 04/09): ảnh property 45% + ảnh phòng 25% = 70% điểm nằm ở ảnh; tiện ích property 15% · tiện ích phòng 10% · age policy 3% · star 2%. Luật dễ bỏ sót nhất: mỗi tiện ích tick \"có\" mà thiếu ảnh gắn tag đều bị trừ điểm.",
  "fix_where": "Agoda Partner Portal → từng listing",
  "properties": [
   "15nuocman5",
   "41lehycat",
   "181tohienthanh",
   "alacarte305"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-12/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-13",
  "level": "P3",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Doanh thu MTD trên Agoda gần như trống: chỉ 181tohienthanh có số (Revenue VND 13.891.786 · ADR VND 3.975.385), 5 listing còn lại N/A. Chưa rõ N/A là không có booking hay không có dữ liệu ở cấp unit. Chưa rõ thì không dùng được để đánh giá hiệu quả kênh Agoda.",
  "fix_where": "Agoda → Analytics",
  "properties": [
   "181tohienthanh"
  ],
  "platforms": [
   "booking",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-13/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-14",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — 28/09/2026 xác minh lại trên 25anthuong11 (96450982): Connectivity quản lý trực tiếp, giá phẳng 3.450.000 VND mọi đêm 18/09/2026 → 30/04/2027 (hồ sơ)",
  "task": "Agoda KHÔNG nối vào PriceLabs — 0/36 listing. Nghĩa là 6 listing Agoda đang định giá tay/tĩnh, không theo thị trường, không đồng bộ với Airbnb và Booking. Một kênh đang bán mà giá đứng yên là chỗ rò tiền lớn nhất trong toàn hệ thống.",
  "fix_where": "PriceLabs → kết nối Agoda, hoặc quy trình chỉnh tay định kỳ",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-14/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-15",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Nối xong 11/09/2026 — PriceLabs nay 37 listing (9 bcom), có 16927056___1692705601, Property Type = Short-Term, BR = 4. NHƯNG giá chưa chạy: Enable Price Sync chưa bật, Last synced NA, nên Booking vẫn bán giá tĩnh 5.000.000. Min 3.450.000 · Base 4.600.000 · Max chưa đặt · cách làm từng bước: platforms/pricelabs-connect-booking-playbook.md",
  "task": "25anthuong11 trên Booking (16927056) không có trong PriceLabs ⇒ giá Booking của căn này là giá tĩnh. Airbnb của nó thì có. Cộng với L-11 (không có trên Agoda) ⇒ căn 4 phòng ngủ này đang được quản lý kém nhất trong 7 căn. → 18/09/2026: đã có dòng 16927056___1692705601 bcom trong PriceLabs (Min 3.450.000 · Base 4.600.000 · Max 11.500.000 · Sync ON) — ĐÓNG.",
  "fix_where": "PriceLabs → Add/Re-import Listings",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-15/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-16",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Max Price = \"Not set\" trên toàn bộ 10 dòng đọc được — không có trần giá ở bất kỳ listing nào. Riêng 502 không có cả Min lẫn Max (cả Airbnb lẫn Booking) ⇒ thả nổi hoàn toàn.",
  "fix_where": "PriceLabs → từng listing",
  "properties": [
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-16/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-17",
  "level": "P1",
  "status_group": "Đang xử lý",
  "status": "🔄 Đã kiểm 03/09, hạ mức xuống P1. Rate closed là chặn chéo kênh hoạt động đúng (Booking đóng khớp ngày Airbnb kín). Phần còn lại: Booking vẫn có nhiều ngày MỞ mà bán 0 đêm ⇒ nghiêng về giá, không phải availability",
  "task": "Booking 181tohienthanh và 15nuocman5: occupancy 0 %, doanh thu 0 suốt 30 ngày. Airbnb cùng hai căn đạt 50 % và 63 %, nên lấp đầy hợp nhất chỉ 50 % và 63 % — còn nhiều đêm trống thật. (Khác hẳn 404: căn đó Booking cũng 0 % nhưng Airbnb đã kín 100 %, nên là hệ quả chứ không phải lỗi.) Hai villa lớn nhất không bán được đêm nào qua Booking. Không phải vấn đề giá — căn 305 đắt hơn Airbnb 9,9 % mà vẫn đạt 83 % trên Booking. Nghi là Rate closed / No inventory giống hệt ca 502 (L-06).",
  "fix_where": "—",
  "properties": [
   "15nuocman5",
   "181tohienthanh",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-17/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-18",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — tách nguyên nhân 15/09/2026: 181 THT và 15 MN sai từ Booking Room details (trang khách + FAQ ghi \"1 bedroom\"; 15 MN còn khai \"1 full bed\" cho 10 khách) → sửa trên Booking; 41 LHC (Booking đã 4 BR) và 404 (Booking đã 2 BR) sai ở PriceLabs → chọn tay cột BR Count. 502/305/25 AT 11 đúng. Hướng dẫn từng bước: audits/2026-09-15-simple-fixes-guide.md",
  "task": "PriceLabs ghi sai số phòng ngủ ở BA dòng Booking: 181THT (thật 3BR) · 15MN (thật 4BR) · 41LHC (thật 4BR) — tất cả đều ghi 1 BR. PriceLabs so với comp set 1 phòng ngủ ⇒ gợi ý giá và MPI của hai dòng này sai gốc. PL đang gợi ý hạ min cho đúng hai căn đó — không được làm theo khi chưa sửa BR.",
  "fix_where": "PriceLabs → sửa cấu hình listing",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat",
   "181tohienthanh",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-18/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-19",
  "level": "P3",
  "status_group": "Tạm gác",
  "status": "⏸️ Ghi nhận",
  "task": "VRBO là kênh thứ tư, chưa từng biết — 3 listing trong PriceLabs, cả ba ở San Jose, CA. Ngoài phạm vi 7 căn nên chỉ ghi nhận, không xử lý.",
  "fix_where": "—",
  "properties": [],
  "platforms": [
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-19/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-20",
  "level": "—",
  "status_group": "Xong",
  "status": "✅ Xong",
  "task": "Đọc đủ 36/36 dòng bảng giá PriceLabs (03/09). Không phải phân trang mà là cuộn ảo — bảng chỉ giữ ~10 hàng trong DOM, cuộn container css-xidosa là render tiếp. Không cần bấm nút nào.",
  "fix_where": "—",
  "properties": [],
  "platforms": [
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-20/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-21",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 404 XONG 15/09/2026 ~18:00 (lệnh user): dòng 15702704___1570270401 đặt Min 1.552.500 · Base 2.506.360 (= dòng Airbnb 404) → Save & Refresh → bật Enable Price Sync → Sync Now (queue, đẩy 18:01:36). Gói đẩy: 54 đêm mở 22/10→14/12 giá 1.552.500–2.278.197 (TB 1.810.213) thay cho 2.500.000 phẳng; trang khách Booking 24–27/10 hiện 4.989.318 = đúng Σ 3 giá đẩy. Script mới scripts/ota-pricelabs-set-base.mjs. Còn lại: dòng ma 305 hạng 2 (1331150302) chưa ẩn; BR dòng 404 vẫn 1 (L-18); Max chưa đặt (L-33).",
  "task": "Hai dòng Booking không có Base Price: alacarte404 và alacarte305 hạng phòng 2. PriceLabs không tính được giá cho chúng, nghĩa là giá đang nằm trên Booking là giá cũ đứng im, không phải giá động. 404 còn thiếu cả Min.",
  "fix_where": "PriceLabs → đặt Min/Base cho hai dòng này",
  "properties": [
   "alacarte305",
   "alacarte404"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-21/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-22",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "25anthuong11 là listing yếu nhất danh mục. Airbnb: lấp đầy 13 %, giá thực 2.000.000 so với Base 4.000.000 — chỉ 50 % giá gốc, kém nhất cả hai trục. Cộng thêm: không có trên Agoda (L-11) và không có dòng Booking trong PriceLabs (L-15). Một villa 4 phòng ngủ đang vừa ế, vừa bán rẻ, vừa thiếu hai kênh.",
  "fix_where": "Cần soát riêng cả ba kênh",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-22/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-23",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Bảy căn trong phạm vi chưa nối cha–con trong PriceLabs, nên Base của Airbnb và Booking trôi độc lập — chênh từ 0,7 % tới 33 %. Villa 36 Dương Tử Giang (ngoài phạm vi) đã nối và có Base giống hệt nhau ở hai kênh, chứng minh cách sửa.",
  "fix_where": "PriceLabs → nối parent/child từng căn",
  "properties": [],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-23/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-24",
  "level": "P2",
  "status_group": "Xong",
  "status": "✅ Đã sửa trong báo cáo",
  "task": "Cột so sánh giá hai kênh đang so nhầm đơn vị. Base Booking là giá khách trả; Base Airbnb hiện là giá TRƯỚC phụ thu khách ~14,2 %. Quy về giá khách trả thì ba trong năm căn đảo chiều — Booking thực ra rẻ hơn ở 305, 502 và 181 THT. Từ 15/09 hai cột mới cùng đơn vị.",
  "fix_where": "Cách đọc, không phải cấu hình",
  "properties": [
   "181tohienthanh",
   "alacarte305",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-24/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-25",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ XONG 15/09/2026 ~18:15 — user ra lệnh, chạy scripts/ota-booking-cleaning-fee.mjs (script ghi mới, đi trang additional_fees.html, đọc preview trước khi Save, đọc lại khối trên property_policies.html): 181 THT 600.000 · 41 LHC 700.000 · 15 MN 600.000 (ba căn từ 0) · 25 AT 11 300.000 → 600.000 · 305 300.000 → 400.000 · 404 300.000 → 400.000 · 502 150.000 → 250.000. 7/7 đọc lại khớp, dạng VND/stay · not included in price. Trang khách còn hiện số cũ lúc 18:20 (cache Booking) — kiểm lại sau vài giờ.",
  "task": "Booking chỉ thu phí dọn ở 1/7 căn. Airbnb thu ở 6/7 (200.000–600.000₫/lượt), Booking chỉ có alacarte305 (300.000₫) — sáu căn còn lại khai \"chưa có phí phụ thu nào\". Mỗi lượt khách đặt qua Booking là mất nguyên khoản phí dọn mà cùng căn đó thu được trên Airbnb. Ngay căn 305 hai kênh cũng lệch 50.000₫.",
  "fix_where": "Booking extranet → Policies → Additional fees",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat",
   "181tohienthanh",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-25/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-26",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ XONG 15/09/2026 — Airbnb 600.000 · Booking 600.000 (đọc lại khớp cả hai).",
  "task": "15nuocman5 không thu phí dọn ở BẤT KỲ kênh nào. Airbnb để trống, Booking để trống. Hai villa cùng cỡ 4BR thu 500.000₫ (25AT11) và 600.000₫ (41LHC). Villa lớn nhất danh mục đang dọn miễn phí cho khách.",
  "fix_where": "Airbnb listing editor + Booking policies",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat"
  ],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-26/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-27",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ Giải xong 05/09 — đọc promotionSettings của cả 7 căn: activePromotions rỗng ở 5/7. Bản ghi endDate 9999-12-31 là lời mời khuyến mãi Airbnb gợi ý, không phải khuyến mãi đang chạy. Đang chạy thật chỉ có hai, đều ngắn ngày: 41lehycat −28 % 04→09/09 và alacarte305 −20 % 03→06/09 (cả hai 0 lượt dùng). ⇒ giá thực thấp hơn giá gốc không do khuyến mãi vĩnh viễn",
  "task": "Cả 7 listing Airbnb đều có một khuyến mãi endDate = 9999-12-31 mức −20 %, bắt đầu từ ngày mỗi căn lên sàn. Nếu đang chạy thật thì mọi đêm đang bị giảm 20 % vĩnh viễn — đủ để giải thích vì sao giá thực luôn thấp hơn giá gốc. Chưa xác minh là đang hoạt động hay chỉ là bản ghi lịch sử.",
  "fix_where": "Airbnb → Promotions từng listing",
  "properties": [
   "41lehycat",
   "alacarte305"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-27/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-28",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Giảm giá theo tháng đặt −10 % trong khi Airbnb gợi ý −29 % đến −43 %. Riêng 25anthuong11 Airbnb gợi ý −43 %, đúng căn có lấp đầy thấp nhất (13 %). Chưa rõ nên theo gợi ý hay không, nhưng khoảng cách quá lớn để bỏ qua.",
  "fix_where": "Airbnb listing editor → Discounts",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-28/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-29",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Giá cuối tuần còn đặt ở 4 căn Airbnb (502 · 181THT · 41LHC · 15MN) trong khi PriceLabs đẩy giá theo từng ngày. Chưa xác minh cái nào thắng — nếu giá cuối tuần vẫn áp thì nó phá chiến lược của PriceLabs.",
  "fix_where": "Airbnb + PriceLabs",
  "properties": [
   "41lehycat",
   "181tohienthanh",
   "alacarte502"
  ],
  "platforms": [
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-29/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-30",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Agoda cảnh báo \"Competitor rates are better than yours\" trên 181tohienthanh, kèm content score 43/100 \"Poor\" và chưa định nghĩa competitor set. Không có comp set thì mọi so sánh thị trường của Agoda đều mù.",
  "fix_where": "Agoda → Settings",
  "properties": [
   "181tohienthanh"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-30/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-31",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Chưa rõ Booking có tính hoa hồng trên cleaning fee dạng not included in the price hay không. Partner-help gợi ý là không; doc kỹ thuật lại nói included/excluded chỉ là cách hiển thị, không phải cách tính phí. Quyết định khai fee ở dạng nào phụ thuộc câu này.",
  "fix_where": "Hỏi Booking partner support",
  "properties": [],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-31/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-32",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ Chốt 14/09/2026: 15 %, tắt \"Adjust to Include Taxes\" (user chốt sau khi kiểm 2 đơn thật: phí host = 3,000 % subtotal, không dòng VAT; payload Airbnb EXEMPT; ERC 0402202817 VERIFIED). Ghi chú kế toán: nếu công ty tự kê khai VAT nhà thầu trên phí Airbnb và không được khấu trừ thì 16,6 % mới đúng — ngoài dữ liệu Airbnb, hỏi kế toán",
  "task": "Hệ số nâng giá cho mốc 15/09 chưa tính VAT VÀ chưa tính thuế khấu trừ tại Việt Nam. PriceLabs dặn công thức là 15 % × (1 + VAT). Thêm nữa, Airbnb có bài riêng Vietnam withholding taxes — nếu Airbnb đang khấu trừ thuế tại nguồn thì cả hệ số nâng giá lẫn phép so tiền thực nhận hai kênh đều phải tính lại.",
  "fix_where": "Đọc help/article/4085 + 436 + 437; cần user xác nhận tình trạng VAT",
  "properties": [],
  "platforms": [
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-32/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-33",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở — không chặn L-01",
  "task": "Mốc 15/09 phải nâng cả Max Price, không chỉ Min + Base — PriceLabs nói rõ cả ba. Hiện cả 36 listing đều Not set nên tạm thời vô hại, nhưng nếu đặt Max mà quên nâng thì trần sẽ chặn giá mới. 14/09: preview drawer xác nhận 7 dòng chỉ có base_price + min_price (502 không có cả Min) — không có Max để nâng, drawer sẽ không hiện dòng Max.",
  "fix_where": "PriceLabs",
  "properties": [
   "alacarte502"
  ],
  "platforms": [
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-33/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-34",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "PriceLabs không bật customization nào cho listing 305 — mục Applied Customizations rỗng. Không seasonal profile, không orphan-gap, không last-minute, không LOS. Thuật toán chạy thuần mặc định. Mới kiểm 1/7 căn.",
  "fix_where": "PriceLabs → từng listing → Applied Customizations",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-34/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-35",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Chiết khấu dài ngày nằm hoàn toàn ngoài PriceLabs. Help doc xác nhận cả Weekly/Monthly discount lẫn LOS Pricing đều không hỗ trợ Airbnb và Booking.com. Airbnb tự giữ −5%/−10%; Booking dùng rate plan riêng, và Monthly rate của 502 gắn Not XML nên là giá tĩnh. Muốn đổi chiến lược dài ngày phải sửa tay trên từng kênh.",
  "fix_where": "Airbnb listing editor · Booking rate plans",
  "properties": [
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-35/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-36",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Booking cộng thêm đúng 8 % vào (giá phòng + cleaning fee) để ra tổng khách trả — đo chính xác 1,08000 trên 3/3 booking của 13311503. Chưa xác minh 8 % đó là gì (nghi VAT dịch vụ lưu trú); trang property_policies không khai thuế. Airbnb thì không thấy khai thuế nào ⇒ nếu đúng là VAT thì khách Booking đang trả VAT còn khách Airbnb thì không — cần rà nghĩa vụ thuế.",
  "fix_where": "Booking extranet → trang VAT/thuế · Airbnb → tax settings",
  "properties": [],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-36/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-37",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Chưa biết tỷ lệ hoa hồng Booking.com của tài khoản này. Thiếu con số đó thì không so được tiền thực nhận giữa Airbnb và Booking — mà đó mới là căn cứ quyết định nên đẩy khách sang kênh nào, nhất là sau 15/09 khi Airbnb thành 15,5%. Hoa hồng Booking tính trên tiền phòng + phí phụ thu, không tính city tax, có tính VAT ở phần lớn quốc gia.",
  "fix_where": "Booking extranet → Finance / Commission",
  "properties": [],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-37/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-38",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Chênh giá Airbnb ↔ Booking không theo cấu trúc phí. Airbnb thấp hơn Booking ở 5/5 căn (đúng chiều), nhưng mức chạy 0,7 %–25,0 %, độ lệch chuẩn 8,2 điểm, trong khi mức cần để khách trả bằng nhau chỉ là 5,43 % ⇒ chiều đúng là trùng hợp, không phải thiết kế. Sau 15/09 yêu cầu đảo chiều: Airbnb phải cao hơn Booking 8 %, tức xoay 13,4 điểm. Nâng ×1,1479 giữ nguyên khoảng cách ngẫu nhiên nên không sửa được lệch kênh — sau nâng vẫn lệch từ −21,9 tới +6,0 điểm. Muốn nhất quán phải đặt lại Base theo một mốc chung, không thể chỉ nhân hệ số.",
  "fix_where": "PriceLabs → đặt lại Base cả hai kênh",
  "properties": [],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-38/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-39",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Hai property bị KẸP SÀN GIÁ trên Booking: 181tohienthanh giá phẳng 3.000.000 và 41lehycat phẳng 4.000.000 trên mọi ngày mở — đúng bằng Min Price. Thuật toán muốn xuống thấp hơn nhưng bị chặn. PriceLabs gợi ý hạ Min (2.850.000 và 3.800.000) nhưng cả hai đang khai sai BR = 1 nên gợi ý sai gốc. Sửa BR (L-18) trước, rồi mới xét hạ sàn.",
  "fix_where": "PriceLabs → BR rồi Min Price",
  "properties": [
   "41lehycat",
   "181tohienthanh"
  ],
  "platforms": [
   "booking",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-39/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-40",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Rate plan không đồng nhất giữa 7 property Booking: 15nuocman5 thiếu Monthly rate · 404 và 25AT11 có Non-refundable Rate còn 5 căn kia không · 502, 41lehycat có Monthly rate gắn Not XML, 181THT gắn Set-up ⇒ ba plan này nằm ngoài dynamic pricing, giá tĩnh.",
  "fix_where": "Booking → Rates & availability từng property",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat",
   "181tohienthanh",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-40/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-41",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Một nửa — 11/09/2026 25AT11 không còn Non-refundable Rate trên rate_plans.html (chỉ Standard 67628679 · Weekly 67628681 · Monthly 69060005, plan Monthly là mới); 404 chưa kiểm lại",
  "task": "Non-refundable Rate đang Open ở 404 và 25AT11 trong khi banner tài khoản báo \"We've temporarily disabled the non-refundable and prepayment policies\". Chưa rõ rate plan đó thực sự bán được hay khách đặt vào sẽ lỗi.",
  "fix_where": "Booking → hỏi partner support",
  "properties": [
   "25anthuong11",
   "alacarte404"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-41/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-42",
  "level": "P1",
  "status_group": "Xong",
  "status": "✅ XONG 11/09/2026 — cả bốn dấu hiệu đã lật: lịch gắn XML (edits overwritten) và mất chế độ xem theo tháng · rate_plans.html ghi Mapped from PriceLabs · channelManagerConnected: 1 · có dòng bcom trong PriceLabs · cách làm từng bước: platforms/pricelabs-connect-booking-playbook.md",
  "task": "25anthuong11 KHÔNG có nhãn XML — property duy nhất không nối channel manager, dùng giao diện Monthly view khác hẳn 6 property kia. Giá tĩnh phẳng 5.000.000₫/đêm mọi ngày, không theo mùa, không theo cuối tuần. Cùng gốc với L-15.",
  "fix_where": "PriceLabs → Add/Re-import + nối XML",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-42/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-43",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở — luật ở platforms/agoda-listing-playbook.md §5",
  "task": "4/6 tên listing Agoda phạm luật đặt tên chính thức của Agoda. Luật cấm dấu ngoặc, ký hiệu, và khuyến mãi trong tên listing: A La Carte Da Nang 2br/2ba [Free Airport Pickup] (ngoặc vuông + khuyến mãi) · Remodel 2br/2ba A La Carte [Free Airport Pickup] (ngoặc vuông + khuyến mãi) · 1BR Studio A La Carte Hotel Free Airport Pick up (ký hiệu * + khuyến mãi) · Newly built villa 4br/5ba Pool, Sauna, Elevator (không có tên riêng nào — không nhận diện được thương hiệu). Agoda cho tối đa 100 ký tự, viết hoa chữ đầu mỗi từ, giữ tên cũ tối đa 6 tháng. ⚠️ Đổi tên phải liên hệ Agoda, không tự sửa được, và Agoda duyệt theo giấy phép kinh doanh. Trùng trường với L-02 (Koi Pond trong tên 84463562) ⇒ gộp làm một lần liên hệ.",
  "fix_where": "Liên hệ Agoda (Need Help)",
  "properties": [],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-43/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-44",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — cơ chế ở agoda-listing-playbook.md §11.3",
  "task": "Chưa kiểm Auto Top-up trên 6 listing Agoda — vector overbooking chéo kênh. Agoda có tính năng tự mở lại phòng bán khi số phòng còn lại tụt dưới ngưỡng (mặc định 1 phòng), bơm lại tới tổng số phòng khai báo, lặp lại mỗi lần tụt ngưỡng, chỉ báo bằng email. Vì Agoda không nối PriceLabs (L-14) và các villa đều đang bán song song trên Airbnb + Booking, ATU bật là Agoda có thể tự mở lại đúng những đêm đã kín ở kênh khác. Chưa xác minh đang bật hay tắt. Tắt ở Property > Property Settings > Optional Settings → bỏ tick Auto topup allotment.",
  "fix_where": "Agoda Partner Portal → từng listing",
  "properties": [],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-44/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-45",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — cách làm ở agoda-listing-playbook.md §11.6",
  "task": "Chưa nối iCal giữa Agoda và Airbnb/Booking. Agoda có sẵn Calendar > Calendar connections (import + export iCal, tự làm mới vài lần/ngày) với Airbnb · Booking · Expedia · Vrbo. Giới hạn: chỉ dùng được cho room type có ĐÚNG 1 phòng ⇒ 4 villa nguyên căn thoả điều kiện, 3 unit A La Carte gắn nhãn Group listing unit phải kiểm số phòng trước. Đây là cách miễn phí giảm rủi ro của L-14 (Agoda ngoài PriceLabs) và L-44 (Auto Top-up), tuy không thay được dynamic pricing.",
  "fix_where": "Agoda → Calendar connections",
  "properties": [],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-45/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-46",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Booking 305 khai \"No internet access available\" (Property policies → Internet) trong khi welcome message nói Free High-Speed WiFi và thực tế có Wi-Fi. Khách lọc \"Free WiFi\" — bộ lọc phổ biến nhất — sẽ không thấy căn này; mô tả tự sinh cũng không nhắc Wi-Fi. Đọc 04/09 tại properties/alacarte305/booking.md §8. Cần kiểm 6 căn Booking còn lại cùng trường này.",
  "fix_where": "Booking → Property → Property policies → Internet",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-46/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-47",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Booking 305 \"You only accept cash\" (Guest Payment Options) mâu thuẫn với facility Cashless payment available = Yes. Với chính sách No prepayment + thu tiền tại chỗ, khách quốc tế thấy \"cash only\" là rào cản.",
  "fix_where": "Booking → Property policies → Guest Payment Options",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-47/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-48",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "[07/09 xong một nửa: dòng Crib upon request VND 100,000 sai trên trang khách đã gỡ được bằng cách bấm Save ở crib_and_extra_beds.html với giá trị 0/0 — xem platforms/booking.md §6d. Còn lại: chưa set child rates.] Booking 305 không set child rates, không nôi, không giường phụ → Booking ghi rõ \"children will be priced as adults\". Booking đang nhắc \"Your property is popular with families\" và gợi ý \"Increase family bookings up to 15%\". Trùng gốc với age policy Agoda (playbook §4.9).",
  "fix_where": "Booking → Property policies → Children & Extra Beds",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-48/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-49",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — cần user quyết",
  "task": "Booking 305: Genius đủ điều kiện (8.8 · 10 review) nhưng chưa bật · 0 promotion · mobile booking 10% vs peer 64% · booking từ VN 7% vs khu vực 20%. Ba đòn bẩy hiển thị miễn phí đang để trống. Genius = giảm 10% cho khách Genius, tạm dừng được 30 ngày/năm. Cần user quyết vì ảnh hưởng giá.",
  "fix_where": "Booking → Boost performance → Genius / Promotions",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-49/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-50",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "✅ XONG — xác minh trên TRANG CÔNG KHAI 08/09: fine print nay là khối A LA CARTE DA NANG BEACH – SERVICE FEES (PAY-PER-USE), không còn dòng COVID nào.",
  "task": "[07/09: ĐÃ GỬI Request a Change, chờ Booking duyệt ~6 ngày → hạn khoảng 13/09. Nội dung gửi lưu ở properties/alacarte305/fine-print-request.md.] Booking 305 Fine print còn ~20 dòng COVID-19 hiện cho khách năm 2026: \"negative PCR test mandatory to check in\" · \"spa and gym unavailable\" · \"shuttle services suspended\" (mâu thuẫn Free Airport Pickup) · \"face mask mandatory\". Là boilerplate Booking gắn 2020–21, chỉ gỡ được qua Request a fix (xử lý ~6 ngày). Nhiều khả năng cả 8 property Booking đều dính.",
  "fix_where": "Booking → Property → View Your Descriptions → The Fine Print → Request a fix",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-50/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-51",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Booking 305 khai cửa sổ nhận phòng 2:00 PM – 5:00 PM (Property policies → Check-in) trong khi user xác nhận 04/09 bên mình nhận khách bất kể giờ, và 8 tin nhắn trong vault/16-ota-messages/booking/ đều viết after 2:00 PM không có mốc kết thúc. Khách bay đêm lọc theo giờ nhận phòng sẽ tự loại căn này, hoặc đặt xong lo lắng vì hai nguồn nói khác nhau. Tin nhắn đang ĐÚNG, chính listing mới hẹp. Cần kiểm cùng trường ở 6 căn Booking còn lại.",
  "fix_where": "Booking → Property → Property policies → Check-in",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-51/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-52",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Chưa khai giường cho 62/80 không gian trên Airbnb (7/7 căn): 25anthuong11 13/13 chưa khai · alacarte502 6/6 · alacarte404 9/9 · 41lehycat 12/16 · 15nuocman5 11/15 · 181tohienthanh 11/14 · alacarte305 5/7. Photo tour hiện chữ \"Add details\". Khách lọc theo loại/số giường không thấy đủ, và bố cục ngủ là thông tin quyết định với nhóm gia đình — đúng tệp của 4 villa lớn. Số phòng ngủ/giường tổng thì có (beds = 4 · 4 · 4 · 3 · 3 · 1), chỉ thiếu phần khai theo từng phòng.",
  "fix_where": "Airbnb → từng listing → Sleeping arrangements",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat",
   "181tohienthanh",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-52/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-53",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "alacarte502 đặt giờ trả phòng 00:00 trong khi alacarte305 và alacarte404 cùng toà đều 12:00 và 4 villa đều 11:00. Đọc 05/09 tại properties/alacarte502/airbnb.md §2. Hoặc là gõ nhầm, hoặc Airbnb đang hiển thị \"nửa đêm\" cho khách — khiến khách hiểu phải trả phòng lúc 0 giờ.",
  "fix_where": "Airbnb → 502 → Check-in & checkout",
  "properties": [
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-53/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-54",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "25anthuong11 khai thiếu tiện ích nặng nhất danh mục: 26 tiện ích so với 65 (41lehycat) · 58 (15nuocman5, 404, 502) · 48 (181THT, 305). Cũng ít ảnh thứ nhì (39). Đây là căn đã yếu ở L-22 (lấp đầy 13%), thiếu Agoda (L-11) và thiếu PriceLabs Booking (L-15) — thiếu tiện ích là tầng thứ tư, và là tầng sửa được ngay, không đụng giá.",
  "fix_where": "Airbnb → 25AT11 → Amenities",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat",
   "181tohienthanh",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-54/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-55",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — cần user xác nhận chủ đích",
  "task": "Instant Book không đồng nhất và 15nuocman5 đang TẮT hẳn: 15nuocman5 OFF · 25anthuong11 + 181tohienthanh EVERYONE · 4 căn còn lại WELL_REVIEWED_GUESTS. Airbnb ưu tiên hiển thị listing bật Instant Book; căn tắt hẳn là căn villa doanh thu cao. Chưa rõ tắt có chủ đích hay không.",
  "fix_where": "Airbnb → 15MN → Booking settings",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "181tohienthanh"
  ],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-55/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-56",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Nội quy nhà chỉ nằm trong đoạn văn, không nằm ở trường có cấu trúc. 7/7 căn để PETS_ALLOWED · SMOKING_ALLOWED · EVENTS_ALLOWED · COMMERCIAL_PHOTOGRAPHY_ALLOWED ở trạng thái chưa đặt; chỉ QUIET_HOURS bật ở 5/7 (25anthuong11 và alacarte305 không bật gì). Trong khi đó trường mô tả HOUSE_RULES dài 2.100–4.300 ký tự. Khách lọc \"cho phép thú cưng\" hoặc xem thẻ nội quy sẽ không thấy gì; Airbnb cũng không dùng được để đối chiếu khi có tranh chấp.",
  "fix_where": "Airbnb → từng listing → House rules",
  "properties": [
   "25anthuong11",
   "alacarte305"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-56/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-57",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Vị trí chưa xác minh ở 7/7 listing Airbnb (locationVerificationSettings.isVerified = false, dạng OPTIONAL). Airbnb có luồng quay vài ảnh/video khách không thấy để gắn huy hiệu xác minh. Miễn phí, không đụng giá.",
  "fix_where": "Airbnb → từng listing → Verify location",
  "properties": [],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-57/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-58",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "15nuocman5 có 12/87 ảnh chưa gắn vào phòng nào trong photo tour (6 căn còn lại gắn hết). Ảnh không gắn phòng vẫn hiện trong album nhưng không vào lát cắt theo phòng — chỗ khách xem kỹ nhất khi chọn villa 4BR.",
  "fix_where": "Airbnb → 15MN → Photo tour",
  "properties": [
   "15nuocman5"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-58/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-59",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — bằng chứng ở audits/2026-09-05-airbnb-listing-audit-corpus.md §3",
  "task": "25anthuong11 mới có 2 review nên trang công khai vẫn hiện ★New, không hiện điểm. Ngưỡng Guest Favorite và nhãn top 1/5/10% của Airbnb là ≥5 review trong 4 năm; căn này chưa đủ. Sáu căn kia đều đủ (7–35 review, điểm 4,85–5,0). Cộng với L-22 (lấp đầy 13%) thành vòng xoáy: ít khách → ít review → hiển thị yếu → càng ít khách. Việc sửa được ngay: dồn khách vào căn này bằng giá/khuyến mãi ngắn hạn để lấy đủ 5 review.",
  "fix_where": "Airbnb → 25AT11",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-59/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-60",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "alacarte502 chỉ mở lịch trước 3 tháng — 305 và 404 mở 6 tháng, bốn villa mở 9–12 tháng. Airbnb nêu thẳng \"mở thêm ngày trên lịch\" là đòn bẩy thứ hạng, và chính Airbnb đang khuyến nghị tài khoản này \"Let guests book 6 months out\". Khách đặt sớm (nhóm gia đình, khách Hàn/Nhật đặt trước kỳ nghỉ) không thấy căn này.",
  "fix_where": "Airbnb → 502 → Availability window",
  "properties": [
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-60/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-61",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — trùng gốc L-54",
  "task": "Tiện ích bỏ trống hàng loạt trên cả 7 căn: 81–123 ô trong tổng 149. Airbnb đếm amenities là một thành phần của trục Quality, và ô để trống không được tính là \"không có\" — nó là dữ liệu thiếu. Nặng nhất 25anthuong11 (123 ô trống, chỉ 26 tiện ích bật), nhẹ nhất 41lehycat (81). Đây là việc thuần nội dung, không đụng giá, không đụng lịch.",
  "fix_where": "Airbnb → từng listing → Amenities",
  "properties": [
   "25anthuong11",
   "41lehycat"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-61/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-62",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Ảnh gần như không có chú thích: 0 ảnh ở 4/7 căn, cao nhất là 181tohienthanh với 7/52. Airbnb đọc nội dung ảnh trong trục Quality và chú thích là chỗ duy nhất gắn chữ vào từng tấm (cũng là chỗ đặt được tên khu, tên tiện ích cho khách lướt nhanh).",
  "fix_where": "Airbnb → Photo tour → từng ảnh",
  "properties": [
   "181tohienthanh"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-62/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-63",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "181tohienthanh tắt \"hiện vị trí chính xác\" — sáu căn kia đều bật. Airbnb dùng Location làm một trong bốn trục xếp hạng và khách lọc theo bản đồ; ẩn vị trí làm căn này khó xuất hiện đúng vùng khách khoanh. Cũng là căn duy nhất đặt báo trước 1 ngày (sáu căn kia nhận đặt cùng ngày) ⇒ mất khách phút chót.",
  "fix_where": "Airbnb → 181THT → Location + Advance notice",
  "properties": [
   "181tohienthanh"
  ],
  "platforms": [
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-63/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-64",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — kiểm trước tiên",
  "task": "Booking 305 chỉ còn bán được cho 27,50% lượt khách tìm (Availability for search, 90 ngày) — thấp hơn peer group 47,06%. Đọc thẳng trên Ranking Dashboard 05/09. Nghĩa là gần ba phần tư lượt tìm kiếm khớp căn này nhưng không đặt được. Đây là trần chặn mọi việc tối ưu khác: nội dung, ảnh, giá có hoàn hảo cũng không bán được đêm đã đóng. Cùng gốc L-06 (Rate closed/No inventory) và L-17.",
  "fix_where": "Booking → lịch + channel manager (lịch đang XML (edits overwritten))",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-64/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-65",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở 🟡 15/09/2026 23:26: 25 AT 11 đã bật Mobile rate 10 % (app + mobile web, all rate plans) — đọc lại list: Active, Always active. Genius/Basic/Country chưa.",
  "task": "Được hiện nhiều hơn peer 27% nhưng bị bấm ít hơn 38%. Phễu 90 ngày: 24.249 lượt hiện trong kết quả tìm kiếm (+26,67% vs peer) → 299 lượt vào trang (−22,49%) → 7 lượt đặt (−35,38%). CTR 1,23% so với peer 2,00%. Booking đang cho hiển thị tốt; nút thắt nằm ở thẻ hiển thị trong kết quả tìm kiếm — ảnh bìa, giá, điểm 8,8, và không có nhãn Genius/deal nào. Đây là chỗ sửa được bằng nội dung, không cần đụng giá.",
  "fix_where": "Booking → ảnh bìa + Genius (L-49) + promotion",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-65/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-66",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "[05/09 đã làm một phần: đẩy 3 ảnh FishCá lên, All photos 49→52 — nhưng CHƯA GẮN TAG nên Booking chưa tick mục ảnh bữa sáng; ảnh ngoại thất chưa lên. Xem properties/alacarte305/booking.md §24.] Property Page Score 90% so với trung bình khu vực 96%, và ba việc còn thiếu đều rẻ: ảnh ngoại thất · ảnh bữa sáng · key pickup details. Booking ghi \"Properties with a 100% Property Page Score get up to 18% more bookings\". Trang Home còn nhắc \"Set up the basics (2 of 3 completed)\" — nhiệm vụ facilities/amenities chưa xong.",
  "fix_where": "Booking → Photos + Property policies → Key pickup",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-66/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-67",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Bốn lời phàn nàn lặp lại trong review Booking 305 kéo hai hạng mục Comfort/Cleanliness xuống (điểm chung 8,8 trong khi Location 9,9 · Staff 9,7 · Cleanliness 9,6): ① vệ sinh chi tiết — \"dirty mirrors and dust in the corners of the doors and A/C holes, broken baseboard\" ② vách tắm quá thấp làm nước tràn buồng tắm (khách ghi là lỗi toà nhà, căn khác cùng toà cũng vậy) ③ một phòng ngủ không có cửa sổ, không thông gió ④ \"No room service during a week while promised a couple of times\". Từ 23/01/2025 Booking tính điểm có trọng số theo độ mới ⇒ sửa được vận hành là điểm lên nhanh. ①④ là quy trình dọn phòng; ②③ phải khai đúng trong mô tả để khách không bất ngờ.",
  "fix_where": "Vận hành dọn phòng + mô tả listing",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-67/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-68",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "Nhịp đặt phòng tương lai của Booking 305 đang tụt: đã ở từ đầu năm 167 đêm / 324,8 tr₫ / ADR 1,94 tr₫ (+135% số đêm so với năm ngoái), nhưng đang giữ chỗ cho các tháng tới chỉ 32 đêm / 53,1 tr₫, −8,57% số đêm so với cùng kỳ và ADR tương lai thấp hơn ADR đã bán 15% (1,66 tr so với 1,94 tr). Bán được nhiều hơn nhưng bán rẻ dần về phía trước.",
  "fix_where": "PriceLabs → đường giá tương lai",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-68/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-69",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — chặn L-66",
  "task": "Kho ảnh A La Carte không có hai tấm Booking đang đòi, và ba tấm đang có thì không dùng được. ① Thư mục alacarte305/photos/exterior/ không phải mặt ngoài toà nhà: 001 là ghế ban công (trùng byte với alacarte404/photos/balcony/002), 002 là cảnh nhìn từ ban công thấy tháp A La Carte + biển — dùng tạm được nhưng 1200×801, dưới chuẩn Booking ≥2048×1080. ② Không có ảnh bữa sáng nào trong toàn vault dù facility khai Breakfast = Yes (buffet FishCá tầng 2, 285–350k). ③ Ảnh rooftop của alacarte404 là ảnh marketing của khách sạn, độ phân giải 600×400–1179×882 và tấm 003 còn dính mũi tên carousel của website ⇒ cấm đăng. Cần chụp mới: mặt tiền toà nhà + quầy buffet. [05/09: phần sauna khép lại — user chốt không đưa sauna/yoga/spa vào listing, xem L-70.]",
  "fix_where": "Chụp mới, hoặc xin ảnh chính thức từ A La Carte — nguồn + spec ở vault/02-villas/alacarte-building-assets.md",
  "properties": [
   "alacarte305",
   "alacarte404"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-69/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-70",
  "level": "—",
  "status_group": "Xong",
  "status": "✅ Xong",
  "task": "✅ ĐÓNG 06/09 — quyết định 05/09 bị thay. User chốt đưa tiện ích khách sạn vào listing nhưng khai đúng Paid + dùng chung, thay vì bỏ hẳn (căn cứ tài liệu chính thức hai kênh, xem DECISIONS.md 06/09). Kiểm lại thì Sauna = Yes · Paid, Massage = Yes · Paid, Fitness center = Yes · Paid, Laundry = Yes · Paid, Swimming pool = Yes · Paid · Public · Rooftop/Infinity edge/Lounge chairs đều ĐÃ khai đúng từ trước ⇒ không phải sửa gì. Việc còn lại chuyển sang L-73 (khai thiếu spa/nhà hàng/shuttle).",
  "fix_where": "—",
  "properties": [],
  "platforms": [],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-70/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-71",
  "level": "P2",
  "status_group": "Đang chờ",
  "status": "✅ XONG cùng L-50 — xác minh 08/09: fine print đã có câu \"Breakfast rates vary by season. Please contact us to confirm the exact rate for your dates.\" kèm bảng giá T2–T5 / T6–CN.",
  "task": "[07/09: đã gộp vào Request a Change cùng L-50, chờ duyệt.] The Fine Print của Booking 305 nêu giá buffet sáng như một con số cố định, trong khi giá thay đổi theo mùa (user xác nhận 05/09). Website khách sạn đang niêm yết 450.000₫ so với 285.000₫/350.000₫ trong Fine Print — khách đọc Fine Print rồi xuống nhà hàng trả giá khác sẽ khiếu nại đúng chỗ mình khai. Cần thêm một câu vào Fine Print kiểu \"Breakfast rates vary by season — please contact us to confirm the exact rate for your dates.\" Sửa Fine Print phải qua Request a fix (~6 ngày) ⇒ gộp chung một lần với việc gỡ ~20 dòng COVID của L-50.",
  "fix_where": "Booking → Property → View Your Descriptions → The Fine Print → Request a fix",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-71/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-72",
  "level": "P0",
  "status_group": "Đang chờ",
  "status": "🟡 Booking 305 ĐÃ SỬA (đọc lại 08/09: Is this paid parking? = Yes, Indoor parking + On-site + Private (guests only) + có nhân viên/barie/camera). Vẫn chưa khai giới hạn chỉ xe máy, và phần Airbnb 404/502/305 còn nguyên. Chi tiết ở ../02-villas/alacarte-hotel-services.md §4b",
  "task": "Cả ba listing A La Carte khai SAI về đỗ xe. Sự thật (user xác nhận 05/09): toà chỉ nhận XE MÁY, 5.000₫/lượt, 10.000₫ gửi qua đêm, có thu phí. Đang khai: Booking 13311503 để Parking = Yes · On-site · Is this paid parking? = No (tức miễn phí) và không giới hạn loại xe ⇒ khách đi ô tô hiểu là đỗ được · Airbnb alacarte404 và alacarte502 bật Free parking on premises VÀ Free street parking, cả hai đều không có thật · Airbnb alacarte305 bỏ trống cả 5 ô parking. Khách thuê ô tô tự lái đọc \"free parking\" rồi lái tới không gửi được xe là khiếu nại tại quầy, rơi thẳng vào mục Accuracy khi chấm review. ⚠️ Airbnb đang khuyến nghị tài khoản \"Highlight any free parking\" (13/14 listing đã bật) nên rất dễ bật nhầm tiếp. Sửa: Booking → đánh dấu paid parking + ghi rõ chỉ xe máy; Airbnb 404/502 → tắt hai ô free, bật Paid parking on premises; Airbnb 305 → khai Paid parking on premises. Bốn villa có chỗ đỗ riêng, không áp bảng này, phải kiểm riêng.",
  "fix_where": "Booking → Facilities & services · Airbnb → Amenities từng căn",
  "properties": [
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-72/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-73",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ XONG — xác minh 08/09: Restaurant · Room service · Coffee house on site · Snack bar · Wine/Champagne (Paid) · Spa facilities · Spa and wellness center (Paid) · Spa lounge/Relaxation area · Massage (Paid) · Fitness center (Paid) · Airport shuttle (free) · Airport pickup (Yes – free) · Shuttle service · Terrace đều đã Yes.",
  "task": "Booking 305 khai THIẾU bốn tiện ích có thật trong toà — mỗi cái là một bộ lọc tìm kiếm bị mất. ① cả khối ăn uống bị tắt dù toà có 4 điểm: Restaurant = No (FishCá tầng 2, 06:30–22:00 · DELI Bistro tiền sảnh, 07:00–22:00) · Room service = No (máy lẻ 104, 06:00–19:00 — cần xác minh khách căn hộ gọi được không) · Coffee house on site = No · Snack bar = No · Wine/Champagne = No (Phòng rượu trong FishCá). Chỉ Bar và Breakfast đang bật ② Spa facilities · Spa and wellness center · Spa lounge/Relaxation area đều = No trong khi Spice Spa có phòng trị liệu, khu ngâm chân, phòng chờ, menu 11 dịch vụ ③ Airport shuttle · Shuttle service đều = No trong khi chính TÊN listing ghi \"Free Airport Pickup From 3 Nights\" — mâu thuẫn thấy được ngay trên thẻ tìm kiếm ④ Terrace = No dù The TOP Bar tầng 24 có khu ngoài trời (cần xác minh khách căn hộ có vào được không). Nút thắt của 305 là CTR 1,23 % vs peer 2,00 % ⇒ thiếu filter là thiếu đúng chỗ đang yếu. Khai theo quyết định 06/09: Yes + Paid + on-site/shared.",
  "fix_where": "Booking → Property → Facilities & services",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-73/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-74",
  "level": "P1",
  "status_group": "Xong",
  "status": "✅ HẾT MÂU THUẪN — xác minh 08/09: Entire unit wheelchair accessible = No, Upper floors accessible by elevator = No, Hearing accessible = No; chỉ còn Accessible by elevator = Yes (đúng thực tế: có thang máy nhưng căn không đạt chuẩn xe lăn).",
  "task": "Hai tầng khai báo về tiếp cận cho người khuyết tật đang MÂU THUẪN trên Booking 305. Cấp phòng: Entire unit wheelchair accessible = Yes và Accessible by elevator = Yes. Cấp cơ sở: Facilities for disabled guests = No. Hai chỗ phải khớp: nếu căn thật sự đi xe lăn được thì bật cờ cấp cơ sở để khách lọc theo tiếp cận tìm thấy căn; nếu không thật thì phải tắt cờ cấp phòng, vì khách dùng xe lăn đặt theo lời khai đó rồi tới nơi không vào được là hỏng cả chuyến. Ba điều kiện kiểm: ① không bậc cấp từ vỉa hè → sảnh → thang máy → cửa căn hộ ② cửa đủ rộng cho xe lăn (~80cm) ③ buồng tắm dùng được (không gờ cao, đủ chỗ xoay).",
  "fix_where": "Booking → Facilities & services + Room Amenities",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-74/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-75",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ KHÔNG PHẢI LỖI — đóng 08/09. Hai trường này Booking ẩn bằng CSS (div.subroom_experiment.hidden) nên host không sửa được; số 0 là mặc định của trường bị vô hiệu hoá. Trang công khai vẫn hiển thị thẻ Kitchen trong khối The entire place is yours, và mô tả tự sinh vẫn viết \"The fully equipped kitchen…\" — tức Booking lấy từ Room Amenities, không lấy từ Number of kitchens. Suy đoán ban đầu của agent là sai.",
  "task": "Booking 305 khai Number of kitchens = 0 và Number of dining rooms = 0 ở Room details, trong khi Room Amenities bật Kitchen · Kitchenette · Kitchenware · Stovetop · Refrigerator · Microwave · Dining area · Dining table, và mô tả Booking tự sinh viết \"The fully equipped kitchen features a stovetop, a refrigerator, kitchenware and a microwave\". Bộ lọc căn hộ của Booking đọc cấu hình phòng, không đọc amenity ⇒ căn có bếp thật nhưng có thể không lọt bộ lọc bếp. Đây đúng chỗ 305 đang yếu (CTR thấp). Sửa: Room details → Number of kitchens = 1, cân nhắc Number of dining rooms = 1.",
  "fix_where": "Booking → Property → Room details → Edit",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-75/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-76",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 08/09",
  "task": "Mẫu tin Check-out ALC của Booking 305 xin thẳng \"5-star review\" (\"we hope you will be kind enough to leave us a 5-star review\"). Luật nội bộ ota-messaging-rules.md cấm xin số sao cụ thể trên mọi kênh. Sửa một chữ: \"leave us a review\". Mẫu này đang tự động gửi 1 ngày trước khi đi, tức đã gửi cho mọi khách.",
  "fix_where": "Booking → Property → Messaging Preferences → Message templates",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-76/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-77",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 08/09",
  "task": "Mẫu Check-in ALC 305 gửi tự động mã khoá thông minh và mật khẩu Wi-Fi, 1 ngày trước khi khách đến — mã là mã TĨNH dùng chung. Mọi khách từng ở đều giữ mã cửa. Cân nhắc: đổi mã theo từng lượt khách, hoặc bỏ mã khỏi mẫu tự động và gửi tay sát giờ nhận phòng.",
  "fix_where": "Booking → Messaging Preferences → Message templates + quy trình vận hành",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-77/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-78",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 08/09",
  "task": "Lệch giữa extranet và tin nhắn về cách thu tiền. Booking → Property policies khai Guest Payment Options: You only accept cash, nhưng cả hai mẫu Booking Confirmation và Check-in ALC 305 đều viết \"via cash or bank transfer\". Khách đọc trang listing chuẩn bị tiền mặt, đọc tin nhắn lại tưởng chuyển khoản được. Thống nhất một nguồn.",
  "fix_where": "Booking → Property policies hoặc mẫu tin nhắn",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-78/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-79",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 08/09. ⚠️ Đã đo được hệ quả trên trang khách: vì hai ô để trống, Booking in ra câu phủ định \"Cribs and extra beds aren't available at this property.\" Ô trống không im lặng — nó biến thành lời từ chối, ngay trên listing đang nhắm tệp gia đình.",
  "task": "Booking 305 chưa đặt child rates, chưa khai cribs và extra beds dù đang nhận tối đa 3 trẻ + 1 em bé và Children of all ages are allowed. Gia đình là tệp mà chính profile của listing đang nhắm (\"Why Families Love Your Property\"). Không có giá trẻ em ⇒ mọi khách trẻ tính như người lớn, và khách tìm theo bộ lọc nôi/giường phụ không thấy căn.",
  "fix_where": "Booking → Property policies → Children & Extra Beds",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-79/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-80",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 08/09",
  "task": "Booking 305 không có damage policy (You don't have a damage policy with Booking.com) trong khi nhận tối đa 4 khách và cả kỳ 30–90 đêm. Không có khoản bảo vệ hư hỏng nào qua nền tảng.",
  "fix_where": "Booking → Property policies → Damage policy",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-80/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-81",
  "level": "P3",
  "status_group": "Khác",
  "status": "🔵 Chờ user quyết — phát hiện 08/09",
  "task": "Beachfront = Yes trên Booking 305 khiến mô tả tự sinh viết \"offers direct beachfront access\", trong khi chính profile của listing ghi \"My Khe Beach is 150 metres away\" và căn nằm bên kia đường Võ Nguyên Giáp. Cần user quyết: giữ (mạnh hiển thị, rủi ro trừ điểm mục Location/accuracy khi khách review) hay tắt. Không tự đổi.",
  "fix_where": "Booking → Facilities & services → Beachfront",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-81/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-82",
  "level": "P1",
  "status_group": "Khác",
  "status": "🔵 Chờ user xác nhận (sửa 08/09) — The Fine Print do chính mình viết cũng chỉ nêu FishCa phục vụ buffet sáng 06:30–10:00, khớp với khai báo facility. Nếu FishCá thực tế mở tới 22:00 và phục vụ cả trưa/tối thì mới cần sửa; nếu chỉ phục vụ sáng thì khai hiện tại đã đúng. Ghi chú \"06:30–22:00\" trong hồ sơ toà nhà cần kiểm lại.",
  "task": "Booking 305 khai FishCá Restaurant chỉ phục vụ bữa sáng, 06:30–10:00. Trong panel See details của facility: Open for = Breakfast (không tick Lunch/Dinner), giờ mở 06:30–10:00 cả 7 ngày. Hồ sơ toà nhà của mình ghi FishCá mở 06:30–22:00 và có phòng rượu. Hệ quả: khách lọc nhà hàng phục vụ trưa/tối không thấy 305, và mô tả Booking tự sinh cũng chỉ nói tới buffet sáng. DELI Bistro cạnh đó khai đúng (07:00–22:00, Breakfast + Lunch) ⇒ chênh lệch là do khai, không phải do Booking.",
  "fix_where": "Booking → Facilities & services → Breakfast/Restaurant → See details",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-82/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-83",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Hạ xuống P2 (08/09) — The Fine Print ĐÃ nói rõ \"On-site parking is for motorbikes only — cars cannot be parked at the building. Motorbike parking is 5,000 VND per entry, or 10,000 VND overnight\", và khách đọc được câu đó trên trang. Phần còn thiếu chỉ là trường có cấu trúc: trang công khai vẫn hiện \"Private Parking Available On Site\" không kèm điều kiện, và bộ lọc đỗ xe không đọc chữ trong fine print.",
  "task": "Phần còn lại của L-72 — đỗ xe đã khai đúng \"có phí\" nhưng vẫn KHÔNG khai giới hạn loại xe. Đọc trong panel: Parking #1 Indoor · On-site · Private · VND 10.000,00/ngày, Parking #2 Outdoor · On-site · Private · VND 10.000,00/ngày; ô Height limit for cars để trống và không có trường nào nói chỉ nhận xe máy. Sự thật (user xác nhận 05/09): toà chỉ nhận XE MÁY, 5.000₫/lượt, 10.000₫ qua đêm. Khách thuê ô tô đọc \"on-site private parking, 10.000₫/ngày, không giới hạn chiều cao\" là hiểu đỗ được ô tô. Giá khai cũng lệch với giá thật theo lượt. 🔎 Nguyên văn khách đọc trên trang công khai (xác minh 08/09): nhóm Parking ghi \"Private parking is available on site (reservation is not needed) and costs VND 10,000 per day\" — không một chữ nào nói chỉ nhận xe máy, lại còn nói không cần đặt chỗ. ⚠️ Nặng hơn: listing TỰ MÂU THUẪN — ô About the Property trong Your Profile viết thẳng \"The building does not accept cars\", nhưng mục Facilities (chỗ có bộ lọc tìm kiếm) lại khai đỗ xe on-site không giới hạn loại xe. Sự thật đã nằm sẵn trong hồ sơ, chỉ chưa khai vào chỗ máy đọc được.",
  "fix_where": "Booking → Facilities & services → Parking → See details",
  "properties": [],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-83/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-84",
  "level": "P3",
  "status_group": "Xong",
  "status": "✅ KHÔNG PHẢI LỖI — tự xác nhận 08/09: ô Why Families của chính listing viết \"rooftop pool is open to all ages for a fee\" và About the Property ghi tiện ích toà nhà \"charged separately from your stay\". Khai Paid là đúng.",
  "task": "Bể bơi A La Carte khai Paid trên Booking 305 (panel: Outdoor · All year · Paid · All ages · Rooftop · Infinity edge · Scenic view · Lounge chairs · Pool bar · 06:00–19:00). Cần user xác nhận: khách thuê căn hộ có phải trả phí vào bể bơi không? Nếu đã gồm trong kỳ nghỉ thì khai Free — nhiều khách lọc theo \"bể bơi miễn phí\", khai Paid là tự loại mình khỏi bộ lọc đó.",
  "fix_where": "Booking → Facilities & services → Swimming pool → See details",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-84/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-85",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 08/09 từ trang công khai",
  "task": "Giá bữa sáng lệch nhau ba con số trên cùng một trang khách. Bảng đặt phòng bán add-on VND 395.000, còn The Fine Print ghi 285.000₫/người lớn (T2–T5) và 350.000₫ (T6–CN). Khách chọn add-on 395k rồi xuống nhà hàng nghe giá khác là khiếu nại đúng chỗ mình khai. Cần chốt một con số, hoặc nêu rõ 395.000₫ là giá bán qua Booking đã gồm chênh lệch.",
  "fix_where": "Booking → Rate plans (add-on bữa sáng) + The Fine Print",
  "properties": [],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-85/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-86",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 08/09",
  "task": "Comfort là hạng mục điểm THẤP NHẤT của 305: 8,7 (Location 9,9 · Staff 9,7 · Cleanliness 9,6 · Value 9,6 · Facilities 9,4). Review tiếng Nga nêu nguyên nhân cụ thể: \"музон от ежедневной дискотеки\" — tiếng nhạc từ sàn disco hằng ngày. Đây là tín hiệu đo được cho điểm Comfort, chưa từng có trong sổ. Cần xác minh nguồn tiếng ồn (quán trong toà? bar tầng 24? ngoài đường?) rồi quyết: xử lý cách âm, hay nói trước trong fine print để khách không bất ngờ.",
  "fix_where": "Vận hành + The Fine Print",
  "properties": [
   "alacarte305"
  ],
  "platforms": [],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-86/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-87",
  "level": "P2",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 08/09",
  "task": "Hai trong năm review Booking chọn hiển thị đều nói cùng một hiểu lầm: khách tưởng căn hộ thuộc khách sạn. \"the rooms are not affiliated with the hotel that they're in so the people at the front desk cannot help you with anything\" (Kendal, Canada) · \"the apartment does not belong to (but private managed) the hotel\" (Thuy, Germany). Thông tin này CÓ trong fine print và trong Property info, nhưng cả hai đều nằm sâu cuối trang. Đưa một câu ngắn lên đầu ô About the Property (khối khách đọc sớm) sẽ chặn đúng hiểu lầm đang lặp lại trong review.",
  "fix_where": "Booking → Your Profile → About the Property",
  "properties": [],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-87/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-88",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — live 08/09",
  "task": "Booking 404 khai sai cấu trúc phòng: Number of bedrooms = 1, chỉ khai 1 Twin bed và Booking tự sinh \"unit offers 1 bed\", trong khi căn thực tế là 2BR với 1 King + 2 Twin. Trang còn báo What's Missing: Bathroom info dù căn có 2 phòng tắm.",
  "fix_where": "Booking 15702704 → Property → Room details",
  "properties": [
   "alacarte404"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-88/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-89",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — live 08/09; bảng đối chiếu trong audits/2026-09-08-booking-404-vs-305.md",
  "task": "Booking 404 tắt/bỏ trống hầu hết tiện ích chung của A La Carte: Swimming pool, Bar, Sauna, Terrace, Breakfast, Parking = No; restaurant/spa/gym/shuttle/laundry và nhiều mục an ninh chưa khai rõ. Tên listing hứa airport pickup 3+ đêm nhưng Airport shuttle chưa khai. Chuẩn chung đã cài đúng trên 305.",
  "fix_where": "Booking 15702704 → Facilities & services",
  "properties": [
   "alacarte305",
   "alacarte404"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-89/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-90",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — live 08/09",
  "task": "Fine Print Booking 404 vẫn còn khối COVID cũ ~20 dòng, gồm shuttle/spa/gym unavailable, PCR/vaccine/quarantine. Cùng lỗi từng có trên 305 nhưng 305 đã gỡ xong.",
  "fix_where": "Booking 15702704 → View Your Descriptions → Request a fix",
  "properties": [
   "alacarte305",
   "alacarte404"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-90/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-91",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — live 08/09",
  "task": "Booking 404 chỉ đạt Property Page Score 84%: 20/44 ảnh bị gắn low quality, thiếu/tag ảnh bãi biển và thiếu key pickup. 305 đang 100%, 0/63 ảnh low quality.",
  "fix_where": "Booking 15702704 → Property Page Score + Photos",
  "properties": [
   "alacarte305",
   "alacarte404"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-91/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-92",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — live 08/09",
  "task": "Booking 404 bỏ trống key pickup và toàn bộ bốn ô profile (Property/Host/Neighborhood/Families). Quy trình chung của 305 có thể tái dùng sau khi đổi số phòng và fact riêng căn.",
  "fix_where": "Booking 15702704 → Property policies + Your Profile",
  "properties": [
   "alacarte305",
   "alacarte404"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-92/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-93",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 10/09/2026",
  "task": "Listing 502 chỉ khách lên NHẦM CĂN. property_policies.html?hotel_id=14756473 → Getting into the property viết \"take you up to apartment 305\", còn ô dự phòng What if this doesn't work viết \"Take the lift up to apartment 404\". Không dòng nào nói 502. Khối này Booking ghi rõ \"This info will soon be shown to guests right after they book\" ⇒ khách 502 đặt xong sẽ được dẫn tới cửa của hai căn khác. Nhiều khả năng do chép mẫu từ 305/404 mà quên đổi số.",
  "fix_where": "Booking 14756473 → Property policies → Key pickup",
  "properties": [
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-93/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-94",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — chờ user bấm Save",
  "task": "Booking 502 khai giờ nhận/trả phòng SAI và THIẾU. Hiện: Check-in from 2:00 PM (ô đến để trống) · Check-out until 12:00 AM = nửa đêm. ✅ Đã xác minh 10/09/2026 là lỗi thật, không cần hỏi thêm: (a) placeholders.md + property_details_alacarte305/404/502.md đều chốt check-out 12:00 noon cho ba căn A La Carte; (b) tin alacarte-05-checkout gửi khách viết \"Check-out time is 12:00 pm\"; (c) 305 khai đầy đủ và đúng: Check-in 2:00 PM → 5:00 PM, Check-out 8:00 AM → 12:00 PM. 🔎 Đọc DOM ô chọn: cả 4 select (checkin_start · checkin_end · checkout_start · checkout_end) đều có đủ 49 option, 12:00 PM nằm ở vị trí 25/49 ngay sau 11:30 AM — không bị lọc mất, chỉ do dropdown mở ra ở đáy danh sách. Sửa: check-in 2:00 PM → 5:00 PM, check-out 8:00 AM → 12:00 PM (khớp 305).",
  "fix_where": "Booking 14756473 → Property policies → Check-in & Check-out Times",
  "properties": [
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-94/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-95",
  "level": "P2",
  "status_group": "Xong",
  "status": "✅ XONG 15/09/2026 — hai kênh đã cùng một bộ số: 305/404 400.000 · 502 250.000 · 181/15 MN/25 AT 11 600.000 · 41 700.000 (Airbnb làm tròn ~17:40, Booking khai ~18:15). Trang khách Booking còn số cũ lúc 18:20 — kiểm lại sau.",
  "task": "Phí dọn lệch ba mức giữa các căn/kênh: Booking 502 = 150.000₫/stay (mới khai, snapshot 03/09 còn ghi chưa khai phí nào) · Booking 305 = 300.000₫ · Airbnb 305 = 350.000₫. Cùng một toà, cùng một đội dọn. Chốt một mức hoặc ghi rõ vì sao khác.",
  "fix_where": "Booking → VAT/Tax/Charges từng căn + Airbnb",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-95/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-96",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 14/09/2026",
  "task": "Airbnb custom promotion giữ giá khuyến mãi CŨ sau khi nâng giá 15 %. Lịch 305 ngày 15–18/09 + 22–27/09 (host_custom_promotion, group 2026-09-15) hiện giá thấp hơn PriceLabs vừa đẩy 0–8 % (16/09: 1.430.737 vs 1.552.500) trong khi 19/19 ngày không promo khớp 100 %. Sau khi đổi phí 15,5 %, đúng những đêm này ăn phí trên giá thấp. Tool Airbnb Adjust all prices sẽ nâng custom promotion price — mình bỏ tool nên phải xử lý tay: mở promotion trên Airbnb Calendar, xoá/tạo lại để tính từ giá mới, hoặc để nó hết hạn 27/09. Chưa kiểm 6 căn còn lại có promotion không.",
  "fix_where": "Airbnb Calendar 305 → nhóm promotion 15–27/09",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-96/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-97",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — chờ user chốt chính sách một mốc giá (cùng giá / Booking rẻ hơn có chủ ý bao nhiêu %). Bảng chấm 12 hạng mục + 7 bước sửa kèm con số (map cha–con Airbnb → Booking · phí dọn · BR · Max 2,5×Base · Min 502 · 25 AT 11 hạ Min theo bước): audits/2026-09-15-pricing-setup-review.md. Số đo gốc: audits/2026-09-15-price-parity-airbnb-vs-booking.md",
  "task": "Cùng căn, cùng đêm, khách đặt qua Booking trả ÍT hơn Airbnb 2–17 % (trung vị theo căn), có đêm tới 35 %. Đo 15/09/2026 trên 90 đêm × 6 căn, đối chiếu 9 trang công khai khớp PriceLabs đến từng đồng. Cơ chế phí hai kênh nay gần như giống nhau (Airbnb giữ 15,5 %, Booking 15,0 %, khách không trả thêm gì) ⇒ lệch hoàn toàn do mình đặt: (a) Base/Min hai dòng PriceLabs khác nhau, chưa nối cha–con (L-23); (b) phí dọn Airbnb 230.000–690.000 vs Booking 0–300.000 (L-25 · L-95); (c) dòng Booking của 181/41/15 MN khai BR = 1 nên bị kẹp sàn (L-18). Mỗi đơn Booking mình nhận ít hơn đúng phần chênh — ví dụ 41 LHC 20–23/10: 10,52 tr vs 13,44 tr. Hiện Booking rẻ hơn nên đang tuân thủ wide parity; cách san bằng hợp lệ là hạ Airbnb xuống hoặc nâng Booking lên tới (không vượt) Airbnb. 15 MN là căn duy nhất ngược chiều (Airbnb rẻ hơn).",
  "fix_where": "PriceLabs → nối cha–con + Base/Min chung · Booking → VAT/Tax/Charges phí dọn · PriceLabs → sửa BR",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-97/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-98",
  "level": "P3",
  "status_group": "Đang chờ",
  "status": "🟡 Cần user xác nhận — phát hiện 15/09/2026. audits/2026-09-15-price-parity-airbnb-vs-booking.md",
  "task": "15nuocman5 đóng bán 19/09 → 20/12/2026 ở CẢ HAI kênh (93 đêm). Gói đẩy PriceLabs cả dòng Airbnb lẫn Booking đều Availability 0 suốt dải; lịch công khai Airbnb available: false từ 16/09 tới 20/12; Booking báo no availability 24–27/10 và 10–13/11. Bên trong chỉ có một đơn 28/11–03/12, các ngày còn lại num_bookings 0 ⇒ khoá tay, không phải kín phòng. Nếu cố ý (sửa nhà / khách dài hạn ngoài kênh) thì ghi vào business.md; nếu khoá nhầm thì đang mất trọn mùa cuối năm của villa lớn nhất.",
  "fix_where": "Airbnb Calendar 15 MN / Booking calendar 15668679",
  "properties": [
   "15nuocman5"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-98/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-99",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ XONG 15/09/2026 21:18–21:33 (user ra lệnh 21:10): Save & Refresh + Sync Now hai dòng con bằng ota-pricelabs-set-base.mjs; lịch extranet đọc lại 31/31 ngày có giá (181 từ 3.034.969 · 15 MN từ 3.967.500), trang khách 181 02–05/11 = 10.020.619 + 600.000, 09–12/11 = 9.766.189. audits/2026-09-15-post-mapping-verify.md §5",
  "task": "181 THT và 15 MN MẤT TOÀN BỘ giá Standard Rate trên Booking sau cú lưu Room details 18:54–19:00 ngày 15/09. Payload availability_calendar 31 ngày: price: '' ở 0/31 ngày cho cả hai (rate #57399470 và #61913563, xml C), phòng restricted = mở nhưng không có giá ⇒ 181 không đặt được trên Booking (\"We have no availability\" ở cả 3 cửa sổ thử, trong khi 15:00 cùng ngày 02–05/11 còn giá 9.036.537). 5 property kia 31/31 ngày có giá; 41 và 404 cùng được re-import PriceLabs nhưng không sửa Room details nên vẫn còn giá ⇒ nguyên nhân là cú lưu Room details. Lần PriceLabs đẩy gần nhất của hai dòng này (181 11:29 · 15 MN 16:54) đều trước cú lưu. Maximum guests không đổi (8 / 10).",
  "fix_where": "PriceLabs → Sync Now dòng 14740288___1474028801 + 15668679___1566867901 (đẩy lại 731 ngày) → đọc lại calendar + trang khách; nếu vẫn trống thì mở Standard Rate trên extranet kiểm tay",
  "properties": [
   "15nuocman5",
   "181tohienthanh",
   "alacarte404"
  ],
  "platforms": [
   "booking",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-99/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-100",
  "level": "P1",
  "status_group": "Xong",
  "status": "✅ XONG 15/09/2026 21:18–21:40: Save & Refresh + Sync Now 7 dòng Booking con (+ dòng cha Airbnb 502 vì Min cũng chưa tới Airbnb). listing_last_date_pushed 7/7 = 21:18–21:32; mảng giá con 0 ngày dưới Min, Max đã vào cột; trang khách Booking = Airbnb đến từng đồng: 305 5.336.366 · 404 5.160.585 · 502 4.080.000 · 41 15.513.886 · 25 AT 11 10.350.000; Airbnb 502 20–23/10 lên 4.330.000 (gồm dọn). audits/2026-09-15-post-mapping-verify.md §5",
  "task": "Sau khi nối cha–con + đặt Min 502 + Max ×2,5 (Codex 20:10–20:18), 7 dòng Booking con chưa được đẩy: Booking đang bán giá CŨ (305 −7,4 % · 404 −3,3 % · 41 LHC −20,2 % · 502 −30,2 % so với giá PriceLabs mới = giá Airbnb; 25 AT 11 trùng vì cùng kẹp Min). Riêng 502 con: ô Min đã ghi 1.360.000 nhưng mảng giá ngày vẫn tính với sàn cũ (min_price ngày = 582.552, giá 15–17/09 < 1,36 tr) và gói fetch_last_request_text ghi MinPrice '', MaxPrice '' — Min/Max lưu sau lần tính lại của con nên chưa ngấm; Max cũng chưa vào mảng giá của 7 con (vô hại, giá < Max).",
  "fix_where": "PriceLabs → Save & Refresh + Sync Now 7 dòng con, hoặc chờ lượt tự động ~12:15 rồi đọc lại",
  "properties": [
   "25anthuong11",
   "41lehycat",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-100/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-101",
  "level": "P1",
  "status_group": "Xong",
  "status": "✅ XONG PHẦN CHÍNH 16/09/2026 (theo lệnh user): upload 21 ảnh toà nhà/tiện ích từ vault/02-villas/images/alacarte-shared/ vào Property (đủ tag, ảnh chính = toà nhà từ trên cao) · chuyển 5 ảnh nội thất sang Room bằng UpdatePhotos reassign (giữ gốc 6016×4016) · tải 24 ảnh gốc full-res về properties/alacarte305/photos/agoda-2024-12-24/. Hồ sơ properties/alacarte305/agoda.md. Cùng chiều, lệnh 2: gán tag 24/24 ảnh phòng, \"Missing tags\" = 0. User tự xoá tay 11/21 ảnh property (nhạc sống · suất sáng · hồ bơi 01–05 · nhà hàng ×3 · spa lounge) → Property = 10. ⚠️ Agent lỡ tải lại restaurant-01 khi dò nguyên nhân mất ảnh → Agoda trả cùng photoId 212075210 và tấm này sống lại — chờ user xoá. Lệnh 3 (user duyệt sheet): Property 13 (main toà nhà + 3 bản sao nội thất + 9 tiện ích) · Room 24→12 (bỏ ảnh cùng góc, main PN1) · xoá 13 kể cả 212075210. Cơ sở: Partner Hub \"Only the property main photo and main photo of each room type can be manually changed\" + đo card = main + 2 phòng ngủ + 7 AI chọn. CÒN MỞ: (a) kiểm card sau ~1 giờ, nội thất có lọt top 7 không; (b) Property 13 < 24–25, thiếu ảnh sảnh/lối vào; (c) đọc lại Content Score; (d) xem card phòng khi có ngày trống",
  "task": "Ảnh Agoda alacarte305 (63382515) xếp sai nhóm: 5 ảnh \"Property photos\" toàn là nội thất căn hộ (phòng khách · bàn ăn · bếp), không có ảnh toà nhà/tiện ích nào; 24/24 ảnh chưa gán tag. Property photos chiếm 45 % Content Score (playbook §4.3) nên nhóm này sai là mất điểm nặng nhất.",
  "fix_where": "Agoda → Property → Photos",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-101/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-102",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 16/09/2026 (lệnh user): ✅ 24 ảnh tag đủ · ✅ check-in 2:00–5:00 PM, check-out đến 12:00 PM · ✅ check-in method = Meet and greet (API 200, xem properties/alacarte305/agoda.md §3). 🔴 Host bio chặn bởi Agoda: form đòi SĐT xác minh OTP — bio 489 ký tự đã soạn, user tự dán. Điểm refresh ≤24 h → đọc lại 17/09 bằng node scripts/ota-agoda-content.mjs --id 63382515 --score. Phát hiện kèm → đã xử lý ở L-103",
  "task": "Content score Agoda alacarte305 70/100 \"Fair\" (Homes) — thiếu 30 điểm ở 7 mục: ảnh bedroom/bathroom/exterior/tiện ích (+13, chỉ thiếu caption) · check-out time (+4) · check-in method (+8) · host bio (+5). Luật chấm ở platforms/agoda-homes-content-score-guideline-2025.pdf. Tách từ L-12.",
  "fix_where": "Agoda → Analytics → Content score · Arrival guide · Host profile · Photos",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-102/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-103",
  "level": "P0",
  "status_group": "Xong",
  "status": "✅ XONG 16/09/2026 (lệnh user, 6 API đều 200, đọc lại khớp): mô tả thay bằng bản chốt 08/09 (2.504 ký tự) · 40 tiện ích sửa · giường King · house rules bỏ tên kênh · parking 10.000₫/ngày xe máy · airport transfer Yes/free/15 phút. Hồ sơ properties/alacarte305/agoda.md §4, dữ liệu data/alacarte305/agoda.json. User chốt 16/09: giữ tên · ✅ địa chỉ đã sửa (200 Võ Nguyên Giáp, Phước Mỹ, Sơn Trà / A La Carte Danang Beach Hotel, 200) · Breakfast để trống · bio để sau. ĐÓNG, chỉ còn bio theo L-102",
  "task": "Agoda alacarte305 khai sai sự thật so với Booking (nguồn data/alacarte305/booking.json): mô tả hứa mì gói miễn phí · khu hút thuốc · hồ bơi/gym miễn phí · dẫn YouTube; facilities Heating=Yes · Free parking=Yes · Towels=No · Dishwasher=Yes; giường PN1 Queen (thật King); house rules nhắc \"Airbnb\"; parking trống; airport transfer = No dù tên listing hứa Free Airport Pickup.",
  "fix_where": "Agoda → Property details · Facilities · Rooms · Arrival guide",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-103/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-104",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — chờ user quyết L-14 (nối PriceLabs / chỉnh tay) + xác nhận 12 ngày chặn",
  "task": "Agoda alacarte305 không bán được vì giá + lịch, không phải nội dung: giá phẳng 2.700.000₫/đêm mọi ngày (rateType Sell Inclusive, không nối PriceLabs — L-14) trong khi Booking/Airbnb cùng căn 24–27/10 ≈ 1,78 tr/đêm → Agoda đắt hơn ~50 %, 0 booking Agoda Aug–Oct, Revenue MTD N/A, review 05/2026 \"Nice but expensive\"; 12 ngày trống (03–05/10 · 13/10 · 24–31/10) allotment 0 không có booking; chỉ 1 rate plan (huỷ miễn phí 1 ngày → user đổi 5 ngày, 4459, 16/09 20:35) dù Booking huỷ 40 %; max advance 180 ngày (Agoda khuyên No limit); 3/3 review chưa trả lời. Audit: audits/2026-09-16-agoda-305-audit.md",
  "fix_where": "Agoda → Calendar · Booking settings · Rate plans · Guest reviews · PriceLabs",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-104/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-105",
  "level": "P0",
  "status_group": "Đang chờ",
  "status": "🟡 16/09/2026 ~20:15 user chốt \"giá theo căn tới 4 khách\": POST ChildRate/setuproomoccupancy base 4 · extra 0 · maxAdults 4 · maxChildren 3 · extra bed 0 · cot 0 → 200, isAdvanceOccupancySettingsEnabled = true, rate plan sinh occupancyRate {1..4: 2.700.000}. ✅ Xác nhận 20:05 qua payload room-grid trang khách: tìm 4 người lớn → 1 offer \"4 adults\", giá ₫2.344.881/đêm (bằng offer 2 người ₫2.344.167), không sold out, không vượt occupancy. ĐÓNG. (Kiểm bằng chuỗi chữ innerText lúc 19:42–19:50 báo sai \"không có card\" — dùng payload, đừng dùng chữ)",
  "task": "Agoda alacarte305 chỉ bán được cho 2 người lớn dù Rooms khai max 4 guests: tìm 3–4 người lớn trên agoda.com → không có phòng nào; card phòng ghi \"Max guests for selected deal: 2 adults\". Gốc: ChildRate/getroombypropertyId trả occupancy phòng toàn null (maxGuestOnExistingBed · maxAdditionalGuestAllowed · maxAdults · maxChildren), isAdvanceOccupancySettingsEnabled = null → Agoda dùng mặc định 2 người lớn. Mô tả partner cũng không hiện trên trang khách (Agoda tự sinh \"About us\").",
  "fix_where": "Agoda → Rooms / Children rate & occupancy (childrenrateocc — trang lỗi \"Something went wrong\", chỉ API chạy)",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-105/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-106",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — chờ user xác nhận cố ý hay lỗi; hồ sơ properties/alacarte305/agoda-fullread.md §A10",
  "task": "Agoda alacarte305 lịch \"Closed\" 47 đêm KHÔNG có booking nào (đọc GetAvailability 16/09 23:00: remainingRoomNightsAvailable 0, isClosedOut false, không block Airbnb/Booking): 03–05/10 · 13/10 · 24/10 → 22/11/2026 (30 đêm liền) · 17–29/08/2027 · 30/08–30/09/2027 (thêm giá 0). Khách không đặt được dù trống. Phiên trước (L-104) đếm 12 ngày, nay lan ra 30+. Nghi iCal Airbnb/Booking đẩy block \"Not available\" mà Agoda không hiện tên lịch.",
  "fix_where": "Agoda → Calendar (mở từng ngày → Open → Save) hoặc kiểm calendar nguồn Airbnb/Booking cùng dải ngày",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-106/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-107",
  "level": "P1",
  "status_group": "Khác",
  "status": "⏳ Kiểm lại 17/09 sau 23:00: node scripts/ota-agoda-content.mjs --id 63382515 --score + node scripts/chrome-grab.mjs --expand <URL trang khách>; >24 h vẫn cũ → hỏi Agoda qua Need Help",
  "task": "Trang khách Agoda 305 còn dữ liệu cũ sau khi sửa 16/09 (đọc 23:10): offer vẫn \"Cancel for free before Dec 15\" = 1 ngày dù policy 4459 (5 ngày) lưu 20:35 · About us \"car park free of charge\" · FAQ \"has 24-hour check-in\" + \"has a car park\" · 8 đoạn AI hứa bãi ô tô miễn phí, gym, đón sân bay vô điều kiện · Content score vẫn 70 dù 3 mục đã lưu (check-out · method · 3 nhóm ảnh tag đủ).",
  "fix_where": "Không sửa gì — chờ Agoda tính lại (≤24 h)",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-107/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-108",
  "level": "P2",
  "status_group": "Xong",
  "status": "🟢 Bio đã lưu 17/09 (user dán 490 ký tự + OTP, đọc lại HostProfile/ViewModel thấy); trường vị trí San Jose chưa kiểm lại",
  "task": "Host profile Agoda (cấp tài khoản): bio trống (−5 điểm Content score) và trường vị trí đang là \"San Jose (CA), United States\" (HostProfileData.city/country trên trang khách, không hiện thành chữ nhưng Agoda giữ). Bio 489 ký tự đã soạn ở properties/alacarte305/agoda.md §3, nói \"based in Da Nang\" — mâu thuẫn với vị trí nếu Agoda hiện.",
  "fix_where": "Agoda → Settings/Host profile → Edit (cần OTP số điện thoại)",
  "properties": [
   "alacarte305"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-108/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-109",
  "level": "P3",
  "status_group": "Xong",
  "status": "🟢 Đóng một phần 22:45 17/09: (a) trẻ em free 305 = 1 (user chốt cả hai căn = 1) · (b) tên room type user chốt để nguyên · (c) ảnh do user sắp, giữ · (d) xem dòng gốc.",
  "task": "Bốn chỗ lệch nhỏ trên Agoda 305 cần user chốt (đọc 16/09 23:00–23:30): (a) Rooms \"children stay for free\" = 0 — 18:23 còn 1, đổi sau POST occupancy, trong khi trang khách vẫn ghi \"Children 2–7 stay for free\"; (b) tên room type vẫn …[Free Airport Pickup] không có \"From 3 Nights\" (hiện ở card phòng, Calendar connections); (c) Property photos 10 thay vì 13 như ghi 22:28 (mất Lobby/Entrance/Exterior#2/spa/massage/212104607, thêm 212105260 + 212168207) — ai xoá chưa rõ; (d) host card trang khách hiện 5 listing, thiếu 404 84510952, tên \"An Hai Bac Houses\" không khớp tên nào trên YCS.",
  "fix_where": "Agoda → Rooms · Photos · Host profile",
  "properties": [
   "alacarte305",
   "alacarte404"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-109/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-110",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Chờ refresh",
  "task": "Agoda alacarte502 — đã sửa toàn bộ content 17/09, chờ Agoda tính lại điểm (44 → kỳ vọng 100). Hai thứ phải kiểm 18/09: (a) check-out time có lên 4/4 không — lần đầu khai cả checkOutFrom 6:00 AM + checkOutUntil 12:00 PM theo đúng luật PDF; 305 chỉ có until nên vẫn 0/4 → nếu 502 lên điểm thì xin phép user áp checkOutFrom cho 305; (b) trang khách agoda.com: card 10 ảnh đã hiện bộ mới (30 tấm 2048px) chưa, đoạn \"About us\" tự sinh còn \"free parking\"/gym không. Ngoài ra chính sách huỷ 502 đổi Non-refundable → huỷ miễn phí 5 ngày (user chốt sau khi được hỏi lại) — lệch Booking/Airbnb có chủ đích. Hồ sơ: properties/alacarte502/agoda.md. (c) Thêm 21:30 khi đọc trọn: trang Beds của 502 in chữ nhỏ \"For studio-type property…\" → 22:40 user chốt đổi: bedroom [] · common space King ×1 (đọc lại khớp). Cùng lúc user chốt: 305 check-out from 6:00 AM đã áp (hết 0/4 khi refresh), trẻ em free = 1 cả hai căn (305 đổi 0→1), Beachfront giữ Yes, Reception giữ \"No reception\", tên room type để nguyên, auto reply để tắt, không thêm phí vào tin check-in.",
  "fix_where": "node scripts/ota-agoda-content.mjs --id 84463577 --score",
  "properties": [
   "alacarte305",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-110/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-111",
  "level": "P1",
  "status_group": "Xong",
  "status": "🟢 Đóng 17/09 ~20:20 — user ra lệnh, 305 đã đổi sang +84 798 229 922, đọc lại khớp (_raw/2026-09-16-agoda-settings/arrivalguide-2026-09-17.json)",
  "task": "Agoda alacarte305 Check-in instructions đang ghi SĐT SAI +84 91 6108524 (chuỗi cũ trước 16/09, chưa ai rà). Số đúng: +84 798 229 922 (kho tin OTA, host profile Agoda). Phát hiện 17/09 ~20:15 khi user bắt lỗi trên 502 (502 đã sửa).",
  "fix_where": "--set-instructions",
  "properties": [
   "alacarte305",
   "alacarte502"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-111/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-112",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — phát hiện 17/09 khi đọc trọn",
  "task": "Tên room type cũ ở cả hai căn A La Carte trên Agoda — 305 room type A La Carte Da Nang 2br/2ba [Free Airport Pickup] (thiếu \"From 3 Nights\"), 502 room type 1BR Studio A La Carte Hotel Free Airport Pick up (còn dấu ), trong khi tên listing đã đổi 16–17/09. Trang khách hiện tên room type ở card phòng (đã thấy trên 305 ngày 16/09), nên khách vẫn đọc tên cũ. Trang Rooms trên YCS không có ô tên; chưa tìm được API đổi tên room type (RoomSettings/ chỉ có Specifications · BedConfigurations).",
  "fix_where": "dò bundle Rooms tìm endpoint đổi tên, không có thì Need Help → Agoda",
  "properties": [
   "alacarte305",
   "alacarte502"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-112/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-113",
  "level": "P3",
  "status_group": "Xong",
  "status": "🟢 Đóng 22:45 17/09 — user cho phép, đổi vi = 200 Võ Nguyên Giáp, Sơn Trà cả 305 lẫn 502, đọc lại khớp",
  "task": "Địa chỉ tiếng Việt hiện lặp trên cả 305 và 502: mình nhập 200 Võ Nguyên Giáp, Phước Mỹ, Sơn Trà, Đà Nẵng, Agoda tự nối thêm khu vực + thành phố nên trang Property details hiện …, Phước Mỹ, Sơn Trà, Đà Nẵng, Phước Mỹ, Đà Nẵng, Đà Nẵng 550000. Sửa: đặt bản vi = 200 Võ Nguyên Giáp, Sơn Trà (như bản EN) bằng --set-location \"vi=200 Võ Nguyên Giáp, Sơn Trà\" cho từng căn.",
  "fix_where": "ota-agoda-content.mjs --set-location",
  "properties": [
   "alacarte305",
   "alacarte502"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-113/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-114",
  "level": "P3",
  "status_group": "Xong",
  "status": "🟢 Đóng 22:45 17/09 — user chốt Individual; ghi qua API được vì SĐT đã verify (204), đọc lại userProfileType 1",
  "task": "Host profile Agoda: \"Who manages the property?\" chưa chọn (userProfileType null) — form có Individual / Company, không bắt buộc nên bio vẫn lưu được. Chọn gì tuỳ user (tên hiển thị là cá nhân \"Huy Nguyen\", thương hiệu là công ty Harth Living). Cấp tài khoản, một lần cho cả 6 listing.",
  "fix_where": "--set-host-type 1",
  "properties": [],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-114/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-115",
  "level": "P1",
  "status_group": "Khác",
  "status": "18/09 19:45: user muốn GỠ nhóm — không có nút Ungroup cho tài khoản này → gửi support (mẫu tin EN đã đưa user; qua View grouped listing → Connect with our support / Need Help). Kỳ vọng: cả 502 lẫn 404 vẫn Active, thành hai trang riêng. Theo dõi nhãn Group listing unit ở Listings. Điểm cùng ngày: 305 100 · 502 100 · 41LHC 99 · 181 99 · 404 N/A · 15MN 53.",
  "task": "Trang nhóm Agoda của 502 + 404 mang tên tự sinh \"An Hai Bac Houses\" (ResidentialListing/84463577/ViewModel: isNameAutogenerated true, master = 502). Khách thấy tên này trên trang chung agoda.com/…/hotel/index/84463577 và host card (16/09 đã thấy \"An Hai Bac Houses · 10/5 review\" mà không hiểu). Tên không nói gì về toà nhà/thương hiệu. Sửa được tại chỗ bằng Edit listing name (tiếng Anh, \"reflect the name of the residential complex or building\") — ví dụ Harth Living Apartments at A La Carte Danang Beach Hotel. 305 không trong nhóm. Tách nhóm không tự làm được (không có nút Ungroup) → nếu muốn, Connect with our support.",
  "fix_where": "ota-agoda-content.mjs --id 84463577 --set-group-name",
  "properties": [
   "41lehycat",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-115/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-116",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Chờ Agoda tạo điểm",
  "task": "Agoda alacarte404 — đã sửa toàn bộ content 17/09 ~23:30 (căn thứ ba theo mẫu 305/502), chờ Agoda tạo điểm (API ContentScoreDetails trả 204 = chưa có dữ liệu, trang Analytics hiện N/A). Đã sửa: 31 ảnh đủ tag (xoá 38 cũ) · 88/88 facilities · arrival guide đủ (check-out 06:00–12:00) · mô tả · địa chỉ · occupancy 4 người lớn (trước null = chỉ bán 2) · 70 m² · No limit · huỷ 5 ngày (từ Non-refundable) · tên thêm \"From 3 Nights\". Kiểm 18/09: --score; trang khách nhóm 502+404. Hồ sơ properties/alacarte404/agoda.md.",
  "fix_where": "node scripts/ota-agoda-content.mjs --id 84510952 --score",
  "properties": [
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-116/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-117",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Chờ refresh",
  "task": "Agoda 41lehycat — đã sửa toàn bộ content 17/09 00:30 theo Booking extranet (căn thứ tư), chờ refresh 50 → 100. Đã sửa: 31 ảnh đủ tag (xoá 70 cũ; upload lần đầu 409 duplicate vì file vault trùng md5 ảnh cũ → re-encode) · 88/88 facilities theo Booking · arrival guide (door code, 14:00–23:00, 07:00–11:00) · mô tả/nội quy/lân cận từ profile Booking · occupancy 10 (trước null = bán 2) · 300 m² · 5 WC · super king ×4 · No limit · huỷ 5 ngày. Lệch có chủ đích với Airbnb: đỗ xe ngoài đường (Airbnb khai on premises). Hồ sơ properties/41lehycat/agoda.md.",
  "fix_where": "--score 18/09",
  "properties": [
   "41lehycat"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-117/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-118",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Chờ refresh + theo dõi Under review",
  "task": "Agoda 181tohienthanh — đã sửa toàn bộ content 18/09 01:20 theo Booking (căn thứ năm), chờ refresh 43 → 100; listing đang gắn nhãn \"Under review\" trên danh sách Agoda (N/A ba cột), chưa rõ lý do — theo dõi, >2 ngày còn thì Need Help. Đã sửa: 27 ảnh đủ tag (xoá 52) · 88/88 · arrival guide (door code 14:00–23:00 · 07:00–11:00) · nội quy (trước trống) · mô tả · địa chỉ vi · occupancy 8 (trước null) · 300 m² · No limit · huỷ 5 ngày. Hồ sơ properties/181tohienthanh/agoda.md.",
  "fix_where": "--score 18/09",
  "properties": [
   "181tohienthanh"
  ],
  "platforms": [
   "booking",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-118/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-119",
  "level": "P1",
  "status_group": "Xong",
  "status": "🟢 Đóng 19/09 08:20 — listing đã Active; trang ari/calendarsync/96450982 hiện 2 kết nối airbnb · booking, last updated 08:10/08:13 19/09 (user tự nối).",
  "task": "25anthuong11 Agoda 96450982 — chưa nối được iCal khi đang chờ duyệt. 18/09: trang ari/calendarsync/96450982 trống, API GetPropertyCalendarSyncViewModel trả 403 \"Sufficient role not found\" (305 trả 200 với 2 kết nối). Làm ngay sau khi duyệt: (1) Agoda Connect calendars → Import link Airbnb + Booking của căn (đặt tên Airbnb 25AT11 · Booking 25AT11); (2) copy link export Agoda → dán vào Booking Sync calendars + Airbnb Connect calendars; (3) kiểm isLastSyncSuccess. Chuẩn bị trước hai link export Airbnb/Booking.",
  "fix_where": "Agoda → Calendar → Calendar connections (sau duyệt)",
  "properties": [
   "25anthuong11",
   "alacarte305"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-119/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-120",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Chờ user gửi support · --score sau 24 h (API 204 lúc 09:40 19/09, kỳ vọng 100 bản hotel) · giữ 5 sao (user chốt) · ~~trang khách 404 lúc 09:14 19/09~~ → 🟢 ĐÃ LÊN SÓNG (kiểm 25/09/2026). URL đúng là dạng slug: agoda.com/4br-villa-in-an-thuong-500m-to-mykhe-beach-h96450982/hotel/da-nang-vn.html — dạng /hotel/index/96450982 vẫn 404 nên đừng dùng nó để kết luận listing chưa live; link chuẩn lấy từ nút con mắt trong YCS. Trang hiện đủ: 4 sao, host card Huy Nguyen Verified, mô tả, ảnh, 5 other properties from this host. Đặt thử 8 người lớn 2 đêm → bán được",
  "task": "25anthuong11 Agoda 96450982 đang ở chế độ YCS KHÁCH SẠN, không phải Agoda Homes (PrivateLayout/Main: IsNonHotelAccommodation=false; star rating 5 tự gán; menu Rate plans · Room mapping · Cancellation policies · Children Rate and Occupancy; facilities 440 mục/16 nhóm thay vì 88 toggle Homes; room amenities trong Rooms kipp). Hệ quả: content score chấm theo 11 mục hotel (CMS 522393–522403) thay vì 18 mục Homes; trang khách hiện \"5-star\"; không có Host profile card. 19/09 08:15–09:40 đã làm trọn content theo bản khách sạn (38+22 ảnh đủ tag ≥1030 px · 440/440 facilities · 50 room amenities · giường Q·Q·K·K · age policy Active 0–2 free · arrival guide đủ · mô tả 1.942 · huỷ 5 ngày · vi address) — hồ sơ properties/25anthuong11/agoda.md. User chốt 19/09: xong rồi xin Agoda chuyển sang Homes (không có toggle/API; agent không chat với Agoda).",
  "fix_where": "User: Need Help / Connect with our support → \"please convert property 96450982 to Agoda Homes (non-hotel accommodation, entire villa)\" · sau khi chuyển: node scripts/ota-agoda-content.mjs --id 96450982 --score (rubric đổi sang 18 mục, arrival guide + host đã đủ)",
  "properties": [
   "25anthuong11",
   "alacarte404"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-120/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-121",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 25anthuong11 Agoda 96450982 CHƯA KHAI TÀI KHOẢN NGÂN",
  "task": "🔴 25anthuong11 Agoda 96450982 CHƯA KHAI TÀI KHOẢN NGÂN HÀNG → Agoda không trả tiền được. Trang finance/payout/96450982 ghi \"There is no bank account set up — Please add a bank account to enable payouts\"; khối How each property gets paid hiện Payout account: Bank transfer kèm nhãn No default và Bookings payable 30 days after check-out. Listing đang Active và bán được, nên nếu có khách đặt thì Agoda thu tiền mà không có chỗ chuyển trả. Kèm theo: Tax settings còn trống (What type of business = -, TIN = -). Chỉ user khai được (thông tin ngân hàng + thuế), agent không đụng. Đọc 23/09/2026, chỉ đọc.",
  "fix_where": null,
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-121/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-122",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — cần user chốt chính sách min stay theo mùa trước khi bật",
  "task": "🟠 Min stay của PriceLabs TẮT ở 14/15 dòng của 7 căn (đọc 25/09/2026, audits/2026-09-25-pricelabs-minstay.json). Duy nhất 25anthuong11 Booking bật. Hệ quả: min stay thật đang do từng kênh tự giữ và không đồng bộ — Airbnb khai 2 đêm cả 7 căn (snapshot 05/09), Agoda khai 2 đêm, Booking chưa đọc. Vì PriceLabs không quản min stay nên không hạ được xuống 1 đêm để lấp đêm mồ côi: giảm giá orphan-day 20 % vẫn chạy, nhưng gap 1 đêm trên Airbnb (min 2) thì không ai đặt được, giảm bao nhiêu cũng vô ích. Cả hai kênh đều hỗ trợ (feature_access.show_min_stay = true) nên đây là chưa bật, không phải không làm được. Ba profile có sẵn (3 nights minimum · Huy SJ 2 đêm · May 2026) đang không căn nào dùng.",
  "fix_where": "PriceLabs → từng listing → Set Your Minimum Stay",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-122/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-123",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — hỏi user: (a) sàn 1 đêm cố ý hay sót? (b) Min 2.000.000 là cố ý hay bị hạ nhầm?",
  "task": "🟠 25anthuong11 lệch min stay giữa hai kênh trên CÙNG một lịch. Booking 16927056___1692705601 đang chạy PriceLabs Recommended (Short-Term Rental) sàn 1 đêm → 37 đêm gần nhất (25/09 → 31/10/2026) đang bán min 1 đêm; về sau 2–3 đêm, đỉnh 5 đêm dịp Tết 05–11/02/2027. Airbnb 1729647978348243002 của cùng căn thì tắt, giữ min 2 đêm của Airbnb. Hai kênh dùng chung lịch ⇒ một đơn 1 đêm trên Booking sinh ra đêm mồ côi mà Airbnb không bán được. Đây lại là căn yếu nhất danh mục (lấp đầy 13 %, ADR chỉ 50 % giá gốc — xem L-22), và là villa 4 phòng ngủ nên 1 đêm ăn trọn chi phí dọn + turnover. Cài đặt nằm ở listing con Booking, không phải listing cha Airbnb ⇒ ai đó đặt tay trực tiếp lên con. 🔴 XÁC MINH TRÊN TRANG KHÁCH 25/09: search Booking.com Da Nang 29/09 → 30/09 (1 đêm, 8 người lớn) → căn này hiện ra và đặt được, giá 2.139.261. PriceLabs tính cho 29/09 đúng 2.139.174 ⇒ khớp, không phải lỗi Booking, là PriceLabs ra lệnh. Đối chiếu Agoda cùng lúc (los=1 vs los=2 trên trang khách): 1 đêm trả \"Sold out! Our last room is already booked\", 2 đêm bán bình thường ⇒ min 2 đêm của Agoda đang chạy đúng, chỉ Booking thủng. ⚠️ Phát hiện kèm: Min price của căn này trên PriceLabs nay là 2.000.000 (cả dòng Airbnb lẫn Booking; Base 4.600.000 · Max 11.500.000) — ghi chép 18/09 ghi Min 3.450.000, tức đã bị hạ trong tuần qua, chưa rõ ai và vì sao. Giá đẩy 25/09–01/10 chỉ 2,08–2,28 tr, sát sàn mới.",
  "fix_where": "PriceLabs → 16927056___1692705601 → Set Your Minimum Stay (+ Airbnb cho khớp)",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-123/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-124",
  "level": "P3",
  "status_group": "Mở",
  "status": "🔴 Mở",
  "task": "🟡 181tohienthanh còn giá trị min stay 2 đêm đã lưu nhưng công tắc TẮT (default_minstay_type: dfd, default_minstay_value: 2, update_minstay: 0) ở cả hai dòng Airbnb và Booking. Nhìn trong giao diện dễ tưởng đang chạy. Bật lại chỉ cần gạt công tắc — nhưng phải xác nhận con số 2 đêm còn đúng ý trước khi bật. Ghi kèm bẫy: modal Set Your Minimum Stay mở ra luôn hiện công tắc BẬT + nhãn \"Custom minimum stay settings applied\" kể cả khi bản lưu là tắt — đọc structured_json.min_stay.data, đừng đọc modal.",
  "fix_where": "PriceLabs → 181tohienthanh (2 dòng)",
  "properties": [
   "181tohienthanh"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-124/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-125",
  "level": "P0",
  "status_group": "Mở",
  "status": "🔴 Mở — đã rõ nguyên nhân, chờ user ra lệnh mới ghi",
  "task": "🔴 25anthuong11 Agoda 96450982 ĐÓNG BÁN 276/371 đêm — trọn mùa cao điểm. Đọc 25/09/2026 (ari/Calendar/GetAvailability + GetRate, room 1600163286): mở bán 26/09 → 16/12/2026 (82 đêm, 1 phòng/đêm) · ĐÓNG isClosedOut: true từ 17/12/2026 → 18/09/2027 (276 đêm liền, gồm Giáng sinh · Tết · hè) · từ 19/09/2027 mở nhưng remainingRoomNightsAvailable = 0. Tổng 289/371 đêm không bán được. allotmentAutoTopup = 0. Không phải do đơn đã đặt (căn này lấp đầy 13 %) ⇒ nhiều khả năng tồn kho chỉ nạp tới 16/12/2026, hoặc iCal import chỉ phủ tới đó. Đây là trần chặn mọi việc tối ưu khác trên Agoda: min stay · giá · content · ảnh có hoàn hảo cũng không bán được đêm đã đóng. ĐÃ LOẠI TRỪ iCal (25/09 cùng ngày): GetPropertyCalendarSyncViewModel cho thấy 2 kết nối nhập một chiều airbnb + booking, cả hai isLastSyncSuccess: true (sync 25/09). Tải thẳng hai feed: Airbnb .ics RỖNG (0 VEVENT) · Booking .ics đúng 1 VEVENT (25/09 CLOSED - Not available) ⇒ không feed nào chặn 276 đêm kia. Đây là trạng thái nội bộ Agoda: lịch chỉ mở tới 16/12/2026, từ 17/12 chưa bao giờ được mở bán. So cùng lúc, cùng cửa sổ 371 đêm: alacarte305 đóng 0 đêm (hết allotment từ 22/06/2027) · alacarte502 đóng 0 đêm (hết allotment từ 01/03/2027) · 25anthuong11 đóng 276 ⇒ chỉ căn này bị close-out cứng, hai căn kia chỉ hết tồn kho. ĐÃ LOẠI TRỪ luôn cả cửa sổ đặt trước: maxAdvPurchase -1 (No limit) · minAdvPurchase -1 · sellEndDate và stayPeriodEndDate đều 2099-12-30 · giá đã có đủ cho cả 371 đêm (3.450.000 kể cả những ngày Closed) ⇒ không phải \"chỉ cho đặt trước N ngày\", không phải thiếu giá. Chỉ là tồn kho từng ngày: isClosedOut true + remainingRoomNightsAvailable 0. Mốc 16/12/2026 cách ngày listing lên sóng (19/09/2026) đúng ~90 ngày ⇒ nhiều khả năng lúc mở bán chỉ nạp tồn kho 90 ngày, và allotmentAutoTopup = 0 nên không có gì tự gia hạn (suy luận, khớp ngày nhưng chưa có trang nào xác nhận). Sửa cần hai việc: bỏ Closed 17/12/2026 → 18/09/2027 và nạp số phòng bán (từ 19/09/2027 vẫn remainingRoomNightsAvailable = 0). Trang: portal.agoda.com/mldc/en-us/app/ari/calendar/96450982. 🔴 ĐỪNG MỞ VỘI — mở ở giá hiện tại là bán lỗ. Giá Agoda phẳng lì 3.450.000 cho 359/371 đêm (305 cũng vậy: 2.700.000 × 365) vì Agoda không nối được PriceLabs — đã kiểm api/pms_list: 204 PMS, KHÔNG có agoda ⇒ không phải \"chưa nối\", mà là không nối được, xem L-14. 3.450.000 đúng bằng Min price của chính căn này trên PriceLabs (Booking: Min 3.450.000 · Base 4.600.000 · Max 11.500.000) ⇒ Agoda đang bán vĩnh viễn ở giá sàn. So với giá PriceLabs đang đẩy xuống Booking cho đúng các đêm đang đóng: 17–31/12/2026 TB 6.399.851 (4,98–8,02 tr) · Tết 05–11/02/2027 TB 7.938.233 (min stay 5 đêm) · 01/01–28/02/2027 TB 5.872.165 · hè 06–08/2027 TB 6.669.991. Mở lịch mà không nâng giá = bán Giáng sinh/Tết/hè ở ~44–57 % giá Booking, lại còn phá parity (VN là wide-parity country, rẻ hơn Booking có thể rớt Genius/Preferred — xem booking-ranking-playbook.md). ⇒ Thứ tự bắt buộc: (1) xác minh iCal chiều ngược Agoda → Airbnb + Booking (hiện Agoda chỉ NHẬP một chiều, isTwoWaySync: false cả hai) → (2) nâng giá Agoda tay theo mốc PriceLabs → (3) mới mở tồn kho, theo từng đợt ngắn. ⛔ Không bật Auto Top-up (gây overbooking).",
  "fix_where": "Agoda → Calendar → nâng giá trước, rồi bỏ Closed + đặt số phòng",
  "properties": [
   "25anthuong11",
   "alacarte305",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-125/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-126",
  "level": "P2",
  "status_group": "Xong",
  "status": "🟢 Đóng 26/09 — user: 10 ảnh là tự xoá cố ý (không tải lại) · giữ View trên bedroom-2-005 · tag tủ quần áo đã đổi sang Bedroom (đọc lại khớp)",
  "task": "🟠 25anthuong11 Agoda 96450982 — ảnh tủ quần áo gắn nhầm tag Balcony/terrace, và 10 ảnh biến mất. (1) bedroom-2-002 (dọc, tủ gỗ, không có ban công) mang tag Balcony/terrace ở Property 213037995 và Room 213038002 — sai từ plan 19/09; đúng là Bedroom (154). Không ảnh hưởng content score, nhưng khách lọc ảnh theo tag sẽ thấy \"ban công\" là cái tủ. (2) Từ 19/09 đến 26/09 listing mất 10 ảnh (Property 38→30: living-room-002·003·009 · dining-area-002·004 · bedroom-2-003·004·011; Room 22→20: bedroom-2-003·004) — chưa rõ user xoá tay hay Agoda loại. Tấm bedroom-2-011 là ảnh \"view\" rõ nhất của căn; hiện tag View đang gắn tạm cho bedroom-2-005 (26/09, để đủ điểm 522398).",
  "fix_where": "Agoda → Property → Photos · node scripts/ota-agoda-photos.mjs --id 96450982 --tag 213037995=154,213038002=154",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-126/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-127",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — cần user duyệt danh sách Yes theo property_details",
  "task": "🟠 15nuocman5 Booking 15668679 — Room amenities chỉ 7/174 Yes. Đọc lại từ server 26/09/2026 sau khi bật Dryer: Yes = Air conditioning · Dryer · Washing machine · Flat-screen TV · Kitchen · Balcony · View; 167 ô còn No, gồm cả thứ căn chắc chắn có theo property_details_15nuocman5.md (Toilet · Toilet paper · Towels · Free toiletries · Hairdryer · Shampoo · Iron · Dishwasher · Drying rack…). Cùng bệnh 41LHC/25AT11 đã vá 10/09 (41LHC 8 → 56 Yes). Booking sinh mô tả + bộ lọc tìm kiếm từ các ô này ⇒ khách lọc \"towels/hairdryer/dishwasher\" không thấy căn. Còn phải hỏi user riêng ô View (41LHC user chốt No vì không có view đáng kể).",
  "fix_where": "Booking → Property → Room amenities (amenities.html) · scripts/ota-write-booking-room-amenities.mjs --hotel 15668679 --plan <plan> --apply rồi Save + đọc lại tab mới",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat"
  ],
  "platforms": [
   "booking"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-127/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-128",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — chờ user chọn hướng · 26/09 kiểm live postbook/Booking/list (kể cả đơn huỷ): 3 listing Agoda CHƯA TỪNG có đơn — 41LHC · 404 84510952 (≈8 tháng, nhóm với 502) · 25AT11 (mới 8 ngày) · 26/09 đo cả 7 căn → audits/2026-09-26-agoda-search-rank.md: 181 #32 · 15NM5 #133 · 41LHC #548–2.078 · nhóm 502/404 #1.898–2.088 · 25AT11 chót bảng · 305 kín phòng T10–T11 — hạng xếp đúng thứ tự số đơn Agoda · Booking cùng bộ lọc → audits/2026-09-26-booking-search-rank.md: 41LHC #99–105 (Agoda #548), 25AT11 #81–136 (Agoda chót) — Booking xếp villa cao hơn hẳn với khách 8 người · 🟢 AGX ĐÃ BẬT (user, 26/09): campaign 1487672 ACTIVE, containsAgxPaidProgram false = đang dùng thử 2 tuần (hết ~10/10/2026, sau đó tự tính 11 %/đơn nếu không End free trial). Giờ bật không rõ so với lượt đo hạng Agoda 26/09 ⇒ đo lại agoda_ranking sau 3–5 ngày để thấy tác dụng",
  "task": "🟠 41lehycat Agoda 84463560 KHÔNG BỊ ẨN nhưng chìm sâu trong kết quả tìm kiếm. User search Đà Nẵng 11–14/10/2026 · 8 người lớn · 1 phòng không thấy căn (26/09). Đo bằng scripts/ota-agoda-search-rank.mjs (phát lại GraphQL citySearch của chính trang khách): 1.087 kết quả; 41LHC ở #560 · #632 · #926 · 1 lượt không thấy (4 lượt, Agoda xếp lại mỗi trang) — tức trang ~12–19; 181 ổn định #32. Đã loại trừ từng nguyên nhân phía mình: lịch mở, 1 phòng, không close-out/CTA/CTD · min stay 2 (tìm 3) · occupancy 10 người lớn · rate plan active, sell tới 2099 · property live, Homes · trang khách cùng bộ lọc đặt được (isSoldOut false, isOccupancyExceeded false, ₫4.080.341/đêm, 13.881.321/3 đêm) · content score 100 · giá (4,63 tr gồm thuế) rẻ hơn trung vị trang 1 (5,43 tr) · 278/365 đêm mở bán (181 chỉ 74). Khác biệt đo được duy nhất so với 181: 0 đơn Agoda trong ~8 tháng (listing tạo 02/02/2026; fact_agoda_reservations: 181 = 10 · 15NM5 = 3 · 41LHC = 0) và 0 review nguồn Agoda (provider 332: 181 = 5, 41LHC = 0; 17 review của 41LHC đến từ nguồn khác) · xa trung tâm 4,0 km vs 2,1 km. Analytics Lost booking insights trống trơn (0 lượt thua, weightedMedianRank 0) = Agoda gần như chưa có dữ liệu lượt xem. Agoda không công bố công thức xếp hạng (playbook §1) ⇒ kết luận \"thiếu lịch sử bán\" là suy luận từ phép loại trừ. Kèm theo: promotion \"Special Offer - First 3 Bookings\" −33 % (214093419, tạo 02/02/2026, tới 01/02/2027) vẫn đang chạy vì chưa có đơn nào, cộng giảm của Agoda → khách thấy −42 % trên giá niêm yết phẳng 7.000.000.",
  "fix_where": "Agoda → Growth programs (AGX / Sponsored Listing để lấy đơn đầu) · hoặc giữ nguyên",
  "properties": [
   "25anthuong11",
   "15nuocman5",
   "41lehycat",
   "alacarte305",
   "alacarte404",
   "alacarte502"
  ],
  "platforms": [
   "booking",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-128/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-129",
  "level": "P1",
  "status_group": "Mở",
  "status": "🔴 Mở — cần đọc cấu hình phòng Booking để xác nhận con số đang khai",
  "task": "🟠 181tohienthanh Booking 14740288 không bán cho khách 8 người lớn dù villa ở được 8. Đo 26/09/2026 trên trang khách booking.com, 11–14/10/2026: 6 người lớn → đặt được (10.788.252 ₫/3 đêm) · 8 người lớn → \"unavailable on our site for your selected dates\" (01–03/10 cũng vậy). property_details_181tohienthanh.md ghi \"tối đa 8 khách\"; Agoda 84463574 đặt occupancy 8 (18/09) và bán cho 8 người, đứng #32 trong tìm kiếm Đà Nẵng 8 người lớn. ⇒ Trên Booking căn này mất trọn phân khúc đoàn 7–8 người (7 người lớn chưa đo). Nhiều khả năng Max guests/số người lớn tối đa của phòng trên Booking đang khai 6.",
  "fix_where": "Booking extranet → Property → Rooms → phòng của 181 → How many guests can stay (đọc trước, sửa khi user ra lệnh)",
  "properties": [
   "181tohienthanh"
  ],
  "platforms": [
   "booking",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-129/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-130",
  "level": "P2",
  "status_group": "Xong",
  "status": "✅ Đã sửa 27/09/2026 (user ra lệnh): ô Your property thay 2 dòng thành • 🚕 FREE airport pickup for 3+ night stays, 3337 → 3252 ký tự, phần còn lại giữ nguyên từng ký tự; đọc lại trình soạn + trang khách (context sạch) còn 0 chữ \"round-trip\". Bản dịch ngôn ngữ khác (nếu có) và Booking/Agoda chưa kiểm live. properties/25anthuong11/airbnb.md là bản tự sinh — lần cào sau sẽ cập nhật",
  "task": "🟠 25anthuong11 Airbnb 1729647978348243002 còn quảng cáo đưa đón sân bay KHỨ HỒI cho kỳ ở 5+ đêm — ưu đãi này đã dừng 25/08/2026 (business.md dòng 115); user nhắc lại 27/09/2026: căn chỉ có đón sân bay miễn phí từ 3 đêm. Đọc trang khách 27/09 còn 2 dòng trong ô The space: • 🚕 FREE airport pickup for 3+ nights — round-trip transfer for 5+ nights và • 🚕 FREE airport pickup for 3+ night stays \\",
  "fix_where": "FREE round-trip airport transfer for 5+ night stays. Booking/Agoda chưa thấy câu này trong hồ sơ vault.",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "airbnb",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-130/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-131",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Mới ghi 28/09/2026. Chưa kiểm: đơn qua bản sao có hiện ở extranet Booking với nguồn nào · 6 căn còn lại có bản sao tương tự không · supplier 28999 trên thẻ 96450982 là gì. Bằng chứng: properties/25anthuong11/_raw/2026-09-28-agoda-promo-check/copy-92524653-* + booking-gdt-vn-clauses-3.2-3.3.txt",
  "task": "🟠 25anthuong11 có HAI thẻ trên Agoda — thẻ thứ hai là listing Booking.com được Agoda bán lại. User thấy 28/09/2026 (search Đà Nẵng 11–13/10 · 8 NL): thẻ #1 96450982 (YCS của mình) và thẻ #4 92524653 cùng tên 4BR Villa in An Thuong 500m to My Khe Beach. citySearch của 92524653: suppliersSummaries [{id: 3038, supplierHotelId: \"16927056\"}] = đúng hotel Booking của căn · ảnh từ bstatic.com (CDN Booking) · paymentModel: Agency · Pay at the hotel · No credit card needed · huỷ miễn phí tới 10/10 · 5 giường (Booking còn khai sofa bed) · 0 review · New to Agoda · không nhắc chữ Booking.com với khách. Căn cứ: GDT Việt Nam điều 3.2 — chủ nhà cho Booking quyền sublicense, make available… offer via or in collaboration with an Affiliated Company (Agoda cùng tập đoàn); GDT không ghi cơ chế tắt riêng (điều 3.3 chỉ cho opt-out chia sẻ dữ liệu). Hệ quả đo được: thẻ bản sao hiện 1.877.067/đêm chưa thuế vs thẻ của mình 2.095.556 ⇒ trông rẻ hơn ~10 %, dù tổng gồm thuế gần bằng (4.702.464 vs 4.753.010 / 2 đêm); bản sao không ăn promotion Agoda (Payday/Eco), đơn qua nó là đơn Booking (hoa hồng Booking, khách trả tại chỗ).",
  "fix_where": "Booking support (hỏi có tắt phân phối sang Agoda cho 16927056 được không) · hoặc chấp nhận và chỉnh giá/nội dung Booking cho khớp · chờ user quyết",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "booking",
   "agoda"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-131/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 },
 {
  "id": "L-132",
  "level": "P1",
  "status_group": "Đang chờ",
  "status": "🟡 Mới ghi 28/09/2026. Báo cáo: https://claude.ai/artifact/UNKF1nhAvcruPJZv4S41uR · bằng chứng properties/25anthuong11/_raw/2026-09-28-pricing-promo-report/airbnb/ + guest/",
  "task": "🟠 25anthuong11 Airbnb: hai Custom promotion −28 % (ở 4–10/10 và 11/10–30/11, tạo 28/09/2026) chốt cứng giá gốc từng đêm ⇒ PriceLabs KHÔNG còn điều khiển giá khách Airbnb cho 58 đêm mở tháng 10–11. promotionRawData.fixedNativeDailyPrice = 2.984.589–3.922.159/đêm (TB 3.353.751); khách trả = giá chốt × 0,72 = 2.148.904–2.823.954 (TB 2.414.701), trong khi PriceLabs đang đẩy phẳng 3.140.000 (sàn Min). Đo trang khách context sạch 28/09: 11–13/10 gạch 6.811.379 → 5.072.193 (= 3.106.274 + 3.105.105 + 600.000 dọn, × 0,72 phần phòng) · 5–7/10 gạch 6.951.292 → 5.172.930 — khớp từng đồng. Cùng cơ chế L-96.",
  "fix_where": "Airbnb Calendar → promotion (xoá/tạo lại nếu muốn giá theo PriceLabs) · chờ user quyết — không phải lỗi thao tác, là hệ quả của cách Airbnb lưu promotion",
  "properties": [
   "25anthuong11"
  ],
  "platforms": [
   "airbnb",
   "pricelabs"
  ],
  "tagging_method": "keyword_match",
  "html_url": "/issues/l-132/",
  "source": "vault/18-ota-listings/issues.md",
  "last_updated": "2026-09-25"
 }
]