概要
Astroの最小限のボイラープレートは、Dodo PaymentsをAstroアプリケーションに統合するためのすぐに使える出発点を提供します。このテンプレートには、チェックアウトセッション、Webhook処理、顧客ポータル、迅速に支払いを受け入れるためのモダンなUIコンポーネントが含まれています。このボイラープレートは Astro 5 と TypeScript、Tailwind CSS 4、および
@dodopayments/astro アダプターを使用しています。特徴
- すばやくセットアップ - 5 分以内に開始できます
- 決済統合 -
@dodopayments/astroを使用した事前構成済みのチェックアウトフロー - モダンな UI - Tailwind CSS を使ったシンプルでダークテーマの価格ページ
- Webhook ハンドラー - 決済イベント用のすぐに使える webhook エンドポイント
- カスタマーポータル - ワンクリックでのサブスクリプション管理
- TypeScript - 最小限で集中した型による完全な型付け
- 事前入力済みチェックアウト - 顧客データを渡して UX を向上させるデモ
前提条件
始める前に、次のものを用意してください:- Node.js LTSバージョン(Astro 5に必要)
- Dodo Paymentsアカウント(ダッシュボードからAPIおよびWebhookキーにアクセスするため)
クイックスタート
Get API Credentials
Dodo Payments でサインアップし、ダッシュボードから認証情報を取得してください:
- APIキー: ダッシュボード → 開発者 → APIキー
- Webhookキー: ダッシュボード → 開発者 → Webhooks
Run the Development Server
プロジェクト構造
カスタマイズ
製品情報の更新
src/lib/products.ts を編集して、次を変更できます:
- 製品 ID(Dodo ダッシュボードから)
- 価格設定
- 機能
- 説明
顧客データの事前入力
src/components/ProductCard.astro では、ハードコードされた値を実際のユーザーデータに置き換えてください:
顧客ポータルの更新
src/components/Header.astro では、ハードコードされた顧客 ID を認証システムやデータベースの実際の顧客 ID に置き換えてください:
Webhookイベント
このボイラープレートでは、src/pages/api/webhook.ts で webhook イベントを処理する方法を示しています:
onSubscriptionActive- サブスクリプションがアクティブになったときにトリガーされますonSubscriptionCancelled- サブスクリプションがキャンセルされたときにトリガーされます
デプロイメント
このボイラープレートは、APIルートのオンデマンドレンダリングを伴う静的出力を使用します。デプロイメントプラットフォーム用のアダプターをインストールする必要があります:| プラットフォーム | ガイド |
|---|---|
| Vercel | Vercelにデプロイ |
| Netlify | Netlifyにデプロイ |
| Cloudflare | Cloudflareにデプロイ |
Webhook URLの更新
デプロイ後、Dodo PaymentsダッシュボードでWebhook URLを更新します:DODO_PAYMENTS_WEBHOOK_KEY 環境変数を、デプロイ先ドメインの webhook 署名キーと一致するように更新することを忘れないでください。
トラブルシューティング
Module not found or build errors
Module not found or build errors
node_modules を削除し、依存関係を再インストールしてください:Checkout redirect fails
Checkout redirect fails
一般的な原因:
- 無効な製品 ID - Dodo ダッシュボードで存在することを確認してください
.envの API キーまたは環境設定が間違っている- ブラウザのコンソールとターミナルでエラーを確認してください
Webhooks not receiving events
Webhooks not receiving events
ローカルテストでは、ngrok を使ってサーバーを公開してください:Dodo ダッシュボード で webhook URL を ngrok URL に更新し、.env ファイルに正しい webhook 検証キーを設定してください。
Customer portal link doesn't work
Customer portal link doesn't work
src/components/Header.astro 内のハードコードされた CUSTOMER_ID を、Dodo ダッシュボードの実際の顧客 ID に置き換えてください。または、認証システムとデータベースを統合して顧客 ID を動的に取得してください。Build fails with adapter error
Build fails with adapter error
このボイラープレートはオンデマンド API ルートを伴う静的出力を使用しています。デプロイにはアダプターのインストールが必要です:詳細については Astro のデプロイガイド をご覧ください。
詳細を学ぶ
サポート
ボイラープレートに関して助けが必要ですか?- 質問や議論のために、Discordコミュニティに参加してください
- 問題や更新については、GitHubリポジトリを確認してください
- 支援が必要な場合は、サポートチームに連絡してください