全国オンライン対応受付 平日 9:00-18:00
お問い合わせ

開発記録 / jiji制作記 / Vol.17 jiji制作記 Vol.1

記事 01

米粉ロールケーキ専門店の予約システムを作った話

言葉の発達がゆっくりだった息子さんが、「もう一個食べたい」という気持ちを人差し指を立てて「じっじ」と一生懸命伝えたことから、その名前がついた。また食べたいと思ってもらえるお菓子を届けたい、という意味を込めて。

2026-06-07 公開

洋菓子店という名前の由来を聞いた。

言葉の発達がゆっくりだった息子さんが、「もう一個食べたい」という気持ちを人差し指を立てて「じっじ」と一生懸命伝えたことから、その名前がついた。また食べたいと思ってもらえるお菓子を届けたい、という意味を込めて。

その市玖珂町の米粉ロールケーキ専門店洋菓子店(jiji)の話を聞きながら、「このお店のためのシステムは、丁寧に作らないといけない」と思った。


焼き菓子店と同じ構造、違うルール

洋菓子店と焼き菓子店は同じ技術で作っている。GAS+LINE LIFF+AWS S3という構成だ。しかし営業ルールが違う。

焼き菓子店は土曜受け渡し・木曜12時締め切りだった。洋菓子店は金曜受け渡し・受付時間は火曜20時〜木曜20時の52時間だけ。

そして、もう一つ違いがある。受け渡し場所の住所をウェブ上に公表しない。予約が確定したお客さんだけに、メールで住所を伝える。

工房の場所を知っている人だけが来る。それはプライバシーの配慮でもあり、「予約した人だけへの特別感」でもある。


住所をメールで届ける設計

注文が確定すると、GASは2つの通知を同時に送る。

一つはLINEへのプッシュ通知。「ご予約を確定しました」という内容だ。

もう一つはGmailでの確認メール。こちらに受け渡し場所の住所が書いてある。

function sendConfirmationEmail(email, name, pickupDate, pickupTime) {
  const address = PropertiesService.getScriptProperties().getProperty('WORKSHOP_ADDRESS');
  const body = `${name} 様\n\nご予約ありがとうございます。\n\n` +
    `お渡し日時:${pickupDate} ${pickupTime}\n` +
    `お渡し場所:${address}\n\n` +
    `ご不明な点はLINEにてお問い合わせください。\n\n洋菓子店`;
  GmailApp.sendEmail(email, '【洋菓子店】ご予約確認・お受け渡し場所のご案内', body);
}

住所はPropertiesService(GASのプロパティストア)に保存する。コードの中に住所を直書きしない。GitHubに上げたとき機密情報が公開されてしまう。


30分刻みの時間帯

焼き菓子店は1時間単位の時間帯(13時・14時・15時・16時)だった。洋菓子店は30分単位(13:00・13:30・14:00・・・17:30)の9枠だ。

実装としては選択肢の数が増えるだけで、構造は変わらない。スプレッドシートの時間帯列が「13:00」「13:30」という文字列で管理されるだけだ。

焼き菓子店で作った仕組みを洋菓子店に適用するとき、変更箇所は数か所だった。同じ構造を2度作ることで、「どこが固定でどこが可変か」がはっきり見えた。これがFlex版の設計思想につながっていく。


ブランドへの敬意を設計に込める

洋菓子店は素材にこだわっている。地元産ヒノヒカリの米粉、平飼い鶏の卵、北海道産生クリーム。プレーンロールが2,690円という価格帯は、安さではなく品質で選ばれることを意図している。

このブランドのWebサイトにふさわしいUIとは何か。にぎやかなカラーリングでも、太字の強調でも、派手なアニメーションでもない。

フォントにCormorant Garamondを選び、背景をクリームホワイトに、アクセントにゴールドを使った。「また食べたい」と思ってもらうお菓子と同じように、見ていて心地よいUIを目指した。


*次回は「火曜20時から木曜20時——受付時間を52時間に絞る設計」*

*シンプルシステム株式会社 代表 伊藤勝彦*