Shopifyの既存アプリでできない機能はどうする?独自開発を依頼する前の整理項目

Web制作系の依頼

Shopifyにポイント制度や会員別価格、独自の予約方法を追加したい。しかし、アプリストアを探しても条件に合うものが見つからない。

このような場合は、自社ストア専用の機能を開発する方法があります。ただし、欲しい機能をそのまま伝えるだけでは、開発範囲や見積もりが定まりません。

まずは、既存アプリで対応できない理由と、実際の業務の流れを整理します。

Shopify実績200件!ECサイトを制作します

 

独自開発の前に3つの方法を比べる

Shopifyへ機能を追加する方法は、独自アプリの開発だけではありません。

大きく分けると、次の3つがあります。

方法 向いている内容
既存アプリを導入する 一般的なレビュー、ポイント、予約、定期購入
テーマを変更する 商品ページの表示、入力欄、ボタン、レイアウト
独自機能を開発する 自社独自の計算、会員制度、業務システムとの連携

見た目を変えたいだけなら、テーマの修正で済むことがあります。

一方、注文情報を外部システムへ自動送信する、顧客ごとに異なる処理を行うなど、データを使った動きが必要なら、アプリやAPIを使う開発が候補になります。

ShopifyのAPIは、ストアのデータを読み書きし、外部のシステムと連携したり、新しい機能を追加したりするために使われます。

既存アプリで対応できない理由を整理する

アプリが見つからないときは、「必要な機能がない」とまとめず、何が合わないのかを書き出します。

たとえば、ポイント機能でも条件はさまざまです。

  • 商品によって付与率を変えたい
  • 会員ランクごとに付与率を変えたい
  • 実店舗とオンラインでポイントを共有したい
  • 有効期限を顧客ごとに変えたい
  • キャンペーン期間だけ計算方法を変えたい
  • 既存会員の残高を引き継ぎたい
  • 外部の会員管理システムと同期したい

市販アプリで一部だけ実現できる場合は、足りない機能を追加開発するのか、運用方法を変えるのかを比べます。

すべてを独自開発すると費用と管理の手間が増えます。既存アプリで大部分をまかない、どうしても足りない部分だけを作る方法もあります。

欲しい画面ではなく業務の流れを伝える

開発を依頼するときは、「このようなボタンが欲しい」だけでは情報が足りません。

そのボタンを押したあと、誰が何をするのかまで説明します。

例として、会員限定商品の販売なら、次のような流れです。

  1. 顧客が会員登録する
  2. 管理者が会員資格を確認する
  3. 対象者へ会員ランクを設定する
  4. 会員だけに特定の商品を表示する
  5. 会員価格で注文を受ける
  6. 資格が切れたら通常表示へ戻す

この流れが分かれば、必要なのが表示の変更だけなのか、顧客情報の保存や自動判定まで含むのかを判断できます。

画面の見た目より先に、処理の始まりと終わりを整理してください。

誰が使う機能なのかを分ける

同じ機能でも、使う人によって作る場所が変わります。

  • 購入者が商品ページで使う
  • スタッフがShopify管理画面で使う
  • 倉庫担当者が外部システムで使う
  • 実店舗のスタッフがPOSで使う
  • 管理者だけが設定を変更する

Shopifyでは、アプリの機能を管理画面、商品や顧客のページ、POSなどへ追加できる仕組みがあります。

「スタッフが毎回CSVをダウンロードしているので自動化したい」など、現在の作業も伝えると、必要な画面を減らせることがあります。

自動化するタイミングを決める

外部サービスと連携するときは、いつデータを送るのかを決めます。

たとえば注文情報なら、候補は次のとおりです。

  • 注文が作成されたとき
  • 支払いが完了したとき
  • 商品を発送したとき
  • 注文がキャンセルされたとき
  • 返金されたとき

「注文を外部システムへ送る」だけでは、どの段階で送るのか分かりません。

Shopifyには、注文や在庫などに変化があったとき、アプリへ通知するWebhookという仕組みがあります。外部の在庫管理や会計システムを更新するときにも使われます。

二重送信や通信失敗が起きた場合の扱いも必要です。

  • 失敗したら自動で再送する
  • 管理者へ通知する
  • 管理画面から手動で再送できる
  • 同じ注文を二重登録しない

正常に動く場合だけでなく、失敗した場合の流れも決めておきます。

連携するデータの項目を決める

外部システムと連携する場合は、「顧客情報を連携する」ではなく、送る項目を指定します。

顧客情報なら、次のような項目があります。

  • 顧客番号
  • 氏名
  • メールアドレス
  • 電話番号
  • 住所
  • 会員ランク
  • 保有ポイント
  • 注文回数
  • 購入金額
  • 顧客タグ

注文情報には、商品名、数量、割引、送料、税金、配送先などが含まれます。

すべての情報を送る必要はありません。使わない個人情報まで外部へ渡すと、管理する範囲が広がります。

連携先で何に使うのかを確認し、必要な項目だけに絞ります。

管理画面から変更したい項目を決める

独自機能を作ったあと、設定を変えるたびに開発者へ依頼する状態は避けたいところです。

日常的に変える項目は、管理画面から操作できるようにします。

たとえば、次のような設定です。

  • ポイントの付与率
  • 会員ランクの条件
  • キャンペーンの開始日と終了日
  • 対象商品
  • 表示する文章
  • 通知先メールアドレス
  • 外部連携を一時停止するスイッチ

反対に、ほとんど変更しない項目まで画面化すると、開発する量が増えます。

誰が、どのくらいの頻度で変更するのかを基準に決めます。

権限の渡し方を先に決める

開発者が作業するには、Shopifyストアやアプリ開発に関する権限が必要です。

必要以上に広い権限を渡すのではなく、作業内容に合わせて設定します。Shopifyでは、カスタムアプリの作成や管理に関する権限と、アプリや販売チャネルを管理する権限が分かれています。

依頼前には、次の点を決めておきます。

  • コラボレーターとして招待するか
  • 本番ストアへいつ接続するか
  • テスト用ストアを使うか
  • 顧客や注文情報へのアクセスが必要か
  • 納品後に権限を削除するか

本番データを使わなくても開発できる部分は、テスト用の環境で進めます。

開発後も管理費がかかることがある

カスタムアプリは、一度作れば永久に手入れが不要とは限りません。

外部のサーバーでアプリを動かす場合は、サーバー代や監視の費用がかかることがあります。外部サービス側の仕様が変われば、連携部分の修正も必要です。

ShopifyのAPIにはバージョンがあり、安定版は定期的に更新されます。古いバージョンが使えなくなる前に、アプリ側を更新する運用が必要です。

見積もり時には、制作費だけでなく次の内容も聞いてください。

  • サーバー代
  • 保守費用
  • 障害時の連絡先
  • Shopify更新時の対応
  • 外部サービス更新時の対応
  • 軽微な修正の扱い
  • 開発者と連絡が取れなくなった場合の引き継ぎ

公開後の管理者が決まっていない場合は、開発前に相談します。

ソースコードとアカウントの扱いを確認する

完成した機能が誰の管理下に置かれるのかも確認が必要です。

最低限、次の点を見積もりや契約時に整理します。

  • ソースコードを受け取れるか
  • ソースコードを保管する場所
  • サーバーの契約者
  • ドメインや外部サービスの契約者
  • アプリの管理者
  • APIキーの保管方法
  • 開発用アカウントの削除方法
  • 別の開発者へ引き継げるか

開発会社名義のサーバーでしか動かせない場合、契約終了後も使えるのかを聞いておきます。

自社名義で契約すべきものと、開発者が管理するものを一覧にすると、納品時の混乱を防げます。

見積もり相談時に伝える内容

最初から専門的な仕様書を作る必要はありません。

次の内容を文章や箇条書きでまとめます。

  • 現在のShopifyストアの状態
  • 追加したい機能
  • その機能を使う人
  • 現在行っている作業
  • 自動化したい部分
  • 連携したい外部サービス
  • 参考にしているサイト
  • 希望する公開時期
  • 必ず必要な機能
  • なくても運営できる機能

簡単な図や手書きの画面案があれば、文章だけより伝わりやすくなります。

「Aの処理が終わったらBへ送る」のように、矢印でつなぐだけでも構いません。

制作を依頼する場合

Shopify実績200件!ECサイトを制作します

こちらにて、制作を丸投げ依頼可能です。自分で実装するのが手間な場合や困難な場合には、得意な誰かに任せることも選択肢の一つでしょう。

まとめ

Shopifyの既存アプリで希望する機能を実現できない場合は、自社ストア専用の機能を開発する方法があります。

ただし、最初から独自開発に決める必要はありません。既存アプリ、テーマ修正、独自開発の順に比べ、足りない部分を明確にします。

依頼前に整理するのは、画面の見た目だけではありません。

誰が使うのか、どのデータを扱うのか、いつ処理するのか、失敗したときにどうするのかまで決めます。

公開後の保守、サーバー、ソースコード、アカウントの管理も含めて確認しておけば、完成後に動かし続けられる仕組みを作りやすくなります。

タイトルとURLをコピーしました