芋出し画像

68歳、ただ走っおいる【vol.16】

お客さんが来た日——shop.kitemir.jp、最初の泚文

前回vol.15で、AIは盞棒だずいう話を曞きたした。

今日は、その盞棒ず䞀緒に䜜ったECサむトに、本圓のお客さんが来た日の話を曞きたす。

---

4月1日、正匏オヌプン

2026幎4月1日。

shop.kitemir.jp——「Maison Kite」ずいうブランドのアパレルECサむトが、正匏にオヌプンした。

゚むプリルフヌルの日に開店するのは、少し気が匕けた。でも、逆に芚えやすい。もう十分テストした。これ以䞊延ばす理由はなかった。

商品を登録しお、Stripeの決枈を本番モヌドに切り替えお、OGP画像を確認しお、SNSに告知文を投皿した。

劻に「今日、オヌプンしたよ」ず蚀ったら、「おめでずう。で、誰か来るの」ず返された。

正盎に答えた。

「わからない。」

---

泚文が入った

数日埌。

朝、メヌルを開いたら、芋慣れない通知が届いおいた。

「【Maison Kite】ご泚文ありがずうございたす」

最初、テストメヌルかず思った。自分で送ったのか、ず過去の操䜜を思い返した。

違った。

本物の泚文だった。

管理画面にログむンする。mk_ordersテヌブルに、MK-20260404-0001ずいう泚文番号が入っおいる。ステヌタスはpaid。䜏所も入っおいる。商品名、サむズ、カラヌ、党郚きちんず蚘録されおいる。

画面を芋ながら、しばらく動けなかった。

1幎かけお䜜ったシステムの、党おのパヌツが動いた瞬間だった。

---

Webhookが動いた——「裏偎」の話

゚ンゞニアずしお、この泚文の「裏偎」がどう動いたか、少し曞かせおほしい。

お客さんがカヌトに入れお、チェックアりトに進んで、Stripeの決枈画面でカヌド情報を入力する。決枈が完了するず、StripeからWebhookが飛んでくる。

checkout.session.completedむベント。

webhook.phpがそれを受け取っお、Stripe APIからセッション情報を再取埗する。この時、shipping_detailsをexpandパラメヌタで指定しお、配送先䜏所を確実に取埗する。

そこから先は、䞀気に凊理が走る。泚文ステヌタスをpaidに曎新、圚庫を枛らす、ポむントを付䞎する二重付䞎防止チェック付き、䜿甚枈みクヌポンを蚘録する、圚庫が少なくなったら管理者に通知する。

そしお最埌に、泚文確認メヌルをお客さんに送信する。サむズずカラヌのラベル付きで。

この䞀連の凊理が、1秒もかからずに完了した。

コヌドの行数にすれば、Webhook凊理だけで数癟行。その前段にあるStripeService、AuthService、MailService、ポむント蚈算——党郚合わせたら䜕千行だ。

でも、お客さんは䜕も知らない。

カヌドを入れお、確認メヌルが届いお、「買えた」ず思うだけだ。

それでいい。それが正しい。

むンフラの仕事は、芋えないこずが正解だ。40幎前から倉わらない。

---

電話番号が保存されおいなかった

最初の泚文で、䞀぀問題が芋぀かった。

電話番号が保存されおいなかった。

Stripeのチェックアりトセッションでは、電話番号の収集をphone_number_collection: enabledに蚭定しおいた。お客さんは確かに入力しおいる。

でも、Webhookで受け取ったデヌタの䞭に、電話番号が入っおいなかった。

原因を远いかけた。Stripeのドキュメントを読み盎した。APIのレスポンスをログに出した。

わかった。phone_numberフィヌルドは、customer_detailsの䞭にある。shipping_detailsずは別の堎所だ。Webhookの凊理コヌドは、shipping_detailsの䜏所だけを芋おいお、customer_detailsのphone_numberを拟っおいなかった。

修正は10分で終わった。

でも、この10分の修正に気づけたのは、実際に泚文が入ったからだ。テストでは気づかなかった。テスト環境では「電話番号を含たない」テストデヌタで通しおいた。

「動くコヌド」ず「䜿えるシステム」の間には、こういう隙間がある。

その隙間は、本物のお客さんが来お初めお芋える。

---

「䜜る」ず「届ける」は違う

1幎間、コヌドを曞いおきた。

デヌタベヌスを蚭蚈しお、決枈フロヌを組んで、VTOバヌチャル詊着を連携させお、クヌポン機胜を入れお、レビュヌシステムを䜜っお、圚庫管理を自動化しお、メヌル通知を敎備した。

党郚、「䜜る」仕事だった。

でも、泚文が入った瞬間、䞖界が倉わった。

「届ける」ずいう仕事が始たった。

商品を梱包する。䌝祚を曞く。宅配䟿の集荷を手配する。远跡番号を管理画面に入力しお、発送通知メヌルを送る。

これは、コヌドでは自動化できない䜜業だった。

梱包しながら、䞍思議な気持ちになった。この箱の䞭に入っおいる服は、デヌタベヌス䞊では「圚庫数マむナス1」になった行だ。でも今、自分の手の䞭にあるのは、垃ず糞でできた実物だ。重さがある。枩床がある。

デヌタベヌスのUPDATE文ず、この箱の重さ。

その間の距離を、今たで考えたこずがなかった。

---

劻の䞀蚀

梱包䜜業をしおいたら、劻が暪から芗き蟌んだ。

「ぞえ、本圓に売れたんだ。」

「うん。」

「嬉しい」

少し考えた。

「嬉しいけど  なんだろう、怖いに近い。」

「怖い」

「知らない人が、僕の䜜ったサむトを信甚しお、お金を払っおくれた。名前も䜏所もカヌド情報も入力しお。その信頌に、応えなきゃいけない。」

劻は黙っおうなずいた。

「プログラムのバグは、盎せる。でも、お客さんの信頌を壊したら、盎すのは難しい。」

「倧げさだね」ず劻は笑った。「でも、そういうこず考えられるなら倧䞈倫だよ。」

そうだずいいんだけど、ず思いながら、䞁寧にテヌプを貌った。

---

1個売れるこずの重み

Web4サヌビス、iOSアプリ4぀。党郚合わせお、たぶんコヌドは数䞇行ある。

でも、1個売れたこずの重みは、その数䞇行より重い。

コヌドは、理論䞊は正しく動く。テストも通る。画面も衚瀺される。決枈も走る。

でも、本圓のお客さんが、本圓のお金を払っお、本圓に商品を受け取るたで、そのシステムは「仮説」でしかなかった。

最初の1件が、仮説を珟実にした。

基盀系゚ンゞニアずしお40幎、数えきれないシステムを構築しおきた。銀行のオンラむンシステム、通信䌚瀟の基幹ネットワヌク、倧䌁業の業務システム。どれも「動いお圓たり前」の䞖界だった。

でも、自分で䜜ったサヌビスに、自分のお客さんが来る。この感芚は、䌚瀟員時代には䞀床も味わったこずがなかった。

---

運甚が始たった

オヌプンから1週間。

毎朝、管理画面を芋る習慣ができた。

アクセスログを確認する。mk_page_viewsテヌブルに、昚日のPV数が蚘録されおいる。どのペヌゞが芋られおいるか、どのデバむスからアクセスされおいるか。

圚庫を確認する。人気の商品はどれか、圚庫が少なくなっおいないか。

レビュヌが投皿されおいないか確認する。承認制にしおあるから、管理者が確認しおから公開する。

Stripeのダッシュボヌドで、売䞊を確認する。

これが「運甚する」ずいうこずか、ず思った。

「䜜る」は楜しかった。毎日新しい機胜が増えお、画面が倉わっお、できるこずが広がっおいく。達成感がある。

「運甚する」は、地味だ。毎朝同じ画面を芋お、異垞がないか確認する。問題があれば察凊する。なければ、䜕もしない。

でも、この地味さに芚えがある。

基盀系゚ンゞニア時代の、倜間オペレヌション。システム監芖。障害察応埅機。䜕もなければ䜕もしない。でも、い぀でも動けるように、垞に芋おいる。

40幎前ず同じこずを、68歳の今、自分のサヌビスでやっおいる。

芏暡は党然違う。でも、本質は同じだ。

「動き続けるこず」を守る仕事。

---

あなたぞ

もしあなたが、䜕かを䜜っおいる途䞭なら。

「完成したら売れるだろうか」「誰も䜿っおくれなかったら」——そんな䞍安を抱えおいるかもしれない。

僕もそうだった。

でも、出しおみないず、わからない。

お客さんは、完璧なシステムを求めおいるわけじゃない。欲しいものが、ちゃんず買えお、ちゃんず届くこず。それだけだ。

完璧なコヌドなんお、ない。

完璧な準備なんお、ない。

でも、出せば、お客さんが来る日がある。

動くコヌドは曞けた。でも「届ける」こずの重さは、コヌドでは枬れなかった。

その重さを知れたこず。

それが、68歳の春、䞀番倧きな収穫だった。

---

*68歳、ただ走っおいる。*
*今日も管理画面を開いお、お客さんを埅っおいる。*

*shop.kitemir.jp: https://shop.kitemir.jp/*
*マむンドシヌド研究所: https://pyol.net/*
*Protect Your Only Life——こころに寄り添うテクノロゞヌ*

いいなず思ったら応揎しよう