Minimum Price Logic

Business Case: Handle minimum charges

One of the things we do is treat customer material and return it back to the customer.

Challenges:

  • Partial Shipments:
    We receive thousands of parts (fasteners so weigh-counted) that come in customer containers. We may ship three containers on one day and invoice then ship the remaining containers the next day.

  • Final quantity not known until the last container
    Customer may have said they sent X parts but actually sent Y parts which was less than quoted. This may change the price based on quantity breaks.

Reading the GL Transaction Thread, I wondered if there might be a way to auto-generate a Misc Charge to bring the total invoice value (when the Sales Order is marked Complete) to the minimum charge. We could also evaluate the total to see to reprice at a lower quantity break. We recognize revenue by product group and division so I’d hate to create 11 X 17 (and changing) Misc Expense codes since there is no Dept rule on the GL Code for the Misc. Charges.

Is this a place for Posting Rules? Or better ideas…

Thanks!

So what your saying is that you want to raise a sort of final settlement invoice that adjusts the sum (up or down) based on the previous invoices sent?

1 Like

Open to any and all ideas. I’d like to “settle up” when the order is marked complete/closed. So on the final invoice and not necessarily an extra one but I can’t be choosy.

Should we assume any qty-based repricing never decreases the price? (so we can stick to adding Misc Charges and avoid messing with discounting)

Unless there’s some built-in Epicor functionality I’m forgetting about, I think you probably need some kind of process or user-input trigger to indicate when a particular Customer Shipment is the “final shipment” (since it seems you can’t go by when the full order qty is shipped, if you’re shipping less qty than expected in these scenarios).

Once you have that trigger defined, you could fire a BPM somewhere on the CustShip BO that adds your “Price Adjustment Misc Charge” to either the Shipment itself or back on the SO (where you’d set the misc charge frequency code to “Last” and try to get it to flow “naturally” into the shipment being processed - which could get messy). I imagine the BPM needs to reference some kind of data lookup table (maybe User Codes) that stores minimum charge info (unless your Price Lists already have all the info you need). And maybe you want it to also close the Sales Order, since it was going to be stuck as open due to “undershipping”.

And while all that’s happening, if the BPM can also determine the Product Groups at play (and hence what the revenue credit GL should be), then you can write something to the Misc Charge (on a UD field, I suppose) so that a simple Posting Rules mod can push the Misc Charge credit to the correct GL. Posting Rules might be able to handle it without the BPM’s help, but I’d guess it’s a lot easier to do the heavy lifting in a BPM than in posting rules…

If you don’t like the whole “final shipment” trigger idea (maybe you prefer not to put this process in your shippers’ hands), I think you’re looking at a process where someone is manually reviewing the SO after the fact, marks it “complete/closed”, which triggers a SalesOrder BO BPM to do all the Misc Charge stuff. But then I think you’d be sending an extra invoice for just the misc charge, not getting it on that final shipment invoice.

1 Like

Yes, let’s assume that. It happens so rarely that issuing a Credit Memo is appropriate.

We do prompt (BPM Form) the shipping clerk who is actually the most in the know on whether or not the order is complete.

Indeed!

It’s a combination of the product group and the plant (i.e. Dept segment) that we need to get to the proper G/L.

What we’re doing today is we created a Minimum Charge part number and the price is there. It gets shipped on the last shipment, so it’s kind of manual too. It has some drawbacks:

  • We may forget to add it to the order.
  • We may forget to ship it.
  • The revenue to the G/L is correct but a review of the part number shows revenue on the Minimum Charge part and not the actual part. The quantity is correct however.
  • We can have zero invoiced shipments that span a fiscal period which is not following revenue recognition rules.

Just thinking out loud to see how to improve it without making it too complicated. :wink:

Cool. So I think your BPM form is the natural trigger if you decide that an automation is even worth it.

With the Minimum Charge part number, I know the Division (site/plant) segment would go to the correct GL based on the shipping site (which doesn’t happen for Misc Charges), but how do you get the Department segment right without having separate part numbers for each product-group possibility?

If you do a Misc Charge automation with a posting rules mod I think you can get your correct Division segment without a ton of difficulty by looking at the shipping site, but I’m not sure if you can reach into the shipment lines in a posting rule to get your product-group based Department segment… I’m very much an amateur at posting rules though so I tend to use BPMs writing to UD fields as crutches to make them easier if I need to :slight_smile:

1 Like

We manually select the product group on the order line (actually a BPM will default to the product group of the previous line) so that works and the dept can be chosen by plant in the GL Control. The accounting works. It’s just brittle and breaks part sales reporting.

I’m a wimp at Posting Rules. I should play with them in Test but formally working at a public company, I get a twitch thinking about it. :thinking:

@Mark_Wonsil Posting Rules have come a long way. They are not your Dad’s rules anymore. :slight_smile: The regular rule runs first, then the custom. We have one on Misc Charges that uses a Lookup table and that would work for this, but you would have to update as product groups were added. I tweaked it to the below that I think would work if I am following where the department comes from.

Greg

3 Likes