Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Building CreatePie: SaaS subscriptions and creator sales are different flows

2026年09月30日に「Dev.to」が公開したITニュース「Building CreatePie: SaaS subscriptions and creator sales are different flows」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

CreatePieは、コース公開やウェビナー提供プラットフォームだ。ソフトウェア利用料は課金するが、クリエイターの売上手数料は0%。クリエイターと学習者の支払いフローを明確に分離し、Cloudflare Workersなどを使いファイルアクセス制御などを実装。開発における技術的要点を示している。

ITニュース解説

CreatePieは、オンラインで教育コンテンツを提供するためのウェブプラットフォームであり、クリエイターがコースを公開したり、個別セッションやウェビナーを開催したりできる。このプラットフォームの基本的な考え方は、クリエイターからソフトウェアの利用料を受け取る一方で、クリエイターが学習者から得る売上には一切手数料を課さないことだ。学習者が支払ったお金は、クリエイターが連携した決済アカウントに直接送金される仕組みになっているが、決済サービスの手数料や税金は別途発生する可能性がある。

このシステムを構築する上で特に重要なのは、クリエイターがCreatePieに支払うソフトウェア利用料と、学習者がクリエイターに支払うコース料金やセッション料金という、二つの異なる支払い関係を明確に区別することだ。システム上では、これらの支払いはそれぞれ独立したID、記録、アクセスルールを持つ必要がある。

CreatePieはクリエイター向けに、無料プランの他に月額または年額で利用できる「Courses」プランと「Complete」プランを提供している。「Courses」プランでは、無料・有料コースの公開とクリエイター自身の決済連携が可能になり、「Complete」プランではさらに1対1セッションやウェビナーのスケジューリング機能が利用できる。これらのサブスクリプション料金の支払いにはDodoという決済サービスが使用される。一方、クリエイターが学習者から料金を受け取る際には、Stripe、Razorpay、Dodoの中から複数の決済アカウントを連携できる。ただし、Dodoを使った販売は特定のデジタルコースに限定され、ライブコーチングやウェビナーの支払いはStripeかRazorpayのアカウントが必要となる場合がある。

アプリケーションの観点から見ると、クリエイターのサブスクリプションプランを更新する際には、単にブラウザが決済完了ページにリダイレクトされただけでは不十分だとされる。決済が正しく行われたことをサーバー側で確実に検証する必要があるのだ。これは決済サービスからの特定のイベント通知(Webhook)を受信し、その内容が改ざんされていないか署名を確認したり、同じイベントが重複して処理されないように保護したりすることで実現される。この厳格な確認プロセスは、セキュリティとデータ整合性を保つ上で極めて重要である。

次に、クリエイターがアップロードするコースコンテンツの保護と配信について説明する。クリエイターは、テキスト形式のレッスン、MP4動画、PDF資料、ZIPファイルなど、様々な形式のコンテンツをアップロードできる。これらのファイルは、Cloudflare Workersで動作するアプリケーションが、D1データベースとR2ストレージサービスを利用して管理している。

コンテンツ配信において最も重要なのは、ファイルを提供する際に適切なアクセス制御を行うことだ。システムはファイルが要求された際、そのファイルを要求しているユーザー(クリエイターまたは学習者)が、そのコンテンツに対するアクセス権を持っているか、そしてそのファイルが実際にそのコースに関連付けられているかを厳密に確認する。これにより、たとえファイルの直接的なURLが外部に漏洩しても、許可されていないユーザーがコンテンツにアクセスすることを防ぐ。動画再生時の部分的なデータ取得(バイトレンジ配信)にも対応し、プライベートなファイルはキャッシュされず、検索エンジンに表示されないよう設定されている。このようなアクセス判断は、アプリケーションのコードによって行われる。CloudflareのR2 Workers APIを利用することで、ストレージ内のオブジェクトのメタデータやコンテンツストリームに安全にアクセスし、アプリケーション側で細かく認証・認可のロジックを実装できる。実際にシステムが正しく機能しているかを検証するため、リリース前には、ファイルをダウンロードしてハッシュ値を比較したり、権限のないユーザーからのアクセスが適切に拒否されることを確認したりする「ライブコース監査」が行われる。

「Complete」プランには、ウェビナーや1対1セッションのスケジューリング機能も含まれている。この機能では、受講者数に制限を設定したり、個別の待機室を提供したりできる。予約が確定すると、受講者には待機室へのアクセス情報がメールで届き、セッション開始30分前にはリマインダーメールが送られる。受講者は予定時刻よりも早く待機室に入ることができ、そこでセッション開始までのカウントダウンを見ることができる。実際のミーティングリンクは、セッション開始時刻の指定された時間枠になって初めて表示される仕組みになっている。ただし、一度リンクが表示されれば受講者がそれを転送する可能性もあるため、使用するミーティングプロバイダー側の入室管理機能も重要な要素となる。このようなメール通知やリマインダー機能は、実際に予約を設定して動作が確認されているが、実際の有料サブスクリプションの決済、更新、返金、有料学習者へのコンテンツ提供といった、財務に関連するテストは今後完了させるべき課題とされている。

CreatePieでは、「Practical Technology & AI」というコースが、クリエイターのサブスクリプションとは別に、一回限りの購入で提供されている。このコースには、12のレッスンと演習、約36分の概要動画、36ページのワークブック、そしてPythonプロジェクトなどが含まれる。推定学習時間は18〜24時間とされており、これは動画視聴だけでなく、読解、実習、最終課題の実施時間も考慮に入れたものだ。一部のレッスンは無料でテキストプレビューが可能だが、プライベートにアップロードされたファイルへのアクセスにはコースの購入が必須となる。コースの著作権情報も明確にされており、CreatePieが作成したオリジナルコンテンツはCC BY 4.0ライセンス、プロジェクトコードはMITライセンスで提供されている。

製品の情報公開と検索エンジンへの対応も重要な要素である。CreatePieのロゴやデザインは製品の一部として使われており、公開されているコースページ、クリエイターページ、ガイドページには、適切なタイトル、説明、そして正規のURLが設定されている。これらの公開ページはサイトマップに登録され、検索エンジンがウェブサイトを巡回し、適切な情報を収集できるようにしている。一方で、プライベートなレッスンページ、ダッシュボード、待機室、決済ページなどはサイトマップから除外されている。特に決済ページは、検索エンジンにインデックスされないように「noindex」指示がされており、正規URLとしては関連する公開コースページを指すように設定されている。これらの工夫は、ユーザーがログインする前に製品の内容を理解しやすくすることと、検索エンジンが正確な情報を収集し、ユーザーに提示できるようにするための配慮である。

このようにCreatePieは、複雑な支払い関係を適切に分離し、コンテンツへのアクセスを厳密に管理することで、クリエイターと学習者の双方にとって安全で信頼性の高いオンライン学習環境の提供を目指している。システムの安定性とセキュリティを確保するため、Cloudflareのような最新の技術スタックを活用し、厳格な検証プロセスを取り入れている点は、システムエンジニアを目指す上で学ぶべき重要な開発方針だと言えるだろう。

関連コンテンツ

関連IT用語

関連ITニュース