Traditional retail statement posting (what D365 now calls legacy posting) does a ton of different things all at once. Without going into the details, you can read a synopsis of how legacy statement posting works in my previous blog post that can be found here.
As of version 10.0.5 (this is an older feature now), a new style of statement posting was introduced. This statement posting functionality took the complaints about the speed of posting statements at the end of the day and turned it on its head. In this blog I'll talk about the functionality better known as trickle feed statement posting, or just trickle feed.
In legacy statements, the only way to reserve inventory properly throughout the day would be the run the P-0001 job very frequently, then run an inventory posting job that would put temporary reservations on inventory transactions against the retail sales transaction table. These would be soft reservations, but they would do very little in terms of stopping the inventory from being decremented. This led to problems where at the time of sale throughout the day, inventory may have been available. However, at the end of the day when all transactions would need to be reconciled, companies were getting inventory errors because another channel had already taken the available inventory.
Statement Types
Trickle feed solves the inventory issue by separating statement posting into 2 different types of statements: Transactional and Financial.
In a transactional statement, the following occurs:
Sales orders are created
Sales orders are invoiced
Inventory is deducted based on invoiced sales order quantities
The need to run an inventory reservation job becomes moot once these transactional statements are run (and they should be run frequently throughout the day) because the sales orders that are created will do this for us.
Financial statements, on the other hand, do exactly as their name implies. They create and settle the financial side of a store. From a transactional perspective, this can be looked at as follows:
Create and post a payment journal
Settle the payment journal against the appropriate invoice from the transactional statement postings
Reconcile store financials for End-of-Day processing (such as bank drops for cash and check)
Why Trickle Feed?
Many people and most of my projects ask why we would use (or not use) trickle feed, and my answer is it depends on the project and the type or retail store we're working with. My best advice for this is always do what the client wants, but from a best practice perspective it depends on the velocity of transactions happening throughout the day in the stores for the company.
For example, if low dollar, high transaction count companies need to be able to see accurate inventory and do not want an extremely long end of day statement posting process, it would be best for them to move to the trickle feed statement style. This way, inventory can be up to date more often than if we waited until the end of the day.
On the other hand, if a company either doesn't keep stock in their store (think direct delivery or make-to-order retailers), or there is a low number of transactions throughout the day (this tends to be with high dollar value retailers), there is less of a need to worry about the amount of inventory we have on hand. Thus, it would be alright for stores to stay on the legacy retail statement posting process.
Summary
At the end of the day, the legacy statement posting and trickle feed statement posting processes will result in a closed store financially and physically. Depending on the business needs you can decide which is best.
Please make this decision at the beginning of the project, because it is extremely inconvenient to switch mid-way through. It is possible, but I would not recommend it.
Thanks for reading, and I look forward to writing for you again in the near future. As always, if there are any questions, please feel free to reach out to me!
Comments