概要
Astroの最小限のボイラープレートは、Dodo PaymentsをAstroアプリケーションに統合するためのすぐに使える出発点を提供します。このテンプレートには、チェックアウトセッション、Webhook処理、顧客ポータル、迅速に支払いを受け入れるためのモダンなUIコンポーネントが含まれています。このボイラープレートは、TypeScript、Tailwind CSS 4、および
@dodopayments/astro アダプターを使用したAstro 5を使用しています。特徴
- クイックセットアップ - 5分以内で開始
- 支払い統合 -
@dodopayments/astroを使用した事前設定されたチェックアウトフロー - モダンUI - Tailwind CSSを使用したクリーンでダークテーマの価格ページ
- Webhookハンドラー - 支払いイベント用のすぐに使えるWebhookエンドポイント
- 顧客ポータル - ワンクリックでのサブスクリプション管理
- TypeScript - 最小限で焦点を絞った型を持つ完全に型付けされたコード
- 事前入力されたチェックアウト - UXを向上させるために顧客データを渡すデモ
前提条件
始める前に、次のものを用意してください:- Node.js LTSバージョン(Astro 5に必要)
- Dodo Paymentsアカウント(ダッシュボードからAPIおよびWebhookキーにアクセスするため)
クイックスタート
1
リポジトリをクローン
2
依存関係をインストール
3
API資格情報を取得
Dodo Paymentsにサインアップし、ダッシュボードから資格情報を取得します:
- APIキー: ダッシュボード → 開発者 → APIキー
- Webhookキー: ダッシュボード → 開発者 → Webhooks
4
環境変数を設定
ルートディレクトリに Dodo Paymentsの資格情報で値を更新します:
.env ファイルを作成します:5
製品を追加
Dodo Paymentsからの実際の製品IDで
src/lib/products.ts を更新します:6
開発サーバーを実行
プロジェクト構造
カスタマイズ
製品情報の更新
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 環境変数を更新することを忘れないでください。
トラブルシューティング
モジュールが見つからないまたはビルドエラー
モジュールが見つからないまたはビルドエラー
node_modules を削除し、依存関係を再インストールします:チェックアウトリダイレクトが失敗
チェックアウトリダイレクトが失敗
一般的な原因:
- 無効な製品ID - Dodoダッシュボードに存在することを確認してください
.envのAPIキーまたは環境設定が間違っている- エラーのためにブラウザコンソールとターミナルを確認してください
Webhookがイベントを受信しない
Webhookがイベントを受信しない
顧客ポータルリンクが機能しない
顧客ポータルリンクが機能しない
CUSTOMER_ID を src/components/Header.astro でハードコーディングされたものを、Dodoダッシュボードからの実際の顧客IDに置き換えます。または、認証システムとデータベースを統合して、顧客IDを動的に取得します。アダプターエラーでビルドが失敗
アダプターエラーでビルドが失敗
このボイラープレートは、オンデマンドAPIルートを伴う静的出力を使用しています。デプロイメント用のアダプターをインストールする必要があります:詳細については、Astroのデプロイメントガイドを参照してください。
詳細を学ぶ
サポート
ボイラープレートに関して助けが必要ですか?- 質問や議論のために、Discordコミュニティに参加してください
- 問題や更新については、GitHubリポジトリを確認してください
- 支援が必要な場合は、サポートチームに連絡してください