コンテンツにスキップ

API ドキュメント クイックスタートガイド

このドキュメントは、スマレジ・プラットフォームAPIを初めて利用される方に向けた「はじめの一歩」として、アプリ作成からAPI呼び出しまでの流れを理解していただくためのガイドです。

スマレジ・デベロッパーズとは?

Section titled “スマレジ・デベロッパーズとは?”

スマレジ・デベロッパーズは、スマレジが提供するアプリ開発者向けのプラットフォームです。 スマレジの基本機能にない便利な機能を追加したり、他サービスと連携するツールを作ったりすることで、店舗の業務効率化や売上アップに役立てることができます。

本チュートリアルでは、スマレジ・プラットフォームAPIを活用してアプリ開発を始めたい初心者の方向けに、スマレジで開発できるアプリの種類開発の全体像を解説します。

スマレジで開発できるアプリの種類

Section titled “スマレジで開発できるアプリの種類”

スマレジ・デベロッパーズで開発・登録できるアプリには、大きく分けて「パブリックアプリ」と「プライベートアプリ」の2種類があります。

目的や利用シーンによって使い分けるため、それぞれの特徴を押さえておきましょう。

概要:

パブリックアプリはスマレジ・アプリマーケットで一般公開され、スマレジ利用店舗であれば誰でもインストールできるアプリです。 つまり、スマレジにない機能をアプリとして提供し、多くの店舗の課題解決につなげられると同時に、アプリ開発をビジネスにすることも可能です。

ユースケース例:

  • レジシステムの拡張アプリ: スマレジの基本機能にない機能を追加するアプリ
    • 例:特殊な割引やポイント機能、詳細な売上分析レポートの提供など
  • 在庫管理ツール: 在庫管理を効率化・高度化するアプリ
    • 例:在庫の一括管理や分析機能の強化、棚卸支援ツールなど
  • 他サービス連携アプリ: 他のサービスとデータ連携するためのアプリ
    • 例:会計ソフトやECサイトとスマレジの売上・商品データを同期する連携ツール

メリット:

  • 多数のスマレジユーザーに利用してもらえるため、自社の開発した機能で多くの店舗の課題を解決できる
  • アプリの提供を通じて収益化が可能(アプリマーケット上で利用料や月額料金を設定でき、開発者に売上が発生する
  • スマレジ公式のマーケットであるスマレジアプリマーケット上で公開されるため、集客や宣伝効果が期待でき、信頼性のアピールにもつながる

デメリット:

  • リリース前にスマレジ側の審査を受ける必要があり、プライベートアプリと比較すると公開までに時間と手間がかかる。審査基準を満たすための準備も必要
  • 不特定多数のユーザーが利用するため、不具合対応や機能改善など保守に継続的な労力が求められる。ユーザーからの問い合わせ対応やアップデート作業が発生する
  • 様々な業種・規模の店舗で使われる可能性があるため、汎用性を持たせた開発が必要になる(特定の環境に依存した実装は避ける必要がある)

概要:

プライベートアプリは、自分たちの店舗内だけで利用することを目的とした非公開のアプリです。 いわば、スマレジ・プラットフォームAPIを用いて自社のニーズに特化したツールを作るイメージです。

ユースケース例:

  • 自社業務の改善ツール: 自社店舗向けにカスタム機能を開発
    • 例: 社内向けの売上ダッシュボードの作成など
  • 特定店舗専用アプリ: クライアントの特定店舗から依頼を受けて開発する専用アプリを開発。その店舗の業務フローに合わせたカスタム機能を提供し、依頼元の店舗のみで利用
  • API活用の実験・社内ツール: スマレジ・プラットフォームAPIを試験的に利用したり、自社内だけで使う連携ツール(公開せずに社内業務を自動化するスクリプトやアプリ。スマレジの機能拡張をテストする用途など)を開発

メリット:

  • 自社内や限定された環境で使うため、アイデアが浮かんだらすぐ開発・利用できる。開発完了後、審査を待つ必要がなく利用が可能
  • 利用者が自社(または依頼元の特定店舗)に限られるため、細かなニーズに合わせて機能を作り込める

デメリット:

  • 利用できる範囲が自社や特定の店舗に限られるため、他のスマレジユーザーには提供・展開できない(アプリを公開してビジネス展開することができない)
  • スマレジのスマレジアプリマーケットに載せられない分、公式からの宣伝効果や新規ユーザー獲得の機会はない。あくまで自分たちのためのツールとなる
  • 第三者によるコードレビューや審査がないぶん、セキュリティや品質を自分たちで担保する必要がある。公式のチェックが入らないため、不具合があっても気付きにくい場合がある
  • 将来的に他店舗にも提供したくなった場合は、プライベートアプリのままでは共有が難しく、パブリックアプリとして改めて公開申請する手間が発生する
    • 基本的にアクセストークンの発行やスコープの設定など、APIの利用に関する基本的な設定やアプリ情報の変更が必要で、アプリ自体の再開発は不要

上記のパブリック/プライベートはアプリの「公開範囲」による分類ですが、スマレジではアプリの技術的な種類(形式)として以下の区分も存在します。

  • WEBアプリ: サーバーサイドでスマレジAPIをコールするタイプのアプリ。
    • アプリ登録時にクライアントシークレット(秘密鍵)が発行され、アプリ固有の資格情報でAPI呼び出しが可能です。
    • 主に自社で用意したサーバー上で動作するプログラムやWebサービスが該当します。
  • ネイティブアプリ: モバイルアプリなどクライアントサイドから直接スマレジAPIをコールするタイプのアプリ。
    • クライアントシークレットは発行されない代わりに、ユーザー個別の権限でAPIを利用します。
    • iOSやAndroidのスマホアプリからスマレジにアクセスする場合などはこちらに該当します。
  • スマレジ iOS URLスキーム連携アプリ: スマレジのiPad用レジアプリとiOSのURLスキームを用いて連携するタイプのアプリです

多くの場合、一般的なデータ連携や機能拡張はWEBアプリ(サーバーサイド連携)として開発されます。 ネイティブアプリやiOS連携アプリは特殊なケース向けの場合が多いですが、目的に応じて選択してください。

では、スマレジ向けのアプリを作るには具体的にどのような手順を踏めばよいでしょうか。 ここではアプリ開発の大まかな流れをステップごとに説明します。

まずは、どんな機能やサービスをアプリとして提供したいかアイデアを練りましょう。

現場で「こんなことができたら便利なのに」と感じていることや、スマレジ利用者から聞かれる要望などを書き出してみます。自社の業務効率化につながる機能や、多くの店舗に共通する課題を解決できるサービスなど、目的を明確にします。

アプリのアイデア次第で、開発する内容(単独店舗向けか汎用向けか)も見えてくるでしょう。

2. アプリの種類(パブリック/プライベート)を決める

Section titled “2. アプリの種類(パブリック/プライベート)を決める”

アプリのアイデアに基づき、パブリックアプリにするかプライベートアプリにするかを選択します。

作ったアプリを他のスマレジ利用店舗にも提供したい場合はパブリックアプリ、自社や特定クライアントだけで使えれば良い場合はプライベートアプリが適しています。

それぞれの違いは前述の通りですが、公開範囲によって必要な手続き(審査の有無や準備資料など)が異なるため、自分の目的に合った方を選びましょう。

3. スマレジ・デベロッパーズに登録する

Section titled “3. スマレジ・デベロッパーズに登録する”

アプリの方向性が決まったら、スマレジ・デベロッパーズでデベロッパーズアカウント登録を行います。

スマレジ・デベロッパーズで必要情報を入力してアカウントを作成し、デベロッパーズにログインしましょう。

開発者登録は無料で行え、登録後には開発用のサンドボックス環境(テスト用のスマレジ契約データ)が自動的に用意されます。

このサンドボックス(開発用スマレジ環境)を使えば、本番の店舗データに影響を与える心配なく自由にAPIを試せるので安心です。アカウント登録が完了すると、いよいよアプリの登録・開発に進みます。

スマレジ・デベロッパーズのダッシュボードにログインし、「アプリを新規登録」ボタンからアプリ登録を行います。

ここでパブリックアプリプライベートアプリかを選択し、アプリ名や概要など基本情報を入力して登録します。

発行されたクライアントID・シークレットは後述のAPI呼び出し時に必要になるため、メモして大切に保管してください。

登録したアプリに対して、実際のプログラミングを行っていきます。

スマレジが提供するプラットフォームAPIを、先ほど取得したクライアントID/シークレットや認証情報を使って呼び出し、目的の機能を実装します。

例えば、在庫管理アプリであれば在庫情報を取得するAPIを呼び出して独自の管理画面に表示したり、他システムにデータ連携する処理を組み込みます。

スマレジ・プラットフォームAPIはREST形式のWeb APIなので、プログラミング言語やフレームワークは自由に選択できます。

サーバーサイドの言語(例:Python, PHP, Ruby, Javaなど)でも、フロントエンドJavaScript(ブラウザ)やモバイルアプリ(Swift/Kotlin)でも、HTTPリクエストを扱える環境であれば開発可能です。(環境に応じたアプリ種別を選択してください)

開発中は前述のサンドボックス環境のデータを使って十分なテストを行いましょう。

テスト用契約(開発環境)でAPIを試すことで、実店舗の本番データに影響を与えずに安全に検証できます。

必要に応じて、PostmanなどのAPIクライアントツールを使ってAPIの挙動を確認しながら実装を進めると効率的です。

6. アプリの公開準備・利用開始

Section titled “6. アプリの公開準備・利用開始”

アプリの開発とテストが一通り完了したら、いよいよそのアプリを実際に運用します。

  • プライベートアプリの場合

    • 自社のスマレジ本番環境(実際の店舗アカウント)にアプリをインストールして連携を行います。
    • 具体的には、スマレジプラットフォームAPIの認証プロセス(OAuth)を使用して自社のスマレジにアプリを許可し、APIトークンを取得してアプリケーションから本番データを扱えるようにします。
    • 自社向けですので特別な公開手順は不要で、設定が完了すればそのまま自社システムとして利用開始できます。
  • パブリックアプリの場合

    • 他社にも提供するためにスマレジ・アプリマーケットでの公開申請を行います。
    • デベロッパーズ上でアプリの情報を充実させ、必要事項を入力して審査依頼を出しましょう。
    • 申請にあたっては、アプリの詳細な説明やアイコン画像、価格設定のほか、プライバシーポリシーURLやサポート連絡先などの情報も登録します。
    • これらの準備が整い申請を行うと、スマレジ側でアプリ内容の審査が行われます。
    • 審査に合格すると晴れてアプリマーケットに公開され、他のスマレジユーザーがそのアプリを購入・インストールできるようになります。
    • 公開後はアプリマーケットのページ上でアプリの紹介や説明が掲載され、必要に応じてバージョンアップの申請や価格変更なども行えます。

初心者向けの開発ポイントと注意点

Section titled “初心者向けの開発ポイントと注意点”

最後に、スマレジで初めてアプリ開発を行うにあたって知っておきたいポイントや注意点を紹介します。

スマレジのアプリ開発では、基本的に外部で動作するアプリケーションからスマレジAPIを呼び出して連携を行います。

そのため、開発に使用するプログラミング言語やフレームワークは自由です。自前のサーバー上で動くWebアプリでも、スマホのネイティブアプリでも構いません(前述のとおり、WEBアプリかネイティブアプリかで認証方式が異なります)。
スマレジが提供するのはAPIと認証の仕組みであり、アプリ本体の実装やホスティングは開発者側で用意する形になります。自社でサーバーを用意できない場合でも、クラウドサービス(AWSやGCPなど)やサーバーレス機構を使ってAPIを呼び出すことも可能です。要は、「スマレジと通信できるプログラム」を作れればOKなので、自分が扱いやすい環境で開発を進めましょう。

開発者登録時に提供されるスマレジのサンドボックス(テスト環境)は存分に活用しましょう。

サンドボックスでは架空の店舗データで自由に実験できるため、本番データを汚す心配なくAPIの挙動確認ができます。

特に、初めてスマレジAPIを触る場合はサンドボックスで各種APIを試し、どんなデータが取得できるか、どのようにリクエストすれば良いかを確認してから本開発に臨むと安心です。

また、PostmanなどのAPIクライアントツールを使うと、プログラムを書かなくてもリクエストを手動で送りAPIレスポンスを確認できます。

開発に詰まったときや、認証トークンの取得手順を確認したいときなどに非常に便利なので、活用をおすすめします。

スマレジ・プラットフォームAPIを活用すれば、レジ機能の拡張から他サービスとの連携まで、さまざまなアプリ開発の可能性が広がります。

まずは、自社の課題解決なのか他店へのサービス提供なのか目的を定め、パブリックアプリとプライベートアプリのどちらが適しているか決めましょう。

自分の開発したアプリがスマレジを利用する多くの店舗の助けとなり、ひいては新たなビジネスチャンスにつながるかもしれません。

次のステップとしては、ドキュメントを参照しつつ実際に手を動かしてみることです。

疑問点が出てきたら公式サポートに問い合わせることもできます。

ぜひ少しずつ学びながら、スマレジのアプリ開発に挑戦してみてください。

あなたの作るアプリが、きっと店舗運営の現場で役立つはずです。応援しています!