Running an auction has become a go-to way of converting assets into cash, fast, for both profit and charity-driven purposes. But because of the daunting workload involved in ensuring they are a success, most companies shy away from the task of organizing auctions.
However time consuming they may seem to be to run, organizations can now use modern technology to automate the heavy lifting and drive engagement from their staff on the platforms where they are already spending their time. One of our customers was able to build a bot that successfully raised £15k for charity with 60% of staff using the bot to place a bid.
In this guide, we will talk you through how to create the same basic auction bot on Workplace from Facebook using The Bot Platform.
The bot basics
The bot will allow employees to place bids on a variety of items and record the highest bids in a Google Spreadsheet.
Knowledge Required: Intermediate/Advanced
You need a good working knowledge of how to create a bot, Integromat, and basic Google Suite knowledge.
What you will need
Before you do anything you need to create an account on The Bot Platform. Once you have done this, create a new bot. This bot needs to contain the following elements:
- A carousel of items to be bid on
- A message that displays the current highest bid
- And a message that then asks if the user wants to place a bid
The bot then records the bid value and checks the Google sheet to see if that bid is higher than the current bid. If it is, the highest bid value is updated in the spreadsheet and the highest bidders name is also recorded.
In our first message, we need to set up the carousel of items people can bid on. You will want to include a button that stores a user attribute and sends the next message on each item. In the attribute value field, make sure you enter a short description of the item they will be bidding on.
In the next message, we want the bot to return the current highest bid for that item. Create a new message that contains our webhook. This can be a generic message that states something like, ‘The highest current bid is X,’ and then add in a delay. The final message should ask the user if they want to place a bid, with a button that links off to the bid amount message:
Now we need to head over to Integromat and set up a new scenario. You want to add the webhook module and create a new webhook. Copy the webhook URL and paste that in the webhook field in your bot.
We now need to create a Google Sheet that can record all the bids made using the bot. Our spreadsheet should look like this:
Now we want to click the run once button on our Integromat scenario and run through our bot to this point.
Now we have run our scenario through our bot and pulled the item variable through from our webhook, we need to look up that item in our spreadsheet.
Add in a Google Sheet module to your Integromat flow – you will want to use Search rows. You need to search the item column for the item they have chosen from your carousel. This should be set up as follows:
We now want to return the highest bid value looked up in that spreadsheet, so we need to add a webhook response via Integromat.
You will want to use the basic message response which would look like the following:
Replace the USER-ID with the FBID pulled through from your webhook, and in the text, use the current highest bid field found in the previous search step.
Now if we run this scenario and test our bot, you should see that the highest bid value is now being displayed.
Now we need to set up the actual bid process.
In your bid amount message on The Bot Platform, add a basic Q&A message that asks how much the person would like to bid and save that with an attribute of “Bid value.” Once they have entered a value, the next message they should receive is a bid confirmation message. This message needs to contain another webhook field.
Create a new scenario in Integromat and set up a new webhook. Copy and paste this webhook into your bot. Click the run once button on your new scenario and run through the bot. You will now see your bid value has been pulled through:
Now we need to search our Google spreadsheet for the item so we can compare the bid value to the current highest bid.
We then want to add in a Router to our Integromat scenario so we can break the future journey down into two parts; if they put in a higher bid and if they don’t.
First, we will put in an error message in case the bid they enter is not higher than the current highest bid. Add in a webhook response that responds with a message that their bid is not higher than the current bid.
Your flow should now look as follows:
We now need to filter this branch to ensure that it only triggers when the bid is not higher than the current bid. To do so, we need to add a filter as follows:
Next, we need to add in the journey if the bid is higher than the current highest bid. First, we set up a filter to ensure the new branch only triggers when the bid is higher.
We then want to add an “Update a Row” in Google sheets module in our scenario.
Your row number should be the row number pulled from your search step. You then want to update the highest bid with the value the user entered and update the highest bidder name with the first name and last name fields pulled from the webhook. It should look like this:
We now want to add on a basic webhook response that confirms that their bid has been successful. Your bot is now complete and ready for testing! You should see the new highest bid is pulled through when you go back to the info screen.