Auto Charges, One Brain: How D365 Picks a Winner When Rules Overlap
- Beau Schwieso
- Aug 18
- 3 min read
This is a sequel to my earlier post on Auto Charges vs Manual Adjustments in D365 F&O.
This time we go inside the rules engine itself.

Dad joke warm-up:
I'm so proud of my daughter, she's taken to reading a lot recently but she's always losing her place, she asked me for a book mark and I started bawling.
Can't believe she still doesn't know my name is Beau.
Why this post exists
You already know the difference between auto and manual charges. The real pain starts when two or more auto charge rules match at the same time. Teams expect a single winner. D365 often stacks them. That is how you get double freight, mystery COGS, or angry auditors. Let’s fix that.
The mental model: Filter → Match → Stack
Auto charges do three things in order.
Filter based on scope and conditions. Examples: Header or Line. Account code scope like Customer, Customer Group, All. Item scope like Item, Item Group, All. Optional Mode of delivery, Site, Warehouse, currency, validity dates, amount thresholds.
Match the document or line.
Stack or stay single based on your design. Auto charges are not a first-match engine. Overlapping rules frequently accumulate, especially at Header. Use compounding and the Re-search on posting toggle deliberately.
Key levers you must set with intent
Charge codes decide accounting. Item vs Ledger vs Customer or Vendor determines capitalization or P&L.
Header vs Line controls whether purchase charges can be pushed into inventory.
Re-search on posting can reapply header charges at confirm or post. Great when totals change. Dangerous when you do not expect it.
Two costly myths
Myth: Table beats Group beats All.
Truth: That priority is for pricing with find next. Auto charges can apply multiple matching rules. If you want a single winner, design for mutual exclusivity.
Myth: Header charges always hit inventory.
Truth: On POs they do not until you allocate header charges to lines. No allocation means no capitalization.
Five clash tests you can run in a sandbox
Each test takes five minutes and gives you a clean audit trail. Use Sales orders for outbound and Purchase orders for inbound where noted.
1) Vendor Table + Vendor All on the same line
Setup: Two line rules for the same vendor. One scoped to Item A. One scoped to All items. What happens? Both can apply and stack.
How to control it: Tighten filters or split delivery charge groups so only one rule ever matches.
Audit: Line > Charges > Maintain charges, then post and read the voucher.
2) Header fixed + header percent with Compounding
Setup: Two header rules. Freight = Fixed 100. Handling = Percent 2 with Compound = Yes. Turn on Re-search on posting.
What happens? Totals re-calculate at confirm or invoice. The percent considers other header charges when Compounding is on.
Audit: Totals window before and after confirmation. Voucher on invoice.
3) Thresholds by order value
Setup: Header rule with From amount 500 and To amount 1000.
What happens? Fires only when the order total is inside the range. If users change amounts later, trigger recalculation or re-search.
Audit: Totals, then confirm and post. Compare vouchers for in-range vs out-of-range.
4) Purchase header freight allocated to lines
Setup: Add header freight to a PO, then use Allocate charges to order lines.
What happens? Header charge disappears and values move to lines. Inventory absorbs the cost.
Audit: Product receipt and invoice vouchers show capitalization to Item.
5) Posting sanity: prove where dollars land
Setup: Two charge codes.
FREIGHT_IN Debit = Item, Credit = Ledger.
HANDLING Debit = Ledger, Credit = Vendor or Customer as policy dictates. Receive or invoice. You can see exactly what is capitalized vs expensed vs AP or AR. Audit: Voucher plus Charges > Maintain charges screenshots.
Freight patterns that do not bite you later
Retail and parcel ecommerce
Header fuel surcharge fixed amount. Filter by Mode of delivery.
Optional Handling percent with Compound = No unless the percent must include other header charges.
If you run Commerce, prefer the advanced auto charges capability so POS and online obey channel-specific rules without manual overrides.
B2B distribution
Avoid overlapping “All items + Mode” with “Item group + same Mode.” If both match, they stack.
Split delivery charge groups by physical profile like PARCEL vs LTL. Document ownership and thresholds.
Global inbound logistics
Use Landed Cost for voyages, containers, and multi-leg freight. Classic auto charges are fine for simple cases. Landed Cost is better for real-world imports.
Forward-looking tweaks worth planning
Units of measure at line charges let you express per-carton or per-pallet fees without rounding games. Use it when the commercial team talks in logistics units, not pieces.
Advanced auto charges in Commerce keep store, online, and call center rules clean without overrides.
Landed Cost Auto costs handle voyage and container-level accruals and clear them correctly at receipt and invoice.
Charge smart, not hard.
DynamicsDad