顧客
アプリの課金対象ユーザーを管理します。Dashboard > Commerce > Customers タブまたはSDK経由で顧客を閲覧できます。
**顧客(customer)**とは、アプリ内で課金対象となるエンティティです。通常はユーザー、組織、またはプロジェクトが該当します。対応するエンティティが自分のデータベースに存在した時点でProyecta上に顧客を作成し、返された id を保存しておくことで後から参照できます。
Customers タブ
Section titled “Customers タブ”Dashboard > Commerce を開き、Customers タブに切り替えると、現在のアプリに紐づくすべての課金顧客を確認できます。各行には以下の情報が表示されます。
- メールアドレス
- 氏名
- 作成日時
メールアドレスや作成日時によるフィルタリングはSDK経由で利用できます。パネル上のより高度な操作機能は近日公開予定です。
import Proyecta from '@proyecta-ai/sdk';const proyecta = new Proyecta({ apiKey: process.env.PROYECTA_API_KEY });const customer = await proyecta.commerce.customers.create({ email: 'alice@example.com', name: 'Alice Liddell', phone: '+14155551234', // E.164 format address: { line1: '123 Wonderland Ave', city: 'San Francisco', state: 'CA', postal_code: '94110', country: 'US', },});// Single customerconst customer = await proyecta.commerce.customers.get({ customerId: 'cus_123' });
// Paginateconst result = await proyecta.commerce.customers.list({ limit: '20' });for (const customer of result.data) { console.log(customer.name, customer.email);}await proyecta.commerce.customers.update({ customerId: 'cus_123', email: 'new@example.com', address: { ... } });よくある使い方
Section titled “よくある使い方”ユーザーのサインアップ時にProyecta顧客を作成する
When a new user finishes signup, call proyecta.commerce.customers.createwith their email and name. Store the returned id on the user record asproyecta_customer_id.管理者向け顧客ブラウザを構築する
Build an admin page at /admin/customers that lists every Proyecta customerwith their email, name, created date, and a link to view their detail page.Use proyecta.commerce.customers.list to paginate through all customers.よくある質問
Section titled “よくある質問”Proyecta顧客はすべてのユーザーに対して作成すべきですか?それとも有料ユーザーのみですか?
すべてのユーザーに対して作成してください。無料で利用でき、冪等性があります(同じメールアドレスで呼び出すと同じ顧客が返されます)。また、ユーザーがアップグレードした瞬間にすぐ対応できるため、後からデータを埋め直す手間がかかりません。
1人の顧客が複数のサブスクリプションを持てますか?
はい。サブスクリプションは顧客に紐づくものです(その逆ではありません)。新しいサブスクリプションのcheckoutセッションを作成するには commerce.checkout() を使用してください。
顧客がどのサブスクリプションに加入しているか確認するにはどうすればよいですか?
現時点では、埋め込みのStripe dashboardを利用するか、確認したい各機能に対して commerce.check() を呼び出す方法があります。パネル上でのサブスクリプション履歴表示はロードマップに含まれています。