
ChompyとPOS連携
この記事タイトルのパクリです。
独自POSと向き合っていて大変そう…!と楽しく読ませていただきました。
ChompyでもPOSとは縁があり、2年前から今まで、複数のシステムと連携してきたので、記録のために時系列でまとめてみようと思います。
初めてのPOS連携
初めて対応したときは2021年で、自分もあまりPOS連携と意識してなかったです。「とあるブランドさまのPOSへ、売上データを1日1回csv形式で送る必要がある」ということで対応しました。
1日1回、夜に集計してGCSにcsvをアップロード
IP固定するため、GCSにcsvがアップロードされたらPubSub経由でGCEがイベントを受け取り、売上データのcsvをダウンロードして1日1回SFTPで送付
商品ごとの売上もわかるように、商品ごとにPOSの商品IDと紐付け
という形でした。
注文後の商品調整や、クーポンの使用方法などで齟齬があると、たまに先方の集計結果とずれたりすることもあり、月初にずれの原因を確認するオペレーションがあり、骨が折れるところかと思います。
その後しばらくしてから対応することになったスマレジ連携
上記以外のブランドさまではPOS連携していなかったのですが、その後しばらくして、POSと直接つないでほしい、という要望がでてきました。
特に、イートインをモバイルオーダーで導入するブランドが増えてきて、Chompyでもイートインを強化しようとしていたので、店舗オペレーションを効率化するために注文データを1本化することが重要でした。
そこで、2022年ごろに対応したのが、スマレジAPIを使った「取引連携」と「仮販売連携」でした。当時の取引連携は、店舗さまの売上を施設にまとめて提出する作業の自動化をするために生まれました。また、仮販売連携は、未会計のイートイン注文をスマレジで会計する作業を効率化するために生まれました。
そして非公開APIとの連携へ
Chompyでは、今年からターゲットブランドを100店舗前後のブランドさま/運営会社さまに変更し、個々のブランドさまによりそったサービス提供を進めています。
その過程で、「①タブレットを束ねるサービスを介したAPI連携」や「②API連携機能を持つ従来POSレジとのAPI連携」を対応するようになりました。
まず①について、飲食店では、たくさんのデリバリープラットフォームから来る注文を一元管理したいニーズがあり、そのようなサービスを使っているブランドさまが多いです。このようなサービスでは注文を一元管理するだけでなく、POSシステムにもすでに連携しており、我々はこのサービスのAPIを介することでPOSシステムへの連携ができるようになっています。そもそもどんなサービスか、というのは以下の記事とか参考になりそうです。
また、②については、従来のPOSレジもプロダクトによってはAPI連携できるものがあり、そのAPIを介することで、Chompyのモバイルオーダーなどで受け付けた注文をレジに連携し、注文情報の管理や会計処理を行うことができます。
むずかしいところ
当然ですが、それぞれのインターフェースでできることが違うので、機能差分もありながら、それぞれ破綻しないように再利用できる形で実装していくのが難しく感じています。
また、テストも、スマレジAPIのように公開されているものであればデバッグするための情報がそれなりに揃えやすく容易にテストできますが、非公開のAPIは、情報が揃っていることが多くないので、エラー原因を問い合わせたり、デバッグするのが難しいです。我々が開発環境で十分にテストすることが難しい状況の場合、本番でのテストも慎重に設計する必要があり、ケースバイケースで検証プロセスを定義して対応しています。
開発環境があっても、がっつりハードのあるPOSレジと連携している場合、検証も会社しかできず、ハードの使いこなしも求められるというところもあります。ぼくもレジやハンディの使い方を覚えるのに四苦八苦しました笑
今ではかなり使いこなしつつあります😎
おわりに
さくっとかける感じでまとめてみました。マニアックな話題でしたが、誰かの気づきになれば幸いです。
[PR] Chompyではエンジニアを常に募集しておりますので興味ある方はぜひ話しましょう〜😀