ユーザー管理
ユーザーの招待・ロール・担当会社と、会員ごとの契約・残高・AI(Claude API)の利用量と原価を1か所で確認します。決済は手動(振込等)が基本で、ここでは契約状態と付与を記録します。Stripe を有効にすると利用者が会員ページから自分で申込・ポイント購入でき、Webhook で契約と付与が自動で入ります(「Stripe」タブ)。1pt=1円相当。契約は期間制(半年など)で、期首にまとめて付与し、更新時に期首付与の残りは失効します。購入したptは失効せず、解約・再開でも残ります。
「更新」は契約を次の期間へ進めます(期首付与の残りを失効・購入分は繰越 → 期間延長 → 期首付与)。契約の無いユーザーは制限なしで動きます(移行期間の措置)。契約を作ると会員区分の上限(AI・会社作成・閲覧権は編集まで)が効き始めます
| ユーザー | ロール | 状態 | 利用状況 | 会員区分 | 期間料金 | 期首pt |
期間 | 残高pt | 今月消費 | 今月AI | 今月原価 | |
| 読み込み中... |
Stripe からの通知(Webhook)の受信記録。契約の作成・更新・ポイント購入はここに残ります。要確認(返金・金額不一致など)とエラーは手で対処してから「再処理」できます
有効化の手順
1. Stripe アカウントを作り、secrets.php に STRIPE_SECRET_KEY(sk_test_ / sk_live_ で始まる鍵)を置く
2. ダッシュボード → 開発者 → Webhook に https://tools.tnnet.work/api/stripe_webhook.php を登録し、署名シークレットを STRIPE_WEBHOOK_SECRET に置く。
送信イベント:checkout.session.completed / checkout.session.async_payment_succeeded / checkout.session.async_payment_failed / invoice.paid / invoice.payment_failed / customer.subscription.updated / customer.subscription.deleted / charge.refunded / charge.dispute.created
3. 設定 → Billing → カスタマーポータル を有効にする(カード変更・解約・領収書を利用者に任せるため)。解約は「期間終了時」だけ許可する
4. 「鍵の疎通確認」が通ったら「⚙ ポイント設定」の Stripe 決済 を「有効」にする。利用者の会員ページ(/account/)に申込・購入ボタンが出る
5. 特定商取引法の表示・返金ポリシー・利用規約の改訂は別途(docs/STRIPE_HANDOFF.md)
新規ユーザーを招待
招待リンク(7日間有効)を作ります。受諾した人は「招待中」の行がそのままユーザーになります。契約はその後この画面で作成します
招待リンクを作成しました(7日間有効)
このURLをSlack・メール等でご本人に共有してください
担当会社の権限
閲覧者は画面を読むだけ、編集者は対象会社のデータを更新できます。権限なしは対象会社を表示しません。契約中の会員区分に「閲覧まで」の上限があると、編集者にしても閲覧に切り下がります
会員区分の属性。契約作成時の既定値になり、AI・会社作成・閲覧権の上限はここで決まります。正価との差が優待の見せ方になります
| 区分 | コード | 期間 | 正価 | 実売価 | 期首pt | 補充倍率 |
据置 | AI | 会社作成 | 閲覧権上限 | 公開 | 説明 | |
| 読み込み中... |
円換算は「⚙ ポイント設定」の為替(1USD=—円)を使用
OCR読み取り:ページ数帯ごとの原価(成功分)
| ページ数 | 件数 | 平均入力tok | 平均出力tok | 平均原価 | 平均秒 |
実行前見積り(ページ数×平均入力tok+平均出力tok)の根拠。成功5件以上で見積りが実測ベースに切り替わります。
機能・モデル別サマリ(全期間)
| 機能 | モデル | 呼出 | 失敗 | 平均入力tok | 平均出力tok | 平均原価 | 最大原価 | 累計原価 | 平均秒 | 最大秒 |