> ## 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.84.0（2026年2月20日）

> 製品レベルのアナリティクス、Verifi RDRによる異議申し立て防止、DodoPayments CLI、カスタマーポータルUI刷新、インラインチェックアウトの支払い方法更新、税ID事前入力、リターンURLのクエリパラメータ、顧客メール更新API、Bunアダプター

## 新機能

### 1. **製品レベルのアナリティクス**

すべての製品には専用の分析ダッシュボードが用意されました。**Products > \[Select a Product]** からその製品固有の詳細指標にアクセスでき、5つのタブに整理されています:

<Frame>
  <img src="https://mintcdn.com/dodopayments/QP0nYJEAkU83kGFn/images/product-analytics/overview.png?fit=max&auto=format&n=QP0nYJEAkU83kGFn&q=85&s=f2ce88b712ba0205839cd334d0f2a367" alt="製品レベルの分析" style={{ maxHeight: '500px', width: 'auto' }} width="2368" height="1564" data-path="images/product-analytics/overview.png" />
</Frame>

| タブ              | 内容                                                      |
| --------------- | ------------------------------------------------------- |
| **Overview**    | 総収益、成功した支払い件数、30日間の収益トレンドチャート（毎日または累積）、および絞り込み可能な取引テーブル |
| **Customers**   | 支出順に並んだ上位3名の顧客をポディウムビューで表示し、さらに顧客別の詳細テーブル               |
| **Retention**   | 顧客退会率、収益退会率、パターン把握に役立つ二重線のトレンドチャート                      |
| **Subscribers** | ステータス、開始日、次回請求日、金額を含む製品のすべてのサブスクリプション                   |
| **MRR**         | 新MRR、拡張MRR、解約MRR、純新規MRRの内訳を積み上げ棒グラフで示す月間定期収益            |

すべてのタブには**日付フィルター**（デフォルトは全期間）があり、任意の期間を詳細に分析できます。

<Tip>
  Retentionタブを使えば離脱率の高い製品を早期に特定でき、MRRタブでは拡張収益が月ごとの離脱収益を上回っているかを追跡できます。
</Tip>

詳細: [Product-Level Analytics](/features/analytics-and-reporting#product-level-analytics)

### 2. **Dodo PaymentsでのVerifi RDRサポート**

Dodo Paymentsは現在、Verifiが提供する\*\*Visa Rapid Dispute Resolution (RDR)\*\*をサポートしています。これは対象となるVisaの異議申し立てを正式なチャージバックになる前に解決する自動化ツールです。カード保有者が異議を申し立てると、RDRがそれをインターセプトして、取引額が設定したUSD閾値以下の場合は自動的に払い戻しを行います。

**重要なポイント**

| Benefit                        | Impact                                                   |
| ------------------------------ | -------------------------------------------------------- |
| **Lower dispute rate**         | RDRで解決された争議はVisaの0.9%の閾値にカウントされません                       |
| **Dispute fee still applies**  | RDRで解決された取引には依然として争議手数料がかかります -- これはVisaとの交渉費用をカバーするためです |
| **Zero operational overhead**  | 証拠収集や応答期限なし                                              |
| **Better customer experience** | カード保持者は即時返金を受けることができます                                   |
| **Account protection**         | Visaの争議監視プログラム（VDMP）を回避します                               |

<Warning>
  Visaの0.9%の異議申し立て率や月間100件を超えるとVDMPに入り、最大で月額5万ドル以上の罰金が課される可能性があります。RDRを使えばこれらの閾値を大幅に下回ることができます。
</Warning>

**仕組み**

1. カード保有者が銀行に異議申し立てを行います
2. RDRが正式なチャージバックになる前にその異議をインターセプトします
3. 取引額が閾値以下であれば、自動的に払い戻しが発行されます
4. 異議は即座に解決され、**異議率にカウントされません**

<Info>
  RDRを通じて自動的に払い戻された取引は、Dodo Paymentsダッシュボードでは**失敗した異議**として表示されます。これは正式なチャージバックを防ぐために自動的に払い戻しが行われた結果であり、意図された挙動です。
</Info>

Verifi RDRをアカウントで有効にするには、**[support@dodopayments.com](mailto:support@dodopayments.com)**に連絡して閾値を設定してください。

詳細: [Visa RDR Documentation](/features/transactions/disputes#visa-rapid-dispute-resolution-rdr)

### 3. **DodoPayments CLI**

新しく登場した**DodoPayments CLI** (`dodopayments-cli`) により、ターミナルから直接Dodo Paymentsのワークフロー全体を管理できます。コマンドラインを好む開発者向けに構築されており、製品、支払い、顧客、割引、ライセンス、アドオン、返金を管理したり、エディタを離れずにチェックアウトセッションを作成したりできます。

**インストール**

<CodeGroup>
  ```bash npm (Recommended) theme={null}
  npm install -g dodopayments-cli
  ```

  ```bash Bun theme={null}
  bun install -g dodopayments-cli
  ```
</CodeGroup>

**主要コマンド**

| コマンド                    | 説明                                     |
| ----------------------- | -------------------------------------- |
| `dodo login`            | APIキーで認証します（ブラウザを開きます）                 |
| `dodo products list`    | すべての製品を一覧表示                            |
| `dodo payments list`    | すべての支払いを一覧表示                           |
| `dodo customers create` | 新しい顧客を作成                               |
| `dodo checkout new`     | チェックアウトセッションを作成してURLを取得                |
| `dodo wh listen`        | WebSocketを介してライブテストWebhookをローカルサーバーに転送 |
| `dodo wh trigger`       | 任意のエンドポイントにモックWebhookペイロードを送信          |

**Webhookテスト**

CLIには開発向けの強力なツールが2つ含まれています:

* **`dodo wh listen`** -- WebSocket接続を開いて、実際のテストWebhookをローカルサーバーにリアルタイムで転送し、シグネチャ検証用の元のヘッダーを保持します
* **`dodo wh trigger`** -- モックWebhookペイロードを対話的に送信し、サブスクリプション、支払い、返金、異議、ライセンスの22種類すべてのイベントタイプをサポートします

<Tip>
  Webhookリスナーは**テストモード**のAPIキーでのみ動作します。`dodo wh listen`を使用する前に、テストモードのキーでログインしていることを確認してください。
</Tip>

詳細: [CLI Documentation](/developer-resources/sdks/cli)

### 4. **カスタマーポータルUIの刷新**

カスタマーポータルは完全に再設計され、クリーンで統一されたインターフェースになりました。左側のサイドバーによるナビゲーションと整理されたセクションにより、顧客がより直感的にセルフサービスを利用できるようになっています。

<Frame>
  <img src="https://mintcdn.com/dodopayments/kCngKZVrb0rZMS1f/images/customer-portal/new-portal.png?fit=max&auto=format&n=kCngKZVrb0rZMS1f&q=85&s=9431b2e24142e47cb39dc84c1a0303fe" alt="カスタマーポータルUIの刷新" style={{ maxHeight: '500px', width: 'auto' }} width="2876" height="1568" data-path="images/customer-portal/new-portal.png" />
</Frame>

**新機能**

| セクション                    | 機能                                            |
| ------------------------ | --------------------------------------------- |
| **Active Subscriptions** | プランの詳細、請求サイクル、次回支払い日を含むすべてのアクティブなサブスクリプションを表示 |
| **Payment Methods**      | 保存された支払い方法の管理、新しいカードの追加、支払い詳細の更新              |
| **Billing History**      | 過去の請求書をPDFレシート付きで表示                           |
| **Billing Information**  | 名前、メール、電話番号、請求先住所の編集                          |
| **Subscription Details** | サブスクリプションの詳細情報を確認し、キャンセルやプラン変更のオプションを選択       |
| **Plan Changes**         | ポータル内でProduct Collections経由によるアップグレードやダウングレード |

顧客は刷新されたポータルからアクティブなサブスクリプションの支払い方法を更新したり、支払い失敗で保留中になっているサブスクリプションを再度有効化することもできます。

<Check>
  ライブモードでは`https://customer.dodopayments.com/login/{business_id}`、テストモードでは`https://test.customer.dodopayments.com/login/{business_id}`で刷新されたポータルを利用できます。
</Check>

詳細: [Customer Portal](/features/customer-portal)

### 5. **インラインチェックアウトでの支払い方法更新**

[inline checkout](/developer-resources/inline-checkout) は、サブスクリプションの支払い方法更新に対応しました。アクティブなサブスクリプションの支払い方法を更新したり、保留状態のサブスクリプションを再開する必要がある場合、支払い方法更新フローをあなたのページレイアウト内に直接埋め込んだインラインチェックアウトとしてレンダリングできます。これによりシームレスで統合された体験が提供されます。

**仕組み**

1. Update Payment Method APIを呼び出して`payment_link`を取得します:

```typescript theme={null}
const response = await client.subscriptions.updatePaymentMethod('sub_123', {
  type: 'new',
  return_url: 'https://example.com/return'
});
```

2. 返却された`payment_link`をインラインチェックアウトの`checkoutUrl`として使用します:

```typescript theme={null}
DodoPayments.Checkout.open({
  checkoutUrl: response.payment_link,
  elementId: "dodo-inline-checkout"
});
```

インラインフレームには支払い方法の入力フォームのみがレンダリングされるため、顧客はページを離れずに新しいカード情報を入力したり、保存済みの支払い方法を選択できます。

<Tip>
  保留中のサブスクリプションでは、支払い方法更新フローが自動的に未払い分の請求を作成します。再開を確認するには`payment.succeeded`および`subscription.active`のWebhookを監視してください。
</Tip>

詳細: [Inline Checkout](/developer-resources/inline-checkout) | [Subscription Payment Method Updates](/features/subscription#update-payment-method-for-active-subscription)

### 6. **チェックアウトセッションでの税ID事前入力サポート**

チェックアウトセッション作成時に`tax_id`パラメータを使用して**税ID**（例: VAT番号、GST番号）を事前入力できるようになりました。これは顧客の税識別番号が既に分かっているB2B取引に最適です。税IDを事前入力すると、チェックアウトフォーム上でそのフィールドが予め入力された状態でロックされます。

```typescript theme={null}
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: 'pdt_123', quantity: 1 }],
  customer: { customer_id: 'cus_123' },
  billing_address: { country: 'DE' },
  tax_id: 'DE999999999',
  return_url: 'https://yoursite.com/return'
});
```

<Info>
  `tax_id`パラメータは、少なくとも`country`フィールドを含む`billing_address`が必要です。税の適格性はリアルタイムで検証され、対象となるB2B取引にはリバースチャージのルールが自動的に適用されます。
</Info>

`allow_customer_editing_tax_id`フィーチャーフラグで税IDの変更可否を制御し、`allow_tax_id`でチェックアウト上の税IDの表示・非表示を切り替えられます。

詳細: [Checkout Sessions - Tax ID](/developer-resources/checkout-session) | [B2B Payments](/features/b2b-payments)

### 7. **リターンURLリダイレクトでのライセンスキーとメール**

顧客がチェックアウトを完了すると、Dodo Paymentsは既存の`payment_id`/`subscription_id`および`status`パラメータに加え、`license_key`と`email`をあなたの`return_url`リダイレクトにクエリパラメータとして追加します。

**追加されるクエリパラメータ**

| パラメータ             | 型        | 条件                                    |
| ----------------- | -------- | ------------------------------------- |
| `payment_id`      | `string` | 都度支払いのときは常に含まれます                      |
| `subscription_id` | `string` | サブスクリプション支払いのときは常に含まれます               |
| `status`          | `string` | 常に含まれます                               |
| `license_key`     | `string` | 製品でライセンスキーが有効な場合に含まれます（複数あるときはカンマ区切り） |
| `email`           | `string` | 顧客にメールアドレスが登録されている場合に含まれます            |

**リダイレクトURLの例:**

```text theme={null}
# One-time payment with license key
https://yoursite.com/return?payment_id=pay_xxx&status=succeeded&license_key=LK-001&email=customer%40example.com

# Subscription with multiple license keys
https://yoursite.com/return?subscription_id=sub_xxx&status=active&license_key=LK-001,LK-002&email=customer%40example.com
```

<Tip>
  これらのクエリパラメータを使えば、返却ページですぐにライセンスキーを表示したり、追加のAPI呼び出しなしで確認メールを送信したりできます。
</Tip>

詳細: [Checkout Sessions - Return URL](/developer-resources/checkout-session) | [License Keys in Return URL](/features/license-keys#license-keys-in-return-url)

### 8. **顧客メール更新API**

`PATCH /customers/{customer_id}`エンドポイントは、顧客のメールアドレスをプログラムから更新できるようになりました。名前、電話番号、メタデータとともに1回のAPIコールでメールアドレスを更新できます。

```typescript theme={null}
await client.customers.update('cus_123', {
  email: 'newemail@example.com',
  name: 'Updated Name'
});
```

**更新可能なフィールド**

| フィールド          | 型                | 説明         |
| -------------- | ---------------- | ---------- |
| `email`        | `string \| null` | 顧客のメールアドレス |
| `name`         | `string \| null` | 顧客の表示名     |
| `phone_number` | `string \| null` | 国際形式の電話番号  |
| `metadata`     | `object \| null` | カスタムのキーと値  |

<Info>
  顧客のメール更新は、カスタマーポータル（セルフサービス）、ダッシュボード、CLIの`dodo customers update`経由でも利用できます。
</Info>

詳細: [Customer Update API](/api-reference/customers/patch-customer) | [Customer Management](/features/customers)

### 9. **Bunアダプターリリース**

`@dodopayments/bun`の登場により、[Bun](https://bun.sh)のネイティブサーバー (`Bun.serve()`) 向けの専用フレームワークアダプターが提供されました。チェックアウト、カスタマーポータル、Webhookを数行のコードでBunに統合できます。

**インストール**

```bash theme={null}
bun add @dodopayments/bun
```

**簡単なセットアップ**

```typescript theme={null}
import { Checkout, CustomerPortal, Webhooks } from "@dodopayments/bun";

Bun.serve({
  routes: {
    "/api/checkout": Checkout({
      bearerToken: process.env.DODO_PAYMENTS_API_KEY!,
      returnUrl: process.env.DODO_PAYMENTS_RETURN_URL!,
      environment: process.env.DODO_PAYMENTS_ENVIRONMENT!,
    }),
    "/api/customer-portal": CustomerPortal({
      bearerToken: process.env.DODO_PAYMENTS_API_KEY!,
      environment: process.env.DODO_PAYMENTS_ENVIRONMENT!,
    }),
    "/api/webhooks": Webhooks({
      webhookKey: process.env.DODO_PAYMENTS_WEBHOOK_KEY!,
      onPaymentSucceeded: async (payload) => {
        console.log("Payment succeeded:", payload.data.payment_id);
      },
      onSubscriptionActive: async (payload) => {
        console.log("Subscription active:", payload.data.subscription_id);
      },
    }),
  },
});
```

Bunアダプターは静的、動的、セッションベースの3つのチェックアウトフロー、カスタマーポータルセッションの生成、およびシグネチャ検証とZodバリデーションを備えた安全なWebhook処理を22種類のイベントタイプでサポートします。

<Check>
  Bunアダプターは、Next.js、Nuxt、Express、Fastify、Hono、Astro、SvelteKit、Remix、TanStack Start、Better Auth、Convexを含む11種類のフレームワークアダプターの仲間入りを果たします。
</Check>

詳細: [Bun Adapter Documentation](/developer-resources/bun-adaptor) | [Framework Adapters Overview](/developer-resources/framework-adaptors)
