Fluent Commerce Logo
Docs
Sign In

Enabling Batch Pre-Processing

How-to Guide

Author:

Fluent Commerce staff

Changed on:

30 June 2024

Key Points

  • Batch Pre-Processing occurs before batch inventory updates reach the inventory workflows. This means if you have any configurations within the workflows that rely on every update reaching the workflow, it is best to turn off Batch Pre-Processing
  • Batch Pre-Processing can be enabled at an ACCOUNT and RETAILER context level.
    • If enabled at an ACCOUNT level, every retailer under that ACCOUNT will have their batch inventory updates pre-processed
    • If enabled at RETAILER levels, it will only pre-process updates for that specific retailer
    • The RETAILER context setting overrides the ACCOUNT context setting. This allows you to enable for the whole account and disable for specific retailers

Steps

Setting up Batch Pre-Processing

Step arrow right iconWorkflow Comparison

To ensure that Batch Pre-Processing works correctly and won’t impact your inventory accuracy, the first step is to ensure your inventory workflows are compatible with Batch Pre-Processing.

Batch Pre-Processing is based on the logic within the inventory module. This diagram details the high-level view of the logic.

No alt provided
Signs of a compatible workflow
  • It uses the inventory module reference workflow and reference plugin
  • The types of transient quantities are in line with the standard examples
  • There’s no customisation in the first few rulesets (specifically between InventoryChanged and NotifyVirtualCatalogues)
    • CheckOnHandChanged is a key ruleset to compare logic
Signs of an incompatible workflow
  • The workflow executes logic on unchanged inventory records
  • Usage of new and custom transient quantity types
  • Custom rules and custom rulesets within the Inventory workflow

Step arrow right iconEnable required setting

To enable Batch Pre-Processing, you must ensure the setting

`fc.enable.batch.preprocessing`
has been set to TRUE at your desired context level (account or retailer).

Once the setting is updated, within 5 minutes (the setting cache refresh time), all batch inventory updates will go through Batch Pre-Processing before reaching the inventory workflows.

Step arrow right iconPost enablement analysis

Due to the way Batch Pre-Processing works, it is most efficient with large amounts of updates and a significant unchanged rate. Through our Metrics API we provide metrics to track the total number of batch items processed and the ratio of unchanged items.

Desired volumes

For the total amount of batch inventory updates, you should be aiming for the following:

  • At least 1 million total per day
  • Grouped in batches of at least 100,000

For the unchanged rate of batch inventory updates, you should be aiming for the following:

  • Ideally, the unchanged rate should be greater than 50%
    • Once the unchanged rate falls below 50% (the majority of submitted changes are considered updates), Batch Pre-Processing loses its efficiency gains vs batch inventory updates going straight into workflows
    • Most retailers have an unchanged rate of greater than 80%
Using the Metrics API to analyse
Finding total amount

The metric to use here is bpp_records_processed_total. This will return the total count of all batch inventory updates processed through Batch Pre-Processing for the given time period

Find the unchanged rate

This will use an additional metric. To calculate the unchanged rate you will want to divide the total unchanged records by the total records. The metric for unchanged records is bpp_records_unchanged_total.

E.g. (bpp_records_unchanged_total / bpp_records_processed_total)

Fluent Commerce staff

Fluent Commerce staff

Copyright © 2024 Fluent Retail Pty Ltd (trading as Fluent Commerce). All rights reserved. No materials on this docs.fluentcommerce.com site may be used in any way and/or for any purpose without prior written authorisation from Fluent Commerce. Current customers and partners shall use these materials strictly in accordance with the terms and conditions of their written agreements with Fluent Commerce or its affiliates.

Fluent Logo