クーポン機能の開発について
2011.11.06
フォーラムやお会いする方から、
クーポンコードの仕様変更についての要望をちょくちょく頂きます。
大体の人の要望が、
自由な文字列でクーポンを発行して、
そのコードで複数人が使用できる。
(ただし一ユーザにつき、使用は一回)
というものが欲しいと。
次のバージョン(たぶん1.6.6)で、
上記の要件を満たしたクーポンプラグインが同梱されます。
(プラグイン名:クーポン自由設定プラグイン)
せっかくなので、
このプラグインを開発する背景でも記載したいと思います。
1.6.5まで使用されていたクーポンは
サイトが発行したランダムなコードを各お客様のメールか手紙に記載して使用してもらうことを想定していました。
(お客様毎へメールの文面が違うサイト向けに開発した)
ランダムなコードの使用回数が一回だったのは、
そのクーポンコードが使用されたかどうかのフラグだけでチェックできることで、
配布したクーポンコードをお客様が使用する際、
クーポンコード自体に保存されている使用許可の有無をシンプルにチェックできることを想定していました。
そう、
この仕様では、
誰がどのクーポンコードを使用したという履歴が必要ない。
逆に言うと、
クーポンコードにはログがないため、
同じコードを色んな人に使用されるわけにはいかなかったのです。
この仕様はシンプルで開発にとってはとても扱いやすかったのですが、
我々が手掛けているサイトで下記の状況が発生しました。
とあるA社でサービスを利用した方が、
うちで運営しているECサイトを利用する際に割引を行わなければならなくなった。
つまり、
とあるA社にクーポンコードを決めてもらい、
それを運営しているECサイトで登録しなければならない。
今までのクーポンの仕様とは真逆のフローですね。
A社にお客様毎にクーポンコードを発行なんてさせてたら、
A社と自分らのECサイト、
どちらも無駄に多い登録作業が発生して、
どちらにとっても不幸な状況が発生します。
このような背景から、
ログ機能を持つクーポンの仕組みを開発することになりました。
ログを持つことにより
このフローの様に
クーポンの公開状況だけを調べることから
お客様が以前どんな行動(記録)をとったか?を調べる仕様になり、
使用できるかどうかのチェックの対象が、
まったくの別物になりました。
今回の話は
システムを開発するにあたって、
基礎部分ではありますが、
想定するお客様の運営によって、
こうも仕様が変わるものだなと感じ、
この記事を投稿してみました。
フォーラムや口頭で、
この機能があるとより便利になると思います
というような意見がちょくちょくありますが、
業種毎に運営(物販の方法)が異なり、
業種毎に必要とされる機能は全然違うので、
○○という機能があるとより便利になる
ということは一概に言えないものである。