Loading Special Discount Pricing with Times and Sending to WebSite
The retailer has a black friday special and wants to reduce the price on several thousand items, but they would like to start pricing at 9pm. How do they do this, and how or when will these prices flow to their integrated web site? They already know they can put a time on Pricemaps when entering manually, but not sure how to bulk load with start/end times.
This article touches on several concepts. Not all retailers are configured this way, but the details may be interesting to any retailer using Fieldpine APIs to their website.
Loading Pricemaps
A pricemap is a specific price rule that determines a temporary pricing condition for a combination of date,product,store,customer,etc. Pricemaps can set a time (hour,minute,second) the offer starts and stops.
- If you are creating a pricemap manually, you can enter date/time without issue
- If you are bulk loading an Excel spreadsheet, then that spreadsheet can include start/end columns. However, this load currently only permits dates, not dates and times. This will be resolved in a version of Fieldpine shortly, so you can put times in a Excel spreadsheet
- If you are bulk loading an Excel spreadsheet that does not have start/end columns, then the loading page has a specific option to let you enter these. That does accept dates with times.
The pricemap overview list also only showed dates not times. This has been changed to include times.
Fieldpine PosGreen (counter selling application) keeps a copy of products and all current/future pricemaps. This ensures it can apply price changes immediately as they become active. Webites typically only keep a single "price" concept and do not keep "future price"
Transferring Pricing
Many websites simply request all products and current pricing from Fieldpine at periodic intervals. Typically that is every couple of hours in order to keep traffic and resource use low. This retailer however uses a more advanced website that requests frequent "what has changed since last time I checked" The discussion below is for websites that use this incremental method
- A product is "changed" when it is altered. Loading a pricemap does trigger the "changed" value on a product, however this is the time the pricemap is loaded, not the time is becomes active.
- Websites that request pricing and pricemaps included (which allows them to automatically detect "on special") typically only see active pricing. So a pricemap loaded at 5pm will first be visible to the website after 9pm, but as the product was not "changed" at 9pm their incremental detection will see the price change
Short Term/Manual options
- Within Fieldpine, you can enter the quickcode "mark all products changed" (Under "Operations Monitoring", "Run Quickcode"). This internally marks all products as changed when executed. If this is done at 9pm, then incremental price detection will see the product/price change and detect it
- Websites often have a "refresh all" option. These options are always needed when using incremental update methods to handle errors and provide a human "do it now"
Changes to Fieldpine
We strive to make pricing easy for websites, but it can get very complex quickly. While websites can request all future pricing rules and apply them directly, this is not a trivial amount of logic, and is required to consider other attributes on pricing rules if they are applying them (eg must hold voucher XYZ to get pricemap price)
There are some things we can do to assist websites without overburdening them. We will be adding these shortly to the code. Some of these overlap so website developers can select which suits their requirements
- We will automatically mark a product as "changed" when pricemaps become active/inactive. This will insure that incremental polling will receive the pricing
change.
For most retailers, this will solve the problem and you simply need to start special pricing at whatever interval incremental polling is done at. For example, if your website polls every 5 minutes, then start your specials at 8:55 to ensure they are definitely changed at 9pm - We will put a new field on each product "Pricing Changing at" containing the date/time the next scheduled price change is due to be applied. Web site developers can use this is a signal to refetch the product on/after that time.
- We can fire webhooks when pricing is changed. This will be expanded to include pricemaps changing status.
Other Notes
If you are advertising a sale "starting at 9pm" then you need to be sure that pricing is correct on your website at 9pm, this is especially true if you are in a country run by lawyers. Any technique that has Fieldpine detect and send the pricing at 9pm will leave a window where prices are not valid until shortly after 9pm. If this is critical to you then some options are
- Set the pricing to start shortly before 9pm. This ensures it is transferred slightly before the advertised time
- The website can request advance pricing if they wish. This means they can be aware of the price change and take action. This is perhaps not a trivial amount of logic to implement in your eCommerce site, so we don't recommend this for most retailers.
- Have the website use the "price changing at" field on the product to detect that pricing is stale and request updated pricing as required.
- Have the website utilise Fieldpine pricing APIs rather than pricing locally. This means most pricing is undertaken using Fieldpine servers and is always time correct.