[Tech]スマレジのエンジニア同士で スマレジ・プラットフォームAPIについて対談してみた
こんにちは。開発第1チームの保坂です。
バックエンドを中心に、最近はフロントエンドにも手を出しているPHPerです。
もっぱら
スマレジ・デベロッパーズ
の開発をしています。
さて、今回はスマレジのエンジニア同士で、スマレジ・プラットフォームAPIについて対談してみた。ということで、動画を撮影してみました。
スマレジのエンジニアが、スマレジ以外の「エンジニア」に向けてAPIに関する情報発信をするのはもしかしたら初めて?かもしれません。「スマレジ API」とかでyoutube検索すると出てくるようになったらうれしいなぁ。と思いながら記事や動画を制作しました。
是非とも、ご覧ください。
この記事では、この動画をご覧頂いた上で更にお楽しみいただけるように裏話などを添えてお届けできたらなと思っています。
対談メンバー紹介
保坂 望 ( Nozomi Hosaka )
スマレジ・デベロッパーズやスマレジ・アプリマーケットの開発を担当。
ツーリングが趣味。最近、Z250からバルカンSに乗り換えた。
岡田直緯 ( Naoi Okada )
iOSアプリ全般の開発を担当。サーバーサイドも少しだけ開発している(決済連携)。趣味は読書・ゲーム(ボードゲーム/ビデオゲーム)。イベントに参加するのが好きなので誘われたら基本的に断らない。
浅野真之 ( Masayuki Asano )
スマレジ・POSのサーバーサイド・プラットフォームAPI(POS)の設計・開発を担当。趣味は登山。推しの山脈は鈴鹿山脈(景色がいいので)。
河上貴彦 ( Takahiko Kawakami )
スマレジ・POSのサーバーサイド・プラットフォームAPI(POS)の開発を担当。ゲームが好きで、スマブラにソラが参戦したので最近テンション上がってる。ほか、iPadで絵とか描きます。
スマレジ・プラットフォームAPIの開発ってどんな感じ?
プラットフォームAPIとは?というのはこちらにお任せしようかなと思います。簡単に説明すると、スマレジの機能を全てAPIとして公開しますよ。というお話です。公開されたAPIを利用して、新しい機能を追加するもよし、データ連携するもよし。他のSaasもやっていることですね。
そんなAPI開発、本格的に始まってそろそろ1年強となります。API開発におけるノウハウや、開発事情を聞いてみました。
スマレジは多機能。その分API開発は大変!
そうなんです。スマレジは他のiPadレジの追随を許さないほどの機能を持っています。その分、APIもたくさん作らないと...というところですね。
これが多機能サービスのAPIを開発するときの悩みのうちの1つですね。中には会員情報、つまり個人情報を取り扱うAPIもあるので、各種APIに対するスコープの調整はとてもセンシティブな問題ですし、どのAPIでどの情報を取り扱うか。これがとても難しい印象でもあります。
との発言も出てきて、一安心。確かに大変な作業かもしれませんが、その分良い経験になっているようで良かったです。
スマレジ・プラットフォームAPIを使ったことある?
せっかくAPIを開発したら、自分たちで使ってみたくなるものです。今回の対談メンバーには、開発者であると同時に利用者でもある方を選ばせていただきました。早速、自社APIサービスの使い心地を聞いてみましょう。
「自社」のアプリでスマレジ・プラットフォームAPIを使ってみた
自社のプラットフォームAPIを利用してアプリ開発をする動きもあるようです。確かに、岡田さんの言うように、社内の独自フォーマットによって開発されているものは、その理解にたくさんの時間を必要としますし、外部に公開されないため、仕様もふわふわっとしがちな面、否めないと思いました。
「自分」のアプリでスマレジ・プラットフォームAPIを使ってみた
という風に、色々なパターンで色々な工夫をしているようです。ただ、やはり取引の整合性が厳しいアプリだとWebhookの妥当性をしっかり担保することが難しい側面もあるという課題が見えてきました。
スマレジ・デベロッパーズの機能でそのあたりの担保をしていきたいとも考えています。(この辺はこれからのスマレジ・デベロッパーズにて後述します。)
どういう風に使えばうまくAPIを利用できそう?
スマレジは多機能なので、その機能性を活かしてさらなる機能を提供するようなアプリを作成する、というのがこの面々の共通意見だったかと思います。スマレジ・プラットフォームAPIはスマレジ・POSだけではなく、WaiterやTimecardのAPIも公開していますので、プロダクトを横断するような新機能も需要があるかもしれません。
スマレジ・プラットフォームAPIで作ってみたアプリは?
こういった利点や課題がある中で、どういったアプリを作成したのかをご紹介しましょう。スマレジ・プラットフォームAPIを開発している開発者が作成したアプリとなりますので、アプリ作成のアイデアの参考になれば幸いです。
アプリ制作の裏側については、こちらでも紹介しています。
必要な情報はポイントの情報のみなので、その情報を取得し、指定されたタイミングでポイントの付与率を更新する処理がcronなどでスケジューリングされている。というアプリです。
使用するAPIも少ないので、最低限の機能で欲しい機能を提供できるというアイデアが光るアプリです。
アプリ制作の裏側については、こちらでも紹介しています。
CSVをそのアプリでアップロードすると、スマレジの仕入先に登録される。スマレジの営業さんを見ていて思いついたアプリだそうです。これはスマレジのエンジニアならではのアプリかもしれませんね。
エンドユーザーの目線に立って開発すると良いアプリを作成できるとのアドバイスをもらいました。スマレジ・ユーザーリクエストの情報を参照してみるもの良いかもしれません。
Look into Baskets
もともとオムツとビールを2つ並べたら売上が倍増した...という話から思いついたアプリだそうです。このアプリは取引分析にあたるので同期処理や分析処理にかなり苦労したそう。このあたりの工夫は是非動画を見て参考にしてください。
利用者側に立ってみてアプリをどのように使えばいいと思う?
今回はエンジニア向けということであまり尺を使って話せませんでしたが、今度はセールスの方たちを交えて、どのアプリを導入すれば店舗運営がうまくいくかなども話せればいいなと思う議題でした。
これからのスマレジ・デベロッパーズ
実は、スマレジ・デベロッパーズ・コミュニティというものがすでに公開されています。
そのコミュニティサイトではAPI機能のFAQだけではなく、大変ありがたいことに開発へのAPIに関する要望や改善案なども積極的に書き込んでいただいております。
そこから少しだけ引用しながらお話させていただきます。
APIコールやWebhookの管理
APIクライアントの作成
ここに挙げたことだけではなく、日々の業務で必要と感じている機能や改善点などもまだまだあります。
この記事を読んでいる皆様にはお待たせすることになってしまいますが、今後のアップデートにご期待いただければ、開発者としてうれしいです。
対談を終えて
閑話休題
こうやって改めて記事に書き下ろしてみると、やっぱり思った以上に色々な方の協力の元、スマレジ・デベロッパーズとスマレジ・アプリマーケットは成り立っていることを実感しました。
本日集まった4人だけでなく、技術面でも運用面でも支えてくださっているスマレジのスタッフと、アプリマーケットを盛り上げてくださっている皆様に感謝を申し上げつつ、記事を終わりたいと思います。
またどこかでお会いすることがあれば、その時はよしなに。
この記事が気に入ったらサポートをしてみませんか?