Skip to content

Coffee Auction Functionality

Space: VM Last Updated: 2025-05-29T12:05:41.089Z Author: Ana Cristina Version: 1 URL: https://vollers.atlassian.net/wiki/spaces/VM/pages/2555904022/Coffee+Auction+Functionality


auction styles:

Online / Timed Auctions

An online/timed auction uses incremental bidding.

A user enters a bid amount on the bidding form, they are shown a confirmation message and their bid is entered. If the amount they enter is too low (lower than opening bid or current bid amount) they'll be shown a message saying so.

If two people bid the same amount at the same time, then we use the database to decide who the winner is. The bid that has the lower ID is the winning bid (as it was written to the database first). This doesn't happen very often, but it is possible (particularly when you have a server under heavy load). Apart from tied bids the highest bidder is the winner, unless their bid is below reserve. If their bid is below reserve, then they will (normally) be shown a message saying they are below reserve.

Buy now bids

A "buy now" is just means a user can "buy" an item. A buy now option may be available alongside incremental bidding. If a user "buys" the item, then all other forms of bidding are stopped. (N.b. ERIC and CNC use the "multi buy now" stuff, so it's a little different for them).In case two users "buy" at exactly the same time, then only the first "buy now bid" counts.

Helmsman bidding

Helmsman bidding is used in our private coffee auctions.

Essentially there is a single end date/count down for every lot in a helmsman auction, so all lots will end at precisely the same time. Also helmsman auctions typically don't immediately have an end date set.They also display very differently, with every lot in the auction displayed on one page in a fairly tabular layout.

Normally they work like this:

  • Bidding opens on all lots at a predefined timeAdmin see how bidding is going (no count down yet)Once admin is happy bidding has start ok (typically that every lot has had at least one bid) they "start the count down"
  • Count down is normally relatively short (say 3 minutes) and is the same for all lotsEvery time a bid is made on a lot, the countdown is reset back to the original amount (e.g. 3 minutes) for every lot
  • Once the countdown finishes the lots goes into a "pending" mode - bidding has paused and the admin can review thingsIf they aren't happy the can restart the countdown (say if the site went down, or loads of bidders lost network access)
  • IF they are happy then they formally end bidding and winner emails get sent etcAdditionally it's possible for the admin to pause the countdown at any stage.
  • To do this we remove the original end date and store how many seconds was left on the clock.
  • Then when they un-pause we can use the seconds left to figure out the new end date.
  • Each lot also defers the end date/countdown to its auction (whereas normally each lot has its own end date).
  • That way we can be sure that there is only a single countdown/end date for all lots in the auction.

Commodity auction

The commodity auction was an experimental auction type that is a cross between a live auction and a helmsman:

  • one lot runs at a time,
  • there is a countdown clock that starts when that lot becomes the current lot and each time a bid is placed on the current lot, the countdown clock will reset to 2 mins.

The lot will display:

  • Time left, increment, current bid, winning/losing status.

When the countdown clock reaches zero, bidding on that lot is finished.

The countdown duration is a configurable time on the auction

Bids can be placed on future lots - bidding will be open from the start of the auction but the clock will only run on the current lot.

It is configurable on the auction whether admin needs to accept online bids.

When bidding on a lot is finished and you move to the next lot.

  1. Countdown says "Bidding Ended" once it has hit zero (or one second after, so people can see it hit zero)
  2. If the countdown reaches 0, bidders shouldn’t be able to bid on the current live lot (should have server side validation at least). If going ‘Previous Lot’, countdown should start again and bidders can bid on the current live lot.