SmartHR Tech Blog

SmartHR 開発者ブログ

JP_Stripes に参加しました!

先月の3月22日に Stripe のユーザコミュニティである JP_Stripes に参加しました!

Stripe の新機能の紹介はもちろん、Stripe を導入時のノウハウや、他決済代行業者との比較や、サービスでどのように料金プランの設定を行ったのかなど、普段中々聞けないプレゼンテーションがありとても充実したイベントとなりました。

Stripe とは

サービスにオンライン決済を導入したい場合、事前審査や初期費用、手数料、決済機能の開発など、幾つかの問題点があります。 特にスタートアップ企業で問題になるのは、事前審査や決済機能の開発がネックになります。 事業者によってはレガシーなAPIと分厚い仕様書と向き合い、安定したシステムと正確な決済が行えるようにつなぎ込みを行わなければなりません。

Stripe とは、その事前審査や開発の手間を吸収し肩代わりを行ってくれる決済代行業者です。

SmartHR では 2015 年 11 月にローンチ以来 Stripe を利用し決済を行っています。 ここで、SmartHR がなぜ Stripe を導入したのか振り返ってみたいと思います。

料金プランの設計

まず、継続的にサービスのアップデートが行われる SaaS のモデルの原則に則り、定期購読型にすることは決定していました。 元々は小規模事業所向けにサービス設計を行っており、手軽に決済が行えるよう、月額/年額のプランは必要であろうと考えていました。 どのように課金をアップグレードさせるか、について「データ量」と「従業員数」との意見があがりました。「データ量」であればインフラコストに基づいた課金が可能な一方、事業主や労務担当者からみると予測しにくい値となってしまいます。「従業員数」が増えればデータ量も比例して増え、同等の計算が可能なので、従業員数による従量課金を行うことにしました。 今思えば、もう少しアップグレードの人数幅を大きく持たせておけば良かったと感じています。 やはり、料金プランの設定はスタートアップにおいて一番重要で、そして難しい問題ですね。

なぜ、Stripe を選んだのか

SmartHR は 2015 年当時 β 版で運用を行っており、Tech Crunch Tokyo でピッチを行う事が決定しました。 とても嬉しいニュースで、今後事業を成功させるため折角なら優勝したい。

プレゼンテーションはもちろん、それ以外にどのようにインパクトを与える事ができるかを話し合った結果、当日にローンチをすることを決定しました。

無料で公開するという選択肢もあったのですが、マーケットフィットやビジネスの妥当性を測るためには、しっかりと課金を行いサービス運用を行う事が大切です。

それから、色々な紹介を頂き、資料をもらい決済代行事業者の選定を行いました。 しかし、私達の目的を実現するためには、2 つボトルネックが露わとなりました。

ひとつは、「審査」です。 9 月位に選定を行っていたのですが、カード会社の審査期間がまちまちであり、11 月ローンチに間に合わないリスクがあったのです。 なので、審査のいらない代行事業者を選択する必要がありました。

もうひとつは、「開発」です。 事業者によっては、本一冊作れる程の分厚い API 仕様書がPDFで作成され、それが数冊あって目を通さなければならない。 仕様書も難解で、モックアップを作るのもままならない…。

その中、Stripe を試してみると審査なしで開始可能。 そして Web 上に API リファレンスが掲載されており、使用例やライブラリ、チュートリアルも充実していました。 そのチュートリアル通りにをサービスに入れ込んでみたら、すぐにモックアップが出来たのです。

あとは、サービス側での制限や入れ込みをどうするかを考えるだけでした。 結局、 7 日程度で開発を終了し、テストの期間も十分に取ることができました。

Stripe とのつなぎ込み

では、どのようにそのスピードで Stripe へのつなぎこみ開発を行ったのでしょうか。 一番簡単な方法は、Stripe が推奨している(であろう)課金システムに乗ることです。

Stripe はプランベースの定期購読システムを提供しており、トライアル期間後にプラン開始、プラン開始日から指定された期間経過後に請求を行います。 この課金フローにのれば、ほとんど何も考えずに導入を行えます。

SmartHR で導入時に少し特殊だったことは、請求書による支払いが必要な事業所の存在です。 請求書の場合、管理を分けてシステムを構築しなければならないのですが、そんなに時間をかけたくないので Stripe の仕組みに乗ることにしました。 SmartHR はトライアル期間が終了し、課金が無い場合はサービス制限を行い、決済情報の入力を促しているのですが、その仕組みをそのまま使えるように、0 円の Enterprise プランを作成し、トライアル期間を操作してサービスの制限を行い実現しました。

今では事業所数も増え、よりユーザフレンドリーな決済が必要となったので、再設計を行っていますが、速度重視であれば全然問題はありませんでした。

Stripe の運用

最近 Stripe 管理画面の権限の仕様が変更されましたが、SmartHR では開発者だけではなくカスタマーサクセスや営業も管理画面を利用します。 主に、トライアル期間の延長やプランの調節、決済周りの質問の調査、クーポンの発行等を行っています。

決済なので UI については触るのが「怖い」部分もあるとの声も上がってはいますが、モダンで明るくフレンドリーな UI になっていると思います。 自律的に管理を行えるので、クーポンの発行などで営業のアプローチやカスタマーサクセスの成功も行いやすくなっています。

おわりに

SmartHR がここまでの成長を可能したのも Stripe というユーザフレンドリーで便利なサービスがあったからです。 もちろん、料金プランや決済の仕組みなどで、当てはまらないサービスもあるでしょうが、新規に課金システムを導入するのであれば、是非活用してみてはいかがでしょうか。 私も JP_Stripes に参加してますので、是非情報共有しましょう。

JP_Stripes (Stripe ユーザーコミュニティ)