Harthliving OTA · bản chữ cho AI · dựng từ vault (nguồn sửa lần cuối 29/09/2026 09:28) · mục lục: https://harthliving-ota.pages.dev/ai/index.txt URL (HTML): https://harthliving-ota.pages.dev/guide/airbnb/airbnb-hof-migration-2026-09/ [Tổng quan](https://harthliving-ota.pages.dev/) › [Guide book](https://harthliving-ota.pages.dev/guide/) › [Airbnb](https://harthliving-ota.pages.dev/guide/airbnb/) # Airbnb đổi sang phí host-only 15,5 % (15/09/2026) — cơ chế hai tool và cách làm ## Tóm tắt 30 giây **Dùng khi:** Cần hiểu vụ đổi phí Airbnb 15/09/2026 và đã xử lý ra sao. - Trước 15/09 khách trả giá + ~15 % phí, host bị trừ ~3 %. Từ 15/09 khách trả đúng giá mình đặt, host bị trừ 15,5 %. - Muốn giữ nguyên tiền nhận thì nâng giá đêm và phí dọn cùng hệ số ~15 % — khách không thấy đắt hơn. - Thứ tự đúng — tool Airbnb → drawer PriceLabs → Save → Sync; hệ số 15 %, không bật "Adjust to Include Taxes". - Đơn đã đặt trước ngày đổi không bị ảnh hưởng. ## Toàn văn Nguồn: `platforms/airbnb-hof-migration-2026-09.md` · Đọc ngày: **14/09/2026** Bản chữ cho máy đọc: [TXT](https://harthliving-ota.pages.dev/api/guidebook/airbnb/airbnb-hof-migration-2026-09.txt) ### Airbnb host-only fee 15,5 % — hai tool, một thứ tự đúng Đọc 14/09/2026, **một ngày trước hạn**. Toàn bộ là **đọc**: chữ giao diện lấy từ bundle JS + file i18n, số lấy từ endpoint preview (GET) và payload SSR. **Chưa bấm một nút nào trong hai luồng.** Bằng chứng thô ở `audits/2026-09-14-airbnb-hof-migration/`. Ba tầng bằng chứng theo `cite-evidence-tier`: **[đọc trực tiếp hôm nay]** · **[Help Center / bài chính thức]** · **[blog bên thứ ba]**. #### 0. Chuyện gì xảy ra | | Trước 15/09 (split fee) | Từ 15/09 (host-only fee) | |---|---|---| | Khách trả | giá mình đặt **+ ~15 % phí khách** | **đúng giá mình đặt** | | Airbnb trừ của host | ~3 % | **15,5 %** | | Ví dụ Airbnb đưa (₫) | mình đặt 100 → khách thấy 115 → mình nhận 97 | mình đặt **115** → khách thấy 115 → mình nhận 97 | Kết luận Airbnb tự in trong wizard **[đọc trực tiếp]**: *"Your new prices will match the prices guests see today on your listing."* — tức là nâng giá ≈ 15 % thì **khách không thấy đắt hơn**, chỉ có con số mình đặt đổi. **Không làm gì trước 15/09:** Airbnb **tự chuyển** sang host-only (chuỗi hậu-migration trong bundle: *"On {date}, we combined service fees into a single 15.5% fee paid by hosts. The prices guests see went down, lowering your nightly earnings."*). Giá giữ nguyên ⇒ payout/đêm **giảm ~12,9 %**. Tool điều chỉnh vẫn còn *"for a limited time afterwards"* **[Help 4095]**; trên tài khoản mình `postMigrationToolDeadline` hiện `null` **[đọc trực tiếp]** — tức chưa có hạn phụ nào được đặt. **Đơn đã đặt trước không đổi** — cả hai bên đều nói vậy **[Help 4095 + PriceLabs KB]**. ##### 0a. Phí tính trên gì — vì sao cleaning fee phải nâng cùng hệ số (user hỏi 14/09) **[Help 1857 + trang Service fee của tài khoản, đọc 14/09]**: phí khách 14,1–16,5 % **và** phí host 3 % đều tính trên **booking subtotal = giá đêm × số đêm + mọi phí host thu (cleaning, pet, extra guest)**, không tính trên phí Airbnb và thuế. Sau 15/09, 15,5 % cũng trừ trên đúng subtotal đó. Ví dụ 305, 3 đêm × 1.500.000 + dọn 350.000: | | Subtotal | Khách trả | Host nhận | |---|---|---|---| | Split (hôm nay) | 4.850.000 | × 1,142 ≈ 5.538.700 | × 0,97 = **4.704.500** | | Single, nâng đêm ×1,1479, giữ dọn | 5.515.550 | 5.515.550 | 4.660.640 → **thiếu 43.860** | | Single, nâng **cả hai** ×1,1479 | 5.567.315 | 5.567.315 (+0,5 %) | **4.704.380** ✔ | Thiếu hụt = cleaning × (0,97 − 0,845). Vì phí áp đồng đều lên hai thành phần, **không thể bù bằng cách chỉ nâng giá đêm**. Hệ số 0,97 ÷ 0,845 = 1,1479 (không có số hạng VAT vì tài khoản EXEMPT, không có thuế pass-through ở listing). Phí khách thật mỗi đơn dao động theo Airbnb ⇒ sau khi nâng 15 %, khách thấy chênh ±1 %, không kiểm soát được thêm. ✅ **Tầng 3 — đơn thật `HMKPW2BN2B` (305, 3 đêm 09–12/08/2026)** [đọc trực tiếp 14/09]: khách trả 5.196.391 (đêm) + 350.000 (dọn) + **909.611 phí khách = 16,40 % của 5.546.391** = 6.456.002; host nhận 5.546.391 − **166.392 phí host = 3,00 % của 5.546.391** = 5.379.999. Cả hai phí tính trên subtotal **gồm cleaning fee** — khớp Help 1857. Đơn `HME848T4HB` (15 MN, không dọn) cho cùng tỷ lệ 16,40 % / 3,00 %, tính **sau** giảm giá. Bảng đầy đủ: `audits/…/airbnb-reservation-breakdown-HMKPW2BN2B.md`. Chiếu đơn này sang sau 15/09 với hệ số 15 %: đêm 5.975.850 + dọn 402.500 = 6.378.350 → khách trả **ít hơn hôm nay 1,2 %** (vì phí khách của đơn này là 16,4 %, cao hơn 14,79 %), host nhận × 0,845 = **5.389.706 (+0,2 %)**. Không nâng dọn: host nhận 5.345.343 (**−34.656**). #### 1. Tình trạng tài khoản mình — đọc 14/09/2026 ##### Airbnb (`/hosting/host-service-fee-update`, task `CONFIRM_HOST_ONLY_FEE`) - Trạng thái task: **`ELIGIBLE`, `isNew: true`, `isPastDue: false`** — chưa làm. - `isHostEligible: true`, `isPostMigration: false`, hạn `September 15`. - **`taxEligibility: "EXEMPT"`**, `taxDisplayName: "VAT/GST"` ⇒ Airbnb **không** cộng VAT trên phí dịch vụ vào hệ số điều chỉnh của tài khoản này. Chuỗi giao diện tương ứng: *"VAT/GST charged on the service fee won't be included in your price adjustment."* → **trả lời cho `L-32`**. - **Hệ số Airbnb sẽ áp: ×1,1479** (= 0,97 ÷ 0,845, đo từ 305: min 1.300.000 → 1.492.308; 502: 1.000.000 → 1.147.929). - **13 listing đủ điều kiện, `ineligibleListings: []`** — tool chạy **toàn tài khoản**, không chọn từng căn: | Listing Airbnb | Trong PriceLabs? | Ghi chú | |---|---|---| | 305 · 404 · 502 · 181 THT · 41 LHC · 15 MN · 25 AT 11 | ✅ 7 căn | PriceLabs sẽ **ghi đè giá đêm** sau sync | | Villa with 5 Studio each w/ Private Bath & Kitchen (`1530984876196962121`) | ❌ | giá đêm sẽ đứng ở ×1,1479 của Airbnb | | NEW Pool Villa 6BR, Karaoke, Massage & Free Pickup (`1614694700651096321`) | ❌ | đang **UNLISTED** nhưng vẫn bị điều chỉnh | | 4 listing San Jose, CA (`9314…`, `1011…`, `1297…`, `1314…`) | ❌ | ngoài phạm vi (`L-09`) nhưng **vẫn nằm trong cú bấm** | ##### PriceLabs (`GET /api/airbnb_fee_migration`, preview của drawer) `summary: {listings: 7, parents: 0, children: 0, groups: 0, accounts: 0, pricing_profiles: 0, minstay_profiles: 0, migrated_earlier: 0}` — không có nhóm, không có profile, không có cha/con, **chỉ 7 dòng listing**, mỗi dòng chỉ có `base_price` + `min_price` (Max chưa đặt — `L-33`), **không có** Date-Specific Override hay customization giá cố định nào cần nâng. PriceLabs tính **hai hệ số** cho Việt Nam: `without_vat: 15` và `with_vat: 16.6` (giả định VAT 10 % trên cả phí cũ lẫn phí mới: 0,967 ÷ 0,8295 = 1,1658). Hệ số VAT là **theo quốc gia**, PriceLabs không biết tài khoản mình `EXEMPT`. | Căn | Base hiện | Base ×1,15 | Min hiện | Min ×1,15 | Cleaning fee (Airbnb) → ×1,15 | |---|---|---|---|---|---| | 305 | 2.182.970 | **2.510.416** | 1.350.000 | **1.552.500** | 350.000 → 402.500 | | 404 | 2.179.440 | **2.506.356** | 1.350.000 | **1.552.500** | 350.000 → 402.500 | | 502 | 1.688.560 | **1.941.844** | *chưa đặt* | — | 200.000 → 230.000 | | 181 THT | 3.862.830 | **4.442.254** | 2.500.000 | **2.875.000** | 500.000 → 575.000 | | 41 LHC | 4.622.500 | **5.315.875** | 3.450.000 | **3.967.500** | 600.000 → 690.000 | | 15 MN | 4.500.000 | **5.175.000** | 3.450.000 | **3.967.500** | *không có cleaning fee* | | 25 AT 11 | 4.000.000 | **4.600.000** | 3.000.000 | **3.450.000** | 500.000 → 575.000 | (Nếu bật "Adjust to Include Taxes" = ×1,166: 305 base 2.545.343 · 41 LHC 5.389.835 … — **không khuyến nghị**, xem §4.) #### 1a. Cài đặt thuế và phí hiện tại trên Airbnb — đọc 14/09/2026 (trả lời câu hỏi user) **Cấp tài khoản** (`account-settings/taxes`, `…/payments/service-fee`): - Taxpayers: **Huy Minh Nguyen** (US, Default) · **Tiffany Le** (US). Không có VAT ID. - **ERC — Giấy chứng nhận đăng ký doanh nghiệp VN `0402202817`, VERIFIED.** Airbnb: *"You can only have one ERC or VAT ID at a time."* - Tab **Tax withholding**: trống, `taxNotifications: []` → không có khấu trừ tại nguồn đang áp. - **Service fee: `Split fee (CURRENT SETTING)`** — *"On September 15, 2026, you'll be migrated to the single fee."* Trang này ghi phí khách tính trên *"all host charges, including nightly prices, cleaning fees, and pet fees"*. - Hệ quả: payload HOF khai **`taxEligibility: EXEMPT`** (VAT/GST) — Airbnb không cộng VAT vào phí dịch vụ của tài khoản có ERC ⇒ hệ số ×1,1479, không phải ×1,166. *(Việc doanh nghiệp có phải tự kê khai VAT nhà thầu trên phí Airbnb hay không là câu hỏi cho kế toán — không đổi hệ số nâng giá.)* **Cấp listing** (calendar → `pricing-settings`, đọc 15 MN; route `…/pricing-settings/taxes` không tồn tại, PDP không có dòng thuế): - Panel Pricing chỉ có 4 ô: **Base price · Custom weekend price · Smart Pricing (tắt) · Fees**. **Không có ô Taxes** ⇒ không cấu hình pass-through tax nào, Airbnb không thu hộ thuế nào cho listing VN. - Fees của 15 MN: cleaning **₫0** · pet **₫0** · extra guest *"after 1 guest, per night"* (số chưa đọc được — panel cuộn trong). Cleaning 6 căn còn lại theo preview PriceLabs (§1). - Base price phía Airbnb (15 MN 4.851.736 · 305 2.050.000) **khác** Base PriceLabs — là số Airbnb tự giữ cho ngày không có giá đẩy, vô nghĩa khi PriceLabs đẩy 731 ngày. Ảnh chụp: `audits/…/airbnb-account-taxes.png` · `airbnb-service-fee-settings.png` · `airbnb-15mn-pricing-panel.png` · `airbnb-15mn-fees-panel.png`. #### 1b. Ai cầm thứ gì — bảng gỡ rối (user hỏi 14/09) | Thứ | Nằm ở đâu | Cần nâng? | Tool nào nâng | |---|---|---|---| | **Giá đêm (standard rate)** | PriceLabs tính từ Base/Min, đẩy đè lên Airbnb mỗi lần sync | ✅ Base + Min ×1,15 | **Drawer PriceLabs** → Save → Sync. Tool Airbnb cũng nâng ×1,1479 nhưng chỉ sống tới lần sync kế — PriceLabs là chủ thật | | **Cleaning fee · pet · extra guest** | Chỉ trên Airbnb, PriceLabs không chạm được | ✅ ×1,1479 | **Tool Airbnb** (tự động, 13 listing) — hoặc sửa tay từng listing editor | | **Weekly 5 % · monthly 10 %** | Trên Airbnb, dạng **phần trăm** của giá đêm | ❌ **Không** — giá đêm lên 15 % thì giá tuần/tháng tự lên theo | Không tool nào đụng (Airbnb *"excluding discounts"*) | | Promotion / early-bird / last-minute % | Airbnb, phần trăm | ❌ Không | — | | Smart Pricing min/max (305, 502 còn lưu) | Airbnb | tự nâng, vô hại vì PriceLabs đè giá từng ngày | Tool Airbnb | | 6 listing ngoài PriceLabs (4 San Jose + 2 VN) | Airbnb | ✅ | Tool Airbnb — không ai ghi đè nên giữ luôn ×1,1479 | Cơ chế "ghi đè": tool Airbnb nâng giá đêm, nhưng PriceLabs không biết; lần sync kế nó đẩy lại giá tính từ Base **cũ** ⇒ giá đêm tụt về, phí đã 15,5 % ⇒ mất 12,9 %. Vì thế Base/Min phải nâng ở PriceLabs. #### 1c. Cấu hình sync THẬT của mình — đọc từ gói đẩy gần nhất (305, `api/fetch_last_request_text`, 14/09) | Thông số | Giá trị đọc được | Ý nghĩa cho mốc 15/09 | |---|---|---| | Kết nối | `OfficialAirbnb: True`, `Portal: airbnb`, `PushPricing: Y` cho cả 7 căn | PriceLabs **ghi thẳng** giá từng ngày lên Airbnb | | Gói đẩy gồm gì | **chỉ mảng `Rates` 731 số** (+ `Availability`, `UnitCountArray`) — không có cleaning fee, không min/max, không discount, không min-stay | Mọi thứ ngoài giá đêm là của Airbnb | | Chân trời | `StartDate 2026-09-13` → `EndDate 2028-09-12` = **731 ngày** | ≥ 2 năm tool Airbnb sửa ⇒ sync xong là **đè hết**, không sót ngày nào | | Airbnb mở bán tới | 09/06/2027 (+269 ngày); 533/731 ngày còn lại là đóng/đã đặt (giá âm) | Ngoài 269 ngày Airbnb không bán, không cần lo | | Nhịp đẩy | `CurrentListingTime 2026-09-13 12:16:08`, `UserSync: N`; dashboard 08:48 ngày 14/09 ghi "21 hours ago" | **Tự đẩy mỗi ngày ~12:15**. Chạy tool Airbnb mà chưa nâng PriceLabs ⇒ lần đẩy kế (≤ 24 h) trả 731 ngày về giá cũ | | Customization | **toàn bộ tắt**: `weekly/monthly_discount_on 0` · `update_minstay 0` · `update_listing_extra_person_on 0` · không DSO · không seasonal/fixed | Không có giá cố định nào ngoài Base/Min phải nâng | | Yếu tố % đang chạy | last-minute market-driven (−33 % same-day → 0 % sau 8 ngày) · far-out premium ×1,2 · occupancy market-driven | Đều là **%** của Base ⇒ nâng Base 15 % là cả 731 ngày lên 15 % | | Kẹp Min | 2/198 ngày trống đang đúng 1.350.000 (15–16/09), 4 ngày trong Min+5 % | Không nâng Min thì đúng những đêm ế nhất mất 12,9 % — vì thế drawer nâng cả Min | | Max | `MaxPrice: ""` | Không có gì để nâng (`L-33`) | | Mapping | `parents 0 · children 0` — dòng Booking của cùng căn là dòng riêng | Drawer chỉ đụng 7 dòng Airbnb; **Booking/Agoda không đổi** | Kiểm chéo: preview drawer báo Base 2.182.970 / Min 1.350.000 cho 305 — **trùng** với `BasePrice`/`MinPrice` trong gói đẩy ⇒ drawer nâng đúng số đang chạy. Gói thô: `audits/…/pricelabs-last-push-305.json`. **Điều Airbnb đang giữ (PriceLabs không gửi):** cleaning fee · pet/extra-guest fee · weekly 5 % / monthly 10 % · promotion · Smart Pricing min/max cũ (305: 1,3 tr / 3,77 tr — số chết, Smart Pricing tắt) · availability window. #### 2. Tool của Airbnb — wizard 7 bước, một cú bấm cho cả tài khoản Vào từ thẻ **"We're simplifying service fees · Action required by September 15"** (Listings/Today/Calendar) → `airbnb.com/hosting/host-service-fee-update`. Chữ từng bước **[đọc trực tiếp từ bundle]**: 1. *"Today, the price you set doesn't match the price guests see."* — bảng 100 / 115 / 3 / 97. 2. *"Guests pay a service fee on top of the price you set. And a host service fee is deducted from your earnings."* 3. *"To simplify pricing, we're combining both fees into a single 15.5% fee paid by hosts."* 4. *"To keep your earnings the same, we can adjust your prices to account for the single service fee."* + dòng thuế: với mình là *"…won't be included"*. 5. **"Your listings"** — từng listing: *Original price is X → New price is Y*; căn bật Smart Pricing hiện *Minimum / Maximum nightly price* và *"Smart Pricing already updated your nightly prices—just confirm your new minimum and maximum."* 6. **"Adjust prices for all your listings?"** / **"Confirm one-time price adjustment?"** — *"We'll adjust all of your prices and update your service fee now. **This adjustment cannot be reversed.**"* 7. Nút cuối: **`Adjust all prices`** ⇄ **`Don't adjust prices`**, rồi *"Adjusting your prices…"*. Tool sửa gì **[Help 4095]**: *"All prices (including custom price, custom promotion price, weekend price, and base price) and additional fees (e.g., pet fee, cleaning fee, etc.), excluding discounts"*, cho **2 năm lịch**, cả listing **active lẫn inactive**, cả **Smart Pricing min/max**. Chạy xong là **đã chuyển sang host-only**, *"won't be able to revert back to the split-fee structure."* ⚠️ Hai điều wizard **không** nói: (a) nó không nhắc cleaning fee ở màn hình nào — phải tin Help 4095; (b) không cảnh báo gì cho người dùng phần mềm giá — chính PriceLabs mới nói (§3). #### 3. Tool của PriceLabs — drawer "Airbnb Fee Change: Update Prices" Vào từ banner **`Update My Prices Now`** trên Pricing Dashboard → drawer phân trang. Ghi chỉ xảy ra ở **một** nút: `Save Prices` (POST `/api/airbnb_fee_migration/apply`). Toàn bộ chữ **[đọc trực tiếp từ i18n]**: **Trang 1 · Overview** — đếm 7 Airbnb Listings / 0 Groups / 0 Pricing Profiles / 0 Minstay Profiles / 0 Account. Ba lựa chọn: - **Review and Adjust Prices** — đi tiếp. - **Close for now** — *"you can come back any time before Sep 15th 2026."* - ⛔ **"I'm Already on Host-Only Fee and Adjusted My Prices"** — *"Selecting this option will dismiss the Price Update Tool and **you will not be able to access it in the future**."* Có hộp xác nhận. **Không bấm.Trang 2 · Before you begin** — đây là chỗ chốt thứ tự: *"**Step 1** — Run the Airbnb price adjustment tool to update your nightly rates (we will overwrite them in Step 2), cleaning fee, and any other fees. **Step 2** — Return to this workflow once done to update your prices in PriceLabs and sync to Airbnb."* *"Why do I need to do this first? PriceLabs doesn't control your cleaning fee or any other fees set in Airbnb. Updating in Airbnb first ensures those fees reflect the new 15.5% fee structure. When you run the Airbnb migration tool, your nightly rates will change temporarily — PriceLabs will overwrite them once you update and Sync."* Hai nút: **"I've Run the Airbnb Price Adjustment Tool"** ⇄ **"Continue Without Running the Airbnb Tool"** *(Not recommended)* — cảnh báo: *"Until then, your cleaning and other fees will remain unadjusted, and **Airbnb will increase your nightly rates by an additional 15% until your next sync**."* **Trang 3–9 · từng listing (×7)** — mỗi trang: - ô **`Increase by`** % (0–100; mặc định theo `percent.without_vat` = 15) + công tắc **`Adjust to Include Taxes`** (→ 16,6 %; tooltip: *"In countries where Airbnb charges VAT on service fees, the required increase is slightly higher than 15%."*). - bảng **Price Changes** (Base / Min / Max: Current → New), **Date Specific Overrides**, **Fixed-Price Customizations** — hai mục sau trống với mình. - hộp vàng **"You need to update this on Airbnb — The 15% fee also applies to your cleaning fee. PriceLabs can't change this"** + nút `Open Airbnb Listing Editor`. - chân: **`Skip This Listing`** · **`Accept Changes & Next`** · **`Accept for All`**. **Trang Summary** — *"Review your accepted changes below before saving to PriceLabs."* → **`Save Prices`** ⟵ **cú bấm ghi duy nhất**. **Applying** → kết quả từng dòng `Saved` / `Already Up To Date` / `Failed (Contact support)` → nút **`Sync N Updated Listings`** (đẩy giá mới xuống Airbnb) → *"Syncing prices for 7 Airbnb listings. This may take a few minutes."* Endpoint (để đọc lại preview không cần mở drawer): `GET https://app.pricelabs.co/api/airbnb_fee_migration?page_number=1` — cookie phiên là đủ, header chỉ có `traceparent`. `POST …/apply` và `POST …/dismiss` là ghi — **cấm**. #### 4. Thứ tự đúng — và vì sao ba nguồn nói ba kiểu | Nguồn | Thứ tự đề xuất | |---|---| | **Drawer PriceLabs (mới nhất, trong app)** [đọc trực tiếp] | **Airbnb tool → PriceLabs drawer → Save → Sync** | | Help Center PriceLabs (viết lúc tool "coming mid-August") [KB] | PriceLabs → Sync → rồi mới chuyển fee trên Airbnb | | Blog bên thứ ba (rentalscaleup, ListingLab) [blog] | bỏ hẳn tool Airbnb, chỉ sửa PriceLabs + sửa phí tay | **Theo drawer.** Lý do: tool Airbnb là cách **duy nhất một cú bấm** nâng cleaning fee của 13 listing và chuyển fee; giá đêm nó nâng ×1,1479 chỉ sống tới lần sync PriceLabs kế tiếp (PriceLabs ghi đè bằng base mới ×1,15 — hai số gần như bằng nhau nên **không có cửa sổ giá lệch**). Làm ngược (PriceLabs trước) thì lúc chạy tool Airbnb sau đó, giá đêm bị **cộng thêm 15 % lần nữa** cho tới sync — chính là cảnh báo trong drawer. Bỏ tool Airbnb thì phải sửa cleaning fee tay ở 13 listing **và** vẫn phải đi qua wizard để chuyển fee (hoặc chờ Airbnb tự chuyển 15/09). **Hệ số: 15 %, KHÔNG bật "Adjust to Include Taxes".** Airbnb — bên thu phí và bên tính thuế — khai tài khoản này `EXEMPT` và tự áp ×1,1479. Bật 16,6 % là nâng cao hơn Airbnb ~1,6 % ⇒ khách thấy đắt hơn hôm nay, tự làm giảm conversion. *(Đây là khuyến nghị; `L-32` vẫn cần user chốt, vì "EXEMPT" là cách Airbnb phân loại, mình chưa đối chiếu hoá đơn phí dịch vụ tháng gần nhất xem có dòng VAT không.)* #### 5. Runbook — CHỈ 7 CĂN trong workspace (user chốt 14/09/2026), không dùng tool Airbnb **Vì sao không dùng `Adjust all prices` của Airbnb:** nút đó chạy cả 13 listing của tài khoản, không chọn được căn. Giới hạn ở 7 căn ⇒ cleaning fee sửa tay từng căn (bước 1), giá đêm để PriceLabs (bước 2), phí chuyển tay (bước 3). **Không tách được:** đổi phí là cài đặt **cấp tài khoản** (`account-settings/payments/service-fee`) ⇒ 6 listing ngoài phạm vi (4 San Jose + villa 5 studio + căn 6BR unlisted) đổi phí cùng lúc, giá của chúng không ai nâng ⇒ payout của chúng giảm 12,9 %. Ngày 15/09 Airbnb cũng tự chuyển chúng — muốn giữ payout cho 6 căn đó thì cách duy nhất một cú bấm là tool Airbnb (§5b). Hệ số **15 %**, thuế **tắt**. Làm 1 → 2 → 3 **liền nhau** trong một buổi. ##### Bước 1 — Airbnb: nâng cleaning fee 6 căn (15 MN không có), ~10 phút Đường đi mỗi căn: **Calendar → chọn căn ở cột ảnh bên trái → panel phải "Pricing" → ô `Fees` → `Cleaning fee · Per stay` → gõ số mới → `Save`**. Trong cùng trang Fees, nếu `Amount per short stay`, `Pet fee`, `Extra guest fee` đang có số > 0 thì nhân 1,15 luôn; đang ₫0 thì để nguyên. | Căn (tên trên Airbnb) | Cleaning hiện | **Gõ vào** | |---|---|---| | 305 · Newly built A La Carte 2b2ba | 350.000 | **402.500** | | 404 · Remodel 2br/2ba A La Carte | 350.000 | **402.500** | | 502 · 1BR Studio A La Carte Hotel | 200.000 | **230.000** | | 181 To Hien Thanh · Modern 3BR Beach Villa | 500.000 | **575.000** | | 41 LHC · Newly built villa 4br/5ba | 600.000 | **690.000** | | 25 AT 11 · 4BR Villa in An Thuong | 500.000 | **575.000** | | 15 MN · The Living Tree Villa | 0 | **575.000** (user chốt coi gốc 500.000, đặt 14/09) | **✅ Bước 1 ĐÃ LÀM 14/09/2026 ~11:15** bằng `scripts/ota-write-airbnb-cleaning-fee.mjs` (user ra lệnh "thực hiện sửa phí dọn dẹp"). Mỗi căn set qua `#PriceInput-cleaningFee` trên trang con `…/pricing-settings/fees/cleaning`, bấm Save, rồi mở tab mới đọc lại: 305 **402.500** · 404 **402.500** · 502 **230.000** · 181 THT **575.000** · 41 LHC **690.000** · 25 AT 11 **575.000** — 6/6 khớp. **15 MN: user chốt 14/09 ~11:30 coi gốc là 500.000 ⇒ đặt mới 575.000** (trước đó ₫0 — đây là khoản thêm mới, không phải giữ payout), đã lưu + đọc lại khớp. Trang Fees tổng của cả 7 căn: pet · extra guest · management · community · linen · resort đều **₫0**, short-stay chưa đặt ⇒ không có phí nào khác phải nâng. ##### Bước 2 — PriceLabs: nâng Base + Min 7 căn rồi đẩy ngay, ~10 phút | # | Làm | Kiểm | |---|---|---| | 2.1 | Pricing Dashboard → banner → **`Update My Prices Now`** | drawer mở, Overview đếm **7 Airbnb Listings / 0 Groups / 0 Profiles / 0 Account** | | 2.2 | **`Review and Adjust Prices`** | ⛔ không chọn *"I'm Already on Host-Only Fee…"* (xoá tool vĩnh viễn) | | 2.3 | Trang *Before you begin* → **`Continue Without Running the Airbnb Tool`** | Nhãn *"Not recommended"* + cảnh báo *"Airbnb will increase your nightly rates by an additional 15 % until your next sync"* **chỉ đúng nếu SAU ĐÓ bấm tool Airbnb** — mình không bấm nên bỏ qua | | 2.4 | 7 trang listing: `Increase by` = **15** · `Adjust to Include Taxes` **tắt** · so cột *New* với bảng dưới → `Accept Changes & Next` | Hộp vàng *"You need to update this on Airbnb"* về cleaning fee: đã làm ở bước 1, không bấm `Open Airbnb Listing Editor` | | 2.5 | Summary → đọc 7 khối → ⚠️ **`Save Prices`** | 7 dòng **Saved** | | 2.6 | ⚠️ **`Sync 7 Updated Listings`** | toast *"Prices updated and sync triggered for 7 listings"* | | Căn (tên trên PriceLabs) | Base hiện → **New** | Min hiện → **New** | |---|---|---| | 305--305 | 2.182.970 → **2.510.416** | 1.350.000 → **1.552.500** | | 404--404 | 2.179.440 → **2.506.356** | 1.350.000 → **1.552.500** | | 502--502 | 1.688.560 → **1.941.844** | *chưa đặt* → — | | 181 To Hien Thanh | 3.862.830 → **4.442.254** | 2.500.000 → **2.875.000** | | 41 LHC | 4.622.500 → **5.315.875** | 3.450.000 → **3.967.500** | | 15 MN | 4.500.000 → **5.175.000** | 3.450.000 → **3.967.500** | | 4BR Villa in An Thuong (25 AT 11) | 4.000.000 → **4.600.000** | 3.000.000 → **3.450.000** | **✅ Bước 2 ĐÃ LÀM 14/09/2026 ~11:40–11:50** bằng `scripts/ota-pricelabs-drawer.mjs` (từng cú bấm, đọc lại sau mỗi cú, ảnh ở scratchpad `pl-drawer/`). Phát hiện lúc làm: **drawer mặc định BẬT "Adjust to Include Taxes" ⇒ Increase by = 16,6 %** — phải tắt ở trang 1/7 (trạng thái giữ cho 6 trang sau). User hỏi vì sao 15 % ≠ 16,6 % → kiểm lại: 2 đơn thật phí host = 3,000 % subtotal, không dòng VAT; payload Airbnb EXEMPT; Help 436 (ERC → không bị tính VAT) ⇒ giữ 15 %, user chốt. 7/7 Accept → Summary 13 thay đổi khớp bảng §1 (181 THT 4.442.255, lệch 1 ₫ làm tròn) → `Save Prices` 7/7 **Saved** → `Sync 7 Updated Listings` → toast *"Prices updated and sync triggered for 7 listings."* Preview API sau đó: `listings 0 · migrated_earlier 1`; banner biến mất. Gói đẩy 305 đọc ngay sau: `BasePrice 2.510.420` (PriceLabs làm tròn chục) · `MinPrice 1.552.500`; mảng giá đêm tính lại sau vài phút (xem Bước 4). ##### Bước 3 — Airbnb: chuyển sang single fee ngay sau khi sync, ~1 phút Account → **Payments** → tab **Service fee** → chọn **`Single fee`** → ⚠️ **`Save`**. Trang ghi *"you won't be able to go back to a split fee"*. Không bấm *"use our tool to adjust your prices"* trong trang này (chính là tool 13 listing). Làm ngay sau 2.6 để không có khoảng giá đã +15 % mà khách vẫn trả phí khách. Không làm thì 15/09 Airbnb tự chuyển — chấp nhận được, nhưng khoảng đó dài tới 1 ngày. **✅ Bước 3 ĐÃ LÀM 14/09/2026 ~19:05** bằng `scripts/ota-airbnb-service-fee.mjs` (`--read` → `--select` → user xác nhận → `--save`). Trước: `Split fee (CURRENT SETTING)`, Save disabled. Sau Save: `Single fee (CURRENT SETTING)` + hộp thoại Airbnb *"Your service fee is now 15.5% and your guests will not pay a service fee. This will affect all of your listings."* Xác minh độc lập: thẻ *We're simplifying service fees* biến mất khỏi Listings; task `CONFIRM_HOST_ONLY_FEE` không còn trong `NaviServerAnnouncementsQuery`; payload `/hosting/host-service-fee-update` đổi thành `isHostEligible: false`, `taxEligibility: NOT_ELIGIBLE` và URL tự về Today; route `…/payments/service-fee` giờ chuyển hướng sang `payment-methods`. Ảnh: `audits/…/airbnb-servicefee-shots/`. ##### Bước 4 — Xác minh (15–30 phút sau 2.6) - [ ] PriceLabs dashboard: cột **Base Price** 7 dòng đúng bảng trên; cột **Sync Price** = "a few minutes ago". - [ ] Airbnb Calendar 305: đêm 17/09 ≈ **1,62 tr** (hôm qua đẩy 1.409.989 × 1,15). - [ ] Airbnb Calendar → Pricing → Fees của 305: cleaning **402.500**. - [ ] Service fee page: **Single fee (CURRENT SETTING)**. **✅ Bước 4 (phần PriceLabs) ĐÃ KIỂM 14/09 18:37–18:50:** - Dashboard 7 dòng: Min/Base mới đúng bảng (PriceLabs làm tròn chục: 2.510.420 · 2.506.360 · 4.442.260 · 1.941.840 · 5.315.880 · 5.175.000 · 4.600.000), cột Sync "11–12 minutes ago". - `graph_data` 305: `last_refreshed_at 11:31:56Z`, `listing_last_date_pushed 11:31:57Z` (= 18:31 VN), `base 2.510.420`, `min 1.552.500`; 25 AT 11: refreshed 11:32:23Z, base 4.600.000, min 3.450.000. Ngày ế 15–20/09 kẹp đúng Min mới. - **Airbnb lịch 305 (`getDLSHostCalendar`) khớp 100 % giá PriceLabs ở 19/19 ngày không có promotion** (19/09 → 20/10) ⇒ sync đã tới Airbnb với hệ số mới. - ⚠️ **10 ngày có `host_custom_promotion` (15–18/09, 22–27/09, group key 2026-09-15) Airbnb vẫn bán giá khuyến mãi CŨ**, thấp hơn PriceLabs 0–8 % (16/09: Airbnb 1.430.737 vs PriceLabs 1.552.500). Đây là "custom promotion price" mà tool Airbnb đáng lẽ nâng ×1,1479; mình bỏ tool nên nó không được nâng. Ghi `L-96`. Chưa kiểm promotion của 6 căn còn lại. ##### Bước 5 — Ghi sổ (agent làm khi user báo xong) `L-01` ✅ · `L-32` ✅ (15 %, tắt thuế) · `L-33` giữ mở · `pricelabs.md` §2b bảng Base/Min mới · `todo.md` mục A gạch xong. **Không bấm:** *"I'm Already on Host-Only Fee…"* · `Adjust all prices` / *"use our tool to adjust your prices"* (13 listing) · công tắc *Adjust to Include Taxes* · `Sync Price` từng dòng trên dashboard trước 2.5. ##### 5b. Đường thay thế — nếu muốn giữ payout cho cả 6 listing ngoài phạm vi Thay bước 1 + 3 bằng wizard Airbnb → `Adjust all prices` (nâng cleaning fee + giá đêm ×1,1479 cho 13 listing, đổi phí), rồi bước 2 chọn *"I've Run the Airbnb Price Adjustment Tool"*. Chi tiết wizard ở §2. #### 6. Chưa xác minh / ngoài phạm vi - **`L-96` — promotion Airbnb giữ giá cũ** (user chốt 14/09: để đó, xử lý sau bước 3). Chưa quét 6 căn còn lại. - Chưa mở drawer PriceLabs thật (nút nằm trong danh sách cấm của `ota-readonly-rule.md` §5) — giá trị mặc định của công tắc thuế và cột *New* trên UI suy từ i18n + preview, chưa nhìn bằng mắt. - Wizard Airbnb chỉ đọc tới bước 1 bằng mắt; bước 2–7 đọc từ bundle. - 18 listing Airbnb còn lại trong PriceLabs (86 PCL, Ba Na Hills, các studio `1681…`) **không nằm trong preview 7 dòng** và không nằm trong 13 listing của tài khoản Airbnb đang đăng nhập → thuộc tài khoản Airbnb khác hoặc đã host-only sẵn. Chưa kiểm. - Không tìm thấy trên Airbnb tuyên bố rõ "sau hạn, tool còn tới ngày nào" cho tài khoản mình. #### 7. Nguồn - Bundle wizard Airbnb: `a0.muscache.com/…/host-hof-transition/routes/HofTransition/index.66070cbb65.js` (đọc 14/09/2026) - Payload SSR trang `/hosting/host-service-fee-update` → `hostOnlyFeeTransition.eligibility` (lưu `audits/…/airbnb-hof-eligibility.json`) - i18n PriceLabs `pricing.airbnb_fee_migration.*` nhúng trong `app.pricelabs.co/pricing` (lưu `audits/…/pricelabs-drawer-strings.json`) - Chunk PriceLabs `91262-1bb50bdfe5733e56.js` — định nghĩa `airbnbFeeMigrationApi` - [Airbnb Help 4095 — Using the Airbnb price adjustment tool](https://www.airbnb.com/help/article/4095) - [Airbnb Resource Center — Simplifying service fees](https://www.airbnb.com/resources/hosting-homes/a/simplifying-service-fees-on-airbnb-771) - [PriceLabs KB — Airbnb fee structure change](https://help.pricelabs.co/portal/en/kb/articles/airbnb-fee-structure-change-what-pricelabs-users-need-to-know) - [Rental Scale-Up — Airbnb host fees 15.5 %](https://www.rentalscaleup.com/airbnb-host-fees/) *(bên thứ ba, chỉ để đối chiếu công thức ÷0,845)*