> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# v1.109.0 (21 tháng 7, 2026)

> Dashboard Analytics v3 được xây dựng lại hoàn toàn với doanh thu theo thời gian thực, so sánh kỳ chỉ bằng một cú nhấp, bố cục tùy chỉnh và các thẻ biểu đồ có thể chia sẻ — cùng với paid trials cho subscriptions và checkout, tính năng ngăn lạm dụng trial, Payout Accounts để quản lý nhiều tài khoản ngân hàng, mức giá sản phẩm và add-on bằng mọi loại tiền tệ có thể tính phí, webhook subscription.update_payment_method mới và social login nguyên bản trong ứng dụng di động.

## Tính năng mới

### 1. **Analytics v3 — Dashboard được xây dựng lại hoàn toàn**

Chúng tôi đã xây dựng lại analytics từ đầu. Dashboard giờ đây tập hợp mọi chỉ số quan trọng vào một nơi, sử dụng data engine theo thời gian thực mới (**Analytics v3**).

<Frame>
  <img src="https://mintcdn.com/dodopayments/0CMGO15EywCgJkDq/images/analytics/analytics-v3.png?fit=max&auto=format&n=0CMGO15EywCgJkDq&q=85&s=10e0adb16fea47972cf13a4afe709859" alt="Dashboard Home được thiết kế lại, sử dụng Analytics v3" style={{ maxHeight: '500px', width: 'auto' }} width="1888" height="1015" data-path="images/analytics/analytics-v3.png" />
</Frame>

**Mọi thứ ở một nơi**

* **Doanh thu theo thời gian thực** — xem doanh thu hôm nay khi phát sinh, theo từng giờ.
* **So sánh chỉ bằng một cú nhấp** — so sánh bất kỳ chỉ số nào với kỳ trước, chẳng hạn tháng trước, chỉ bằng một cú nhấp.
* **Doanh thu theo quốc gia** — xem chính xác doanh thu của bạn đến từ những quốc gia nào.
* **Tình trạng Payments** — theo dõi payments thất bại, refunds và recovery trong cùng một chế độ xem.
* **Thông tin chi tiết về Subscription** — các retention cohort, MRR và theo dõi churn được tích hợp sẵn.

Có hai điểm chúng tôi đặc biệt tự hào:

1. **Bố cục tùy chỉnh.** Kéo các widget đến vị trí mong muốn và chọn những chỉ số hiển thị — dashboard của bạn, theo cách của bạn. Bố cục được tự động lưu.
2. **Thẻ biểu đồ có thể chia sẻ.** Nhấp **Share** trên bất kỳ chỉ số nào, chọn theme màu, thêm logo và tải xuống hình ảnh sẵn sàng đăng — hoàn hảo cho cập nhật với nhà đầu tư hoặc báo cáo nhóm, không cần công cụ thiết kế.

Tìm hiểu thêm: [Dashboard Analytics](/features/analytics-and-reporting)

### 2. **Paid Trials cho Subscriptions & Checkout**

Trial không còn bắt buộc phải miễn phí. Giờ đây, bạn có thể tính **trial amount** trên recurring price của subscription product, để khách hàng trả một khoản phí ban đầu được giảm trong thời gian trial trước khi mức giá đầy đủ được áp dụng ở lần renewal đầu tiên.

<Frame>
  <img src="https://mintcdn.com/dodopayments/xWy-mQaJKoU2V22s/images/subscriptions/paid-trials.png?fit=max&auto=format&n=xWy-mQaJKoU2V22s&q=85&s=e7d6749e11cc3f8bfa45906d970fd606" alt="Biểu mẫu định giá subscription với thời lượng trial và trial amount tùy chọn cho paid trial" style={{ maxHeight: '500px', width: 'auto' }} width="1014" height="809" data-path="images/subscriptions/paid-trials.png" />
</Frame>

* Đặt `trial_amount` cùng với `trial_period_days` trên recurring price — paid trial yêu cầu trial period dương.
* Chọn việc checkout discounts có áp dụng cho trial charge hay không (`trial_apply_discounts`), để paid-trial amount có thể được giảm giá hoặc tính đầy đủ một cách độc lập với recurring price.
* Paid trials cũng được xử lý qua **checkout**: trial amount được tính thuế và hiển thị trong các phép tính của checkout-session và mức giá của payment-link, với markup của Adaptive Currency được áp dụng theo từng loại tiền tệ.

Free trials không thay đổi — để trống trial amount sẽ giữ nguyên hành vi hiện tại, trong đó khoản phí đầu tiên là `0` và phát sinh khi trial kết thúc.

Tìm hiểu thêm: [Subscriptions](/features/subscription) | [Checkout Session](/developer-resources/checkout-session)

### 3. **Ngăn lạm dụng Trial trên Subscriptions**

Một cài đặt **Prevent Trial Misuse** mới, được bật tùy chọn, sẽ ngăn khách hàng liên tục nhận trial cho cùng một doanh nghiệp. Khi được bật, khách hàng đã đổi một trial trước đó — được xác định bằng email đã chuẩn hóa (đã loại bỏ plus-alias) — sẽ tự động được chuyển thành **paid, no-trial purchase** thay vì nhận trial mới.

<Frame>
  <img src="https://mintcdn.com/dodopayments/xWy-mQaJKoU2V22s/images/subscriptions/prevent-trial-misuse.png?fit=max&auto=format&n=xWy-mQaJKoU2V22s&q=85&s=954fb3e74985d71017cbfc18fbf09e04" alt="Nút chuyển Prevent Trial Misuse trong tab cài đặt Subscriptions" style={{ maxHeight: '500px', width: 'auto' }} width="1898" height="1006" data-path="images/subscriptions/prevent-trial-misuse.png" />
</Frame>

Bật tính năng này từ tab **Subscriptions** trong cài đặt dashboard. Cài đặt này **tắt theo mặc định**, các lần đổi trial được ghi nhận tại thời điểm kích hoạt trial (vì vậy ngay cả việc hủy trong cùng ngày cũng tiêu tốn trial), và khách hàng hiện tại được bổ sung dữ liệu từ các trial trước đây dựa trên email.

Tìm hiểu thêm: [Subscriptions](/features/subscription)

### 4. **Payout Accounts**

Giờ đây, bạn có thể quản lý **nhiều tài khoản ngân hàng payout** từ dashboard thay vì chỉ một tài khoản cố định. Thêm tài khoản theo loại tiền tệ và phương thức chuyển tiền, lưu bản nháp, gửi lại các tài khoản đang bị tạm giữ, đồng thời xem tài khoản đang hoạt động cũng như lý do tạm giữ hoặc thất bại ngay trong giao diện.

<Frame>
  <img src="https://mintcdn.com/dodopayments/eH3qSTsrWihVdlv7/images/payouts/payout-page.png?fit=max&auto=format&n=eH3qSTsrWihVdlv7&q=85&s=c4011d2daa64e6e6730a37c806c159e0" alt="Trang Payouts hiển thị số dư đủ điều kiện payout, cài đặt lịch, tài khoản ngân hàng được liên kết và lịch sử payout" style={{ maxHeight: '500px', width: 'auto' }} width="1638" height="1017" data-path="images/payouts/payout-page.png" />
</Frame>

* Tài khoản được phê duyệt đầu tiên sẽ tự động được kích hoạt; các tài khoản bị tạm giữ hoặc thất bại sẽ hiển thị lý do ngay trong giao diện cùng thao tác gửi lại.
* Việc xác minh ngân hàng trong quá trình onboarding doanh nghiệp giờ đây sử dụng cùng flow payout-accounts, mang lại trải nghiệm nhất quán.

Tìm hiểu thêm: [Payouts Process](/features/payouts/payout-structure) | [Balances](/features/account-summary-payout-wallet)

### 5. **Định giá Product & Add-on bằng mọi loại tiền tệ có thể tính phí**

Giờ đây, **base prices** của product và add-on có thể được thiết lập bằng bất kỳ loại tiền tệ nào mà Dodo Payments có thể tính phí, không chỉ USD. Các biểu mẫu định giá có currency selector hỗ trợ tìm kiếm cùng cờ quốc gia; những loại tiền tệ phổ biến nhất — **USD, GBP, EUR và INR** — được ghim ở đầu dropdown.

Mọi khách hàng bên ngoài base currency của bạn vẫn được tính phí thông qua Adaptive Currency, nhưng giờ đây bạn hoàn toàn tự do tạo mức giá bằng loại tiền tệ phù hợp nhất với thị trường của mình.

Tìm hiểu thêm: [Products](/features/products) | [Add-ons](/features/addons) | [Adaptive Currency](/features/adaptive-currency)

### 6. **Webhook mới: `subscription.update_payment_method`**

Một webhook event **`subscription.update_payment_method`** mới được kích hoạt mỗi khi payment method của subscription thay đổi — chẳng hạn khi khách hàng chuyển sang một thẻ đã lưu khác. Event này chứa Subscription payload, giúp bạn đồng bộ bản ghi mà không cần polling.

Event này mang tính bổ sung và tự động xuất hiện trên các webhook endpoint hiện có.

Tìm hiểu thêm: [Webhook Events](/developer-resources/webhooks/intents/webhook-events-guide)

### 7. **Social Login nguyên bản trong ứng dụng di động**

Ứng dụng di động Dodo Payments giờ đây hỗ trợ **native social login** — đăng nhập bằng **Google** hoặc **GitHub** thông qua secure system auth session của thiết bị thay vì nhập email và password. OAuth exchange sử dụng **PKCE (S256)** được liên kết với state nonce theo từng request, giúp việc đăng nhập nhanh hơn đồng thời tăng cường bảo vệ trước code injection và CSRF. Flow tương tự cũng có sẵn trong desktop app.

## Cải tiến & Sửa lỗi

### 8. **`next_billing_date` trong Checkout Session Preview**

**Preview** của checkout session giờ đây trả về `next_billing_date` khi cart chứa subscription product, giúp bạn hiển thị ngày billing sắp tới trước khi subscription được tạo. Giá trị này được tính tương đối so với thời điểm hiện tại (`now + trial period` khi áp dụng trial, nếu không thì `now + one payment frequency`) và được bỏ qua đối với cart chỉ có sản phẩm mua một lần.

Tìm hiểu thêm: [Previewing Checkout Sessions](/developer-resources/checkout-session) | [Preview Checkout](/api-reference/checkout-sessions/preview)

### 9. **Lọc Subscriptions theo `cancel_at_next_billing_date`**

`GET /subscriptions` giờ đây chấp nhận bộ lọc **`cancel_at_next_billing_date`**, giúp bạn chỉ liệt kê các subscription được lên lịch hủy vào cuối period hiện tại (hoặc loại trừ chúng).

Tìm hiểu thêm: [List Subscriptions](/api-reference/subscriptions/get-subscriptions-1)

### 10. **Sao chép Thiết kế Checkout từ Test Mode sang Live Mode**

Giờ đây, bạn có thể **sao chép thiết kế checkout tùy chỉnh từ test mode sang live mode** chỉ trong một bước; tính năng này bao phủ tất cả design surface và storefront branding — không còn phải tạo lại theme thủ công khi chuyển sang live.

Tìm hiểu thêm: [Storefront](/features/storefront)

### 11. **Product Draft theo từng Mode**

Việc tạo product giờ đây duy trì **các bản nháp riêng cho test mode và live mode**, với tùy chọn **Clear Draft**, vì vậy product đang được thực hiện ở một mode sẽ không còn ảnh hưởng sang mode kia. Các trang biểu mẫu product và collection cũng được bổ sung các nút thao tác ở header để lưu nhanh hơn.

Tìm hiểu thêm: [Products](/features/products)

### 12. **Tất cả Field của List-API dưới dạng Cột Bảng có thể Chọn**

Các bảng trong dashboard giờ đây cung cấp **mọi field được underlying list API trả về** dưới dạng cột có thể chọn, cùng menu hiển thị cột có thể cuộn và các nhãn được chuyển thành ngôn ngữ dễ hiểu — giúp bạn hiển thị chính xác dữ liệu cần thiết mà không phải mở từng record.

### 13. **Khả năng Truy cập bằng Bàn phím trên Dashboard & Checkout**

Chúng tôi đã thực hiện một đợt cải tiến accessibility trên diện rộng cho **dashboard, checkout và checkout SDK**: khả năng truy cập bằng bàn phím và hiển thị focus nhất quán, accessible name trên các control dạng icon và input, cùng quy ước focus/error thống nhất trên các form control, checkbox, radio, switch, tab và button.

### Các Sửa lỗi & Cải tiến khác

* **Đã sửa lỗi checkout bị crash** do tính năng dịch trang trong browser (ví dụ: Google Translate), vốn có thể xóa các DOM node mà React vẫn đang quản lý.
* **Cải thiện autofill địa chỉ** trong checkout, xây dựng lại trên Google Places API (New) để các lựa chọn trong dropdown vẫn được giữ lại sau khi mất focus, thu gọn bàn phím và định vị lại.
* Sửa các lỗi nhỏ và cải thiện độ ổn định trên toàn bộ platform.
