ぴろログ

Output Driven

噂のDevelopers.IO CAFEに行ってきた話

Developers.IO CAFEに行ってきました

cafe.classmethod.jp

AWSを使う人は必ずお世話になっているであろう、クラスメソッドさんが運営しているカフェです。先日参加したJP_Stripes (Stripe ユーザーグループ)in 沖縄 Vol.4で「クラメソさんがStripeを使ってレジレスのカフェを運営している」という話を聞き、ちょうど東京出張があったので秋葉原まで行ってきました。

ちなみにStripeとはクレジットカードを使ったオンライン決済サービスで、自社のSaaSの決済周りで利用させていだたく予定です。

↓はVol.2でLTをさせていただいたときのスライド。 speakerdeck.com

こんなお店

2018年にレジの無いお店として「Amazon Go」が登場しました。それを日本で実現したのがDevelopers.IO CAFEです。こちらで、購入までの流れや仕組み、目指す世界が説明されています。

決済までの流れをざっくり書くとこんな感じ。

  • 都度決済 (※便宜上わたしがそう呼んでいるだけ)
    • ドリンクの購入はコレ。
    • 専用アプリをインストール & アカウント作成 & クレジットカード情報を登録。
    • アプリで注文 → ドリンクがカウンターで提供される → 取る → 飲む → ウマー!
    • ドリンク提供の時点でクレカ決済が完了。
  • ウォークスルー決済
    • アプリで発行されるQRコードでアカウントの認証
    • お菓子を取る → トレイの下にある重量センサーで検知
    • どのアカウント(QRコードの持ち主)がお菓子を取ったか、天井のカメラの映像から総合的に判断
    • ウォークスルー決済エリアから出たタイミングで自動的にクレカ決済が完了。

アプリを入れてみる

羽田空港に到着し、早速アプリを入れてみました。ふんふん、と操作を進めていくと、、

お店に急行!!(To秋葉原
※すいません、このとき店名表記を誤っていました。
(誤)Developer's IO CAFE → (正)Developers.IO CAFE

アプリのアカウント認証

モノレールで揺られている最中、ふと「パスワードを設定しなかったな」と気づきました。どうやって認証したかというと、

メールアドレス or 電話番号を登録登録先で認証コードを受信認証コードを入力してログイン、という流れでした。

ちょうどW3Cが「パスワードの有効性は信頼できない」という態度を示したこともあり、さすがクラメソさんだな、と。

japan.cnet.com

ちょっとだけお勉強。認証には3つのタイプがあります。

  • 知識認証
    • 「本人だけが知っている情報(知識)」による認証。(パスワードが代表的)
  • 所有認証
  • 生体認証
    • 「本人の身体的な特徴」による認証。(指紋や虹彩、静脈、etc)

今回のアプリは「所有認証」を採用したようで、NISTで定義している認証方法の「#3 / Out of Band Device」が一番近いです。(参考にさせてもらった資料には「Eメールはセカンダリチャンネルとして認められない」とあるので、完全に合致とは言えないかもです。)

「知識認証」、「所有認証」、「生体認証」を組み合わせることで、認証の強度を高めることができます。(いわゆる多要素認証。)

「クレジットカード決済を利用するアプリで、多要素認証レベルを求めなくてもいいの?」とも思いましたが、

  • クレジットカード情報はStripe側で保持しており、アプリ側には保存されていない(はず)。
    • 決済時はStripeのAPIをたたくだけ(のはず)。
  • よって、仮に悪意のある第三者が認証コードを破ったとしても、カード番号や名義等の情報にはアクセスできない。
  • できることは、Developers.IO CAFEでコーヒー注文し放題、お菓子食べ放題。
    • 金額もたかがしれている。(リスクの許容の範囲内?)
    • 都度 本人に決済通知が飛ぶので何かおかしいと気づける。
    • というかリターン(魅力的ですが)に対するリスク(逮捕)が高すぎて、認証コードを破る動機として弱い。
  • → 多要素認証を求めるほどでもないかな。

ややこしい話は置いといて、ユーザ目線でいうとパスワードを覚える必要がないのでひたすら楽でいい。

お店に到着

看板を発見して入店。オシャレな店内。

「8番の者ですが…だいぶ前に注文してしまって……」と伝えると、まさかの温かいコーヒーを出していただけました。(おそらくお店のご厚意によるものです。その節はありがとうございました!)

「やってみた系」なロゴがオシャレです。
(色味がきれいに再現できなかったので、是非実際に行って見てください!)

ウォークスルー決済を体験

美味しいコーヒーで一息ついたところで、ワクワクしながらウォークスルー決済に挑戦です。

写真撮影を快諾いただいたので撮りまくりました。前のめりに棚裏をのぞいて壁に頭をぶつけました。それぐらいテンションあがったんです。

天井からは複数のカメラが行動をモニタリングしていました。厚みのある白い機械がソレです。一台がこっち見てますね。(薄いのはたぶん無線AP。)

非同期による"ストレス"レス

クラメソさんの記事にあったこの一文。

今まで順次実行されていた一連の手続きが非同期に、そしてストレスなくスムーズに体験することができます。

https://classmethod.jp/news/developersio-cafe-open/

実際に体験して、非同期の快適さを理解できました。注文待ち、支払い待ち、受け取り待ち、等の「待つ」行為は外的要因なので自分ではコントロールできません。なので強くストレスを感じます。現実の世界では手続きの同期、順番待ちはどうにもならない、という先入観がありましたが、技術でいくらでも変えられるんだな、と感動。

他にも「アカウントのパスワード記憶が不要」、「ウォークスルー決済のエリアに足跡マークを配置して導線を提示」、「すぐに決済完了通知を受けとれる安心感(万引きしちゃってないかソワソワするので、通知がきてホッとした)」など、ユーザ体験を損なわないための工夫を感じました。

Twitterでつぶやいたら…

今回、羽田空港で注文したタイミングで即ドリンクが提供されたようなので、お店に近づいたことを自動検知してドリンク作って欲しい、とつぶやいたところ、こんなお返事が。

「さとし」ってどなた?と調べたら、まさかのクラスメソッド代表取締役 横田聡さんでした。(内部のステータスを教えていただき、ありがとうございました!)

GEOフェンス機能が実装されたらまた来よう、と誓って、東京オフィスに向かったのでした。(そういえば会社の出張で東京に来たんだった。)

まとめ

  • Developers.IO CAFEに行くとテンションがあがる。
  • 近い将来、この決済の姿が当たり前になるはず。(なってほしい)
  • 技術で現実の世界に幸せを。

おまけ

3/21(木):春分の日に大阪でJP_Stripes Connect 2019が開催されます。そこで「レジレス/キャッシュレス/ウォークスルーを実現するDevelopers. IO Cafeの決済のウラ側」というタイトルで事例紹介のセッションがあるようです。Stripeの話に加えて、IoTのエッジコンピューティングや映像処理の仕組みなど、色々聞けるのではないかと思います。関西の方、興味のある方は是非参加してみてください。きっと楽しいですよ!!

eventregist.com