Column

受託開発オークションサイト(受託開発)

約5分で読めます文:野本 健太(代表取締役)

駆け込み入札の対策は、延長の上限を数字で決める ― 防げない部分の扱い方

終了間際の駆け込み、どう防ぐ?延長には上限を決める。― 砂が落ちきる直前の砂時計と、オークションの木槌

この記事でわかること

  • 不正対策の要望は、何分・何回まで、と数字に置き換えて決める
  • 完全な防止が「いつ終わるか不明」を生むなら、上限で線を引く
  • 防げない部分は設計書に書いて残し、公開後の想定外を防ぐ

オークションで、終了の直前に入札して、ほかの人に対抗する時間を与えない「駆け込み入札」。これを防ぐ仕組みを入れたいと考えたとき、どこまで防げばよいのでしょうか。完全に防ごうとすると、今度は「いつ終わるか分からない」という別の困りごとが生まれます。不正や抜け道への対策は、どこかで線を引く判断が要ります。

私たちは、コレクターズアイテムのオークションを運営する企業様から受託したオークションサイトの新規開発(現在はリリース準備中)で、残り10分以内に入札があれば終了を10分延ばし、延長は10回までとするルールにしました。上限に達した後の最終局面では、駆け込みが技術的に可能です。これは隠さず、割り切りとして決めています。

この記事では、その決め方を根拠に、対策の「上限」をどう決め、防げない部分をどう扱うかを書きます。

対策には、上限を数字で決める

「駆け込みを防ぐ」という要望は、そのままでは作れません。何分以内の入札なら延ばすのか、何分延ばすのか、何回まで延ばすのかを数字に置き換えて、初めて作る側と運営する側が同じものを思い浮かべられます。

本件の3つの数字は、残り10分以内の入札で、終了を10分延ばし、上限は10回です。上限の10回に達した後は終了時刻が固定され、入札は受け付けますが、それ以上は延長しません。延びた終了時刻は、見ている人の画面にも反映します。

数字を決めたら、その数字を「どこで測るか」も決めます。本件では、延長するかどうかを、利用者の端末の時計ではなく、入札を受けるサーバー側の時刻で判定します。端末の時計は1台ごとにずれうるので、判定の基準を1つにそろえておく必要があります。境目(残り10分ちょうどの前後や、10回目の延長)で想定どおりに動くかの確認も、公開前の判定項目に入れています。

数字にすると、最も延びた場合の影響も計算できます。1つの品物の終了は、予定の時刻から最大で100分延びます。

1つの品物の終了が、予定からどこまで延びうるか
  • 延長なし0分
  • 延長1回+10分
  • 上限の10回まで延長最大+100分

「残り10分以内の入札で+10分・上限10回」からの計算値。出典:オークションサイト 開発記録(2026年6月5日の打ち合わせで確定)

完全に防ぐ方法が、別の困りごとを生むことがある

駆け込み入札を最も確実に防ぐのは、「最後の入札から一定時間、誰も入札しなければ終わる」という方式です。終了時刻を決めず、延長の回数にも上限を置かないので、「最後の一瞬」がそもそも生まれません。上の図でいえば、延長の棒に終わりがない状態です。

本件では、この方式を採りませんでした。いつ終わるかが予測できず、運営も入札者も予定を立てられないためです。仕組みとしての正しさだけでなく、それを使って運営する人が予定を立てられるかどうかも、ルールを決める材料になります。

上限のない延長には、別の問題もあります。2026年5月28日に社内で初版の設計書を見直した際、当時の案(残り5分以内の入札で10分延長)に延長の上限が無いことを指摘しました。入札者が交互に入札し続ければ、理論上いつまでも終わらないからです。6月1日には、優先して直すべき3点の1つとして差し戻しています。

そのうえで、6月5日のお客様との打ち合わせで「残り10分以内・10分延長・上限10回」に確定しました。6月15日には、設計書・仕様書・業務フローの3つで、この数字が食い違っていないことを確かめています。

防げない部分は、先に言葉にして残す

上限に達した後は終了時刻が固定されるので、その最後の局面では、終了直前の入札に対抗する時間がない場面が起こりえます。この延長の仕組みは駆け込みを「抑える」ものであって、完全に防ぐものではありません。

本件では、このことを設計書とお客様向けの用語集に「完全防止ではない」と明記し、6月5日の打ち合わせの決定事項にも書き添えています。設計書では、上限付きの延長を、主要なオークションサイトでも採られている折衷案として位置づけました。

割り切った部分を言葉にして残しておくと、公開後に「想定外の抜け道」と受け取られずに済みます。運営する側も、どこまでが仕組みで防げて、どこからが運営で見守る範囲かを把握できます。

影響の集中は、時間をずらして分散する

もう1つ、終わり方にも工夫を入れました。同じ会期に終わる品物が複数あるときは、終了時刻をロット番号(品物の通し番号)の順に1分ずつずらします(21時00分、21時01分……)。延長が起きた品物だけが、それぞれ個別に延びます。6月23日にお客様に確定いただいた方式です。

会期そのものも、運営が品物ごとに決められるようにしています。原則は月曜10時に公開して日曜21時に終える7日間で、特に高額な品物は運営の判断で3週間以上の会期にできます。延長の上限は、この会期の決め方とあわせて「最後にいつ終わるか」を運営が見通せるようにするための部品の1つです。

全品物が同じ時刻に終わると、終了の処理が一度に集中します。ずらしておけば処理の負荷が分散し、複数の品物を追っている入札者にとっても追いやすくなります。延長の上限と合わせて、終わり方全体を「予定が立つ形」にそろえています。

発注するときに役立つ3つのこと

対策の要望は、数字に置き換えて決める

「不正を防ぎたい」「公平にしたい」という要望は、開発会社と一緒に、何を・どこまで・何回まで、という数字に置き換えてください。数字にすると、最も悪い場合にどうなるか(本件なら最大100分延びる)も事前に計算できます。

防げない部分を、資料に書いてもらう

完全に防ぐ方法が別の困りごとを生むなら、どこかで割り切ることになります。そのときは、割り切った部分を設計書や運用の資料に明記してもらってください。公開後の説明や問い合わせへの対応が、その記述を根拠にできます。

運営の予定が立つかも、判断の材料に入れる

仕組みの正しさだけでなく、運営する人が終了時刻や作業の予定を立てられるかどうかも、ルールを決める材料にしてください。正しくても運営が回らない仕組みは、長くは使われません。

書いた人

野本 健太株式会社Rushout 代表取締役

海上自衛隊、システムエンジニアを経て、2019年に株式会社Rushoutを設立。自社プロダクトの開発と受託開発を手がける。

代表メッセージ