アプリ概要
「スマレジ 販売オプション」は、スマレジ POS システムと連携し、 販売データの一括登録・売上分析・インセンティブ計算を効率化するWebアプリケーションです。
スマレジアカウントでログインするだけで利用でき、専用ソフトのインストールは不要です。
主な機能
① 販売一括登録
スプレッドシート形式で複数商品を入力し、スマレジに一括で販売登録。複数伝票を一度に作成できます。
② 取置登録
取置タブに切り替えることで、取置伝票を一括登録できます。商品コード・取置点数・販売価格を入力するだけで簡単に登録できます。
③ CSV 結合・ダウンロード
取引履歴CSVと商品一覧CSVを商品コードで結合して一覧表示。CSV・Excel形式でダウンロードできます。
④ インセンティブ集計
店舗別に売上・粗利・インセンティブを集計。計算式をJavaScript式で自由に設定できます。
⑤ 取引タグ管理
販売登録時に使用する取引タグの候補をカスタマイズして保存できます(サーバー側に保存)。
⑥ 販売価格設定
商品の販売価格・会員価格をスプレッドシートで一括修正。店舗別価格の設定・削除にも対応しています。
⑦ 商品情報変更
サイズ・カラー・タグ・グループコード・品番・仕入原価などの基本情報と、自由項目をスプレッドシートで一括変更。スマレジ商品CSVのドラッグ&ドロップにも対応しています。
ログイン方法
① 販売
「販売」タブでは、スプレッドシート形式で販売データを入力し、スマレジに一括登録できます。 複数の伝票をまとめて処理することが可能です。
販売設定
| 項目 | 説明 |
|---|---|
| スタッフ | プルダウンから選択します。「スタッフ設定」にログインアカウントのメールアドレスとスタッフIDを紐付けて登録している場合は、ログイン時に対応するスタッフが自動で選択されます(変更も可能です)。 |
| 端末 | 販売に使用するスマレジの端末を選択します |
| 商品追加時の店舗選択 |
「商品コード」から行を追加する際、どの店舗を自動でセットするかを選びます。
|
商品の追加方法
スプレッドシートの列
| 列 | 説明 | 必須 |
|---|---|---|
| 商品コード | スマレジに登録された商品コード | ✓ |
| 商品名 | 自動取得(参照用、編集不可) | - |
| 数量 | 販売する点数 | ✓ |
| 販売価格(税込) | 自動取得。変更する場合は直接入力 | ✓ |
| 店舗 | 販売する店舗(「商品追加時の店舗選択」の設定に従って自動セット) | ✓ |
| 顧客ID | スマレジの顧客ID(任意) | - |
| 取引タグ | 伝票に付与するタグ(任意) | - |
customerId パラメーターの値を入力してください。
店舗更新ボタン
「クリア」ボタンの右にある「店舗更新」ボタンをクリックすると、一覧表に入力済みの全行(商品コードが入力されている行)の「店舗」列を、その時点の「商品追加時の店舗選択」の設定に従って一括で再設定できます。
販売実行
「販売実行」欄には「商品を更新する」チェックボックスがあります(初期状態でオンになっています)。 チェックを入れて「販売登録実行」を行うと、販売する商品ごとに、内容を何も変更しなくてもスマレジ側の商品情報の更新(PATCHリクエスト)が実行され、商品の「更新日時」が現在日時に更新されます。
② 取置
「取置」タブでは、スプレッドシート形式で取置データを入力し、スマレジに一括登録できます。 画面の構成は「販売」タブと共通で、モードが切り替わります。
取置設定
| 項目 | 説明 |
|---|---|
| スタッフ | プルダウンから選択します。「スタッフ設定」にログインアカウントのメールアドレスとスタッフIDを紐付けて登録している場合は、ログイン時に対応するスタッフが自動で選択されます(変更も可能です)。 |
| 端末 | 使用するスマレジの端末を選択します。取置の店舗はここで選択した端末の店舗が使用されます |
スプレッドシートの列
| 列 | 説明 | 必須 |
|---|---|---|
| 商品コード | スマレジに登録された商品コード | ✓ |
| 商品名 | 自動取得(参照用、編集不可) | - |
| 取置点数 | 取置する点数 | ✓ |
| 販売価格(税込) | 自動取得。変更する場合は直接入力 | ✓ |
取置実行
③ CSV 結合・ダウンロード
「取引・商品CSV結合」タブでは、スマレジからエクスポートした2種類のCSVを結合して分析・ダウンロードできます。
使い方
④ インセンティブ集計
「インセンティブ計算」タブでは、全店舗分の取引データから店舗別の売上・粗利・インセンティブを集計します。
使い方
例:粗利益の5%を支払う場合 →
Math.round(grossProfit * 0.05)
計算式で使える変数
| 変数 | 説明 |
|---|---|
qty | 販売数量 |
lineTotal | 売上金額(税込) |
lineCost | 原価(「原価を税込みにする」設定に従う) |
grossProfit | 粗利益(売上金額 - 原価) |
expectedLineTotal | 販売予想金額 |
tag | 取引タグ |
productCode | 商品コード |
productName | 商品名 |
storeName | 店舗名 |
計算式の書き方:IF文を使う
条件によってインセンティブを変えたい場合は、即時関数の中に if 文を書く方法が読みやすくおすすめです。
(() => {
if (grossProfit >= 1000000) return Math.round(grossProfit * 0.05);
if (grossProfit >= 500000) return Math.round(grossProfit * 0.03);
return Math.round(grossProfit * 0.01);
})()
上記の例では、粗利益が100万円以上なら5%、50万円以上なら3%、それ以下なら1%を支払います。
条件が2〜3個程度なら、三項演算子(? :)で1行に書くこともできます。
Math.round(
grossProfit >= 1000000 ? grossProfit * 0.05 :
grossProfit >= 500000 ? grossProfit * 0.03 :
grossProfit * 0.01
)
集計オプション
| オプション | 説明 |
|---|---|
| 原価を税込みにする | 原価計算時に消費税を含めます |
| 買取品のみ集計する | 買取品の取引のみを対象にします |
| 取引タグフィルター | 特定の取引タグのみ集計対象にします |
「売上原価(税込み)」の計算元について
集計結果の「売上原価(税込み)」「売上原価」は、取引履歴CSVの「原価計」列を元に計算されます。 商品一覧CSVの「原価」列は、軽減税率の判定(税設定)や販売予想金額の集計に使われるのみで、売上原価の金額そのものには使用されません。
⑥ 販売価格設定
「販売価格設定」タブでは、商品の販売価格・会員価格をスプレッドシート形式で一括変更できます。 商品全体の価格変更のほか、店舗ごとの個別価格の設定・削除にも対応しています。
商品の追加
スプレッドシートの列
| 列 | 説明 | 必須 |
|---|---|---|
| 商品コード | スマレジに登録された商品コード | ✓ |
| 商品名 | 自動取得(参照用。更新には使用されません) | - |
| 店舗 | 店舗別価格を設定する場合に選択。空欄の場合は商品全体の価格を変更します | - |
| 商品単価 | 設定する価格(税抜き)。空欄にすると店舗価格の削除になります | ✓ |
| 価格区分 | 1:商品単価 / 2:会員価格 | ✓ |
| 適用開始日 | 価格の適用開始日(デフォルト: 2026-01-01) | ✓ |
| 適用終了日 | 価格の適用終了日(デフォルト: 10年後) | - |
動作パターン
| 店舗 | 商品単価 | 動作 |
|---|---|---|
| 空欄 | 入力あり | 商品全体の販売価格(または会員価格)を変更します |
| 選択あり | 入力あり | 指定店舗の店舗別価格を設定・更新します |
| 選択あり | 空欄 | 指定店舗の店舗別価格を削除します(商品全体の価格に戻ります) |
ツールバーボタン
| ボタン | 動作 |
|---|---|
| 空行追加 | スプレッドシートの末尾に空行を1行追加します。価格区分・適用日はデフォルト値が自動入力されます |
| 最終行削除 | スプレッドシートの最終行を削除します |
| クリア | 全行のデータをクリアして初期状態に戻します(確認ダイアログあり) |
ペースト機能
Excelや他のアプリからコピーしたデータを貼り付けることができます。
| 操作 | 動作 |
|---|---|
| 1セルコピー → 複数セル選択してペースト | 選択した全セルに同じ値が入力されます |
| 1行コピー → 複数行を縦に選択してペースト | 選択した全行にコピーした行のデータが繰り返し入力されます |
⑦ 商品情報変更
「商品情報変更」タブでは、商品の基本情報(サイズ・カラー・タグ・グループコード・品番・仕入原価)と自由項目を、 スプレッドシート形式で複数商品まとめて一括変更できます。
① 変更する項目の選択
「基本情報」は常に表示される6項目から、「自由項目」は「自由項目をスマレジから取得」ボタンでスマレジ管理画面に設定されたラベル一覧を取得してから選択します。
| 基本情報 | 説明 |
|---|---|
| サイズ | 商品のサイズ |
| カラー | 商品のカラー |
| タグ | 商品のタグ |
| グループコード | 商品をグルーピングするための一意のキー |
| 品番 | メーカー品番 |
| 仕入原価 | 商品の仕入原価 |
「チェックを外す」ボタンをクリックすると、選択中の基本情報・自由項目のチェックを一括で解除できます(確認ダイアログはありません)。商品コード・商品名は削除されず、そのまま残ります。
② 商品情報変更データ入力
スプレッドシートの列
| 列 | 説明 | 必須 |
|---|---|---|
| 商品コード | スマレジに登録された商品コード | ✓ |
| 商品名 | 自動取得(参照用、編集不可。更新には使用されません) | - |
| ①で選択した項目 | 基本情報・自由項目が選択した順に列として並びます。空欄のまま実行すると、その項目は空欄で上書きされます | - |
ツールバーボタン
| ボタン | 動作 |
|---|---|
| 空行追加 | スプレッドシートの末尾に空行を1行追加します |
| 最終行削除 | スプレッドシートの最終行を削除します |
| クリア | 全行のデータをクリアして初期状態に戻します(確認ダイアログあり) |
| スマレジから取得 | 商品コードが入力済みの行について、スマレジから選択中の項目の現在値を取得して各列に反映します |
スマレジ商品CSVのドラッグ&ドロップ
「商品情報変更」タブを選択している時のみ、スマレジからダウンロードした商品CSVを画面上にドラッグ&ドロップして読み込めます(他のタブでは機能しません)。
設定
スタッフのログイン許可
このアプリは、スマレジの契約オーナー(管理者)アカウントであれば常にログインできます。 それ以外のスタッフにもログインさせたい場合は、画面左のサイドメニューを開き「スタッフ設定」から、そのスタッフのスマレジアカウントのメールアドレスを登録して許可する必要があります。
設定手順
スタッフの自動選択
スタッフID・メールアドレスの両方を登録しておくと、そのメールアドレスでログインした際に「販売」「取置」タブの「スタッフ」プルダウンが自動的に選択されます(変更も可能です)。
取引タグ設定
画面左のサイドメニューを開き「取引タグ設定」から、販売登録で使用するタグの候補を登録できます。 1行に1つずつ入力し「保存」ボタンをクリックします。
入力例
本部売上
委託販売
イベント販売
使用スコープ(申請用)
このアプリがスマレジAPIに要求するOAuthスコープは以下の通りです。
openid— OpenID Connect 認証(ログインユーザーの識別)email— メールアドレス取得profile— プロフィール情報取得offline_access— リフレッシュトークンによるセッション維持pos.stores:read— 店舗情報の参照pos.staffs:read— スタッフ情報の参照pos.transactions:read— 取引情報の参照pos.transactions:write— 取引の登録(販売登録機能で使用)pos.products:read— 商品情報の参照pos.products:write— 商品価格・基本情報・自由項目の更新・削除(販売価格設定・商品情報変更機能で使用)pos.stock:read— 在庫情報の参照
使用 API(申請用)
| エンドポイント | 用途 |
|---|---|
GET /userinfo | ログインユーザーの契約ID・ユーザーID取得 |
GET /{contractId}/pos/staffs | スタッフ一覧取得 |
GET /{contractId}/pos/stores | 店舗一覧取得 |
GET /{contractId}/pos/terminals | 端末一覧取得 |
GET /{contractId}/pos/products | 商品情報取得(商品コード検索) |
GET /{contractId}/pos/stock | 在庫情報取得(店舗選択用) |
POST /{contractId}/pos/transactions | 販売取引の登録 |
GET /{contractId}/pos/products/{id}/prices | 商品の店舗別価格取得(価格修正・取置価格表示で使用) |
PATCH /{contractId}/pos/products/{id} | 商品価格・基本情報・自由項目の更新(販売価格設定・商品情報変更機能で使用) |
DELETE /{contractId}/pos/products/{id}/prices/{div}/{store}/{date} | 店舗別価格の削除(販売価格設定機能で使用) |
GET /{contractId}/pos/products/reserve_item_labels | 自由項目ラベル一覧取得(商品情報変更機能で使用) |
GET /{contractId}/pos/products/{id}/reserve_items | 商品の自由項目の現在値取得(商品情報変更機能で使用) |
認証方式
パブリックアプリ(本番)
OAuth 2.0 Authorization Code Flow を使用。ユーザーがスマレジアカウントでログインし、アクセストークンを取得します。リフレッシュトークンによる自動更新に対応しています。
リダイレクトURI
https://(ドメイン)/api/auth/callback.php