Power BI Copilot’s Bill Isn’t a License. It’s Fabric Copilot Capacity You Share.

IT and finance leaders reviewing an enterprise Fabric capacity billing dashboard for Power BI Copilot usage

A CFO at a manufacturing group running Dynamics 365 Finance and Supply Chain recently signed off on an F64 Fabric capacity so the FP&A team could start using Power BI Copilot to draft variance commentary and summarize demand forecasts. Three weeks later, an IT director flagged something the approval memo never mentioned: two hundred report viewers across the business no longer needed Power BI Pro licenses at all. That wasn’t a bug or a surprise discount. It was a separate Fabric licensing rule that happens to kick in at the exact same capacity size Copilot is often recommended for, and the two get conflated constantly in vendor pitches and budget spreadsheets alike.

That conflation is the real problem for anyone trying to budget a Power BI Copilot rollout against a Dynamics 365 reporting program. Copilot in Power BI is not a per-seat add-on the way Microsoft 365 Copilot is. It is billed against Fabric capacity consumption, measured in capacity units, and organizations can even designate a specific Fabric Copilot capacity purely to centralize that billing. Whichever capacity ends up holding that designation is shared with every other Fabric workload your organization runs on it. Getting the cost model wrong in either direction, assuming it is included in your existing Pro licenses, or assuming it behaves like a fixed monthly fee, leads to budget requests that are either laughably low or defensively padded past what the workload actually needs.

IT and finance leaders reviewing an enterprise Fabric capacity billing dashboard for Power BI Copilot usage

What Copilot Actually Consumes, and Why the Rate Card Looks Strange

Microsoft’s own Fabric documentation describes Copilot consumption in capacity unit seconds, priced per 1,000 tokens, and the input and output rates are not the same. Input prompt tokens consume 100 CU seconds per 1,000 tokens, cached input tokens (system instructions, schema context, and conversation history that Fabric automatically caches without any configuration) consume only 10 CU seconds per 1,000 tokens, and output tokens, the actual generated text, consume 400 CU seconds per 1,000 tokens. That four-to-one gap between input and output pricing matters in practice: a Copilot-generated narrative summary of a Dynamics 365 SCM inventory report produces far more output tokens than the prompt that requested it, so output pricing dominates the bill.

Take a request with 2,000 input tokens and 500 output tokens, a reasonably typical size for a Copilot-drafted commentary on a Power BI report built over Dataverse or F&O entity data. The math works out to (2,000 × 100 + 500 × 400) ÷ 1,000, which is 400 CU seconds, or roughly 6.67 CU minutes. On its own that number means nothing to a finance leader. What it means in context is the second thing worth understanding: how that consumption gets classified against your capacity.

Background Job Smoothing Changes the Real Exhaustion Risk

Microsoft classifies Copilot operations as background jobs rather than interactive ones, and background jobs get smoothed over a 24-hour window instead of the 5-minute window used for interactive report rendering. Throttling only begins once the capacity has already committed all of its available CU budget for the next 10 minutes. Microsoft’s own documentation walks through this with an F64 example: an F64 SKU carries 64 × 24, or 1,536, CU hours in a single day. A single Copilot request consuming roughly 6.67 CU minutes works out to about 0.11 CU hours, which means an F64 capacity could theoretically absorb well over 13,000 such requests before exhaustion, assuming nothing else on that capacity is consuming CU budget at the same time.

That last clause is where the real governance risk sits, and it’s a genuinely different risk than “Copilot is expensive.” When capacity is exhausted, Microsoft’s documentation is direct about the consequence: all operations shut down, not just Copilot. If your Dynamics 365 reporting workspace, your dataflows, your semantic model refreshes, and your Copilot usage all live on the same Fabric capacity, and a finance analyst runs an unusually large batch of Copilot-assisted narrative generation during month-end close, everyone else’s scheduled refreshes and interactive reports can stall on that same capacity at the same time. This is an argument for isolating Copilot consumption onto its own designated capacity rather than an argument against adopting it at all, and Microsoft built a specific mechanism for exactly that.

Financial analyst working at a dual-monitor desk with Power BI analytics dashboards

The Fabric Copilot Capacity Designation Is Not the Same Thing as F64

Since April 2025, Microsoft has allowed organizations to designate any capacity of F2 or larger, not just F64 and above as originally required at the January 2025 preview launch, as a dedicated “Fabric Copilot capacity.” A Fabric admin enables Copilot for the organization, authorizes a capacity admin to make that designation, and the capacity admin then assigns user groups whose Copilot usage should bill there instead of wherever their content happens to be hosted. Once that’s done, no further action is needed. Users assigned this way can be on Pro, PPU, Trial, Premium capacity, or Fabric capacity license modes, though Embedded is explicitly not supported.

This solves a specific budgeting problem: without it, Copilot costs get spread across whatever capacity holds each user’s content, which makes centralized cost tracking nearly impossible for an IT Director trying to build a clean Copilot line item. With a designated Copilot capacity, every dollar of Copilot consumption lands in one place on the bill, separate from your Dynamics 365 reporting workspace’s own capacity consumption for refreshes and interactive use. Worth noting for architects planning this out: Fabric Copilot on other workloads (Data Factory, Data Engineering, Data Warehouse, Data Science, Real-Time Intelligence, and Activator) is only available on capacities smaller than F64, while Power BI Copilot specifically remains available regardless of capacity size. If your organization runs Copilot across multiple Fabric experiences, not just Power BI, that asymmetry affects which capacity size you actually want for the designation.

Why the F64 Threshold Gets Conflated With Copilot Pricing, and Why That Matters for Your Budget

Separately from anything Copilot-related, Microsoft’s Fabric licensing model has long included a straightforward rule: on any F SKU smaller than F64, every person viewing Power BI content needs a Pro, PPU, or individual trial license. At F64 or larger, a user with only a free Fabric license can view content, provided they hold a viewer role on the workspace. This rule exists independent of Copilot and predates Copilot’s current billing model by a wide margin. It’s an artifact of how Microsoft licenses Power BI content consumption at scale, not a Copilot feature.

The reason this matters for a CFO’s budget conversation is that vendors and consultants routinely present F64 as “the tier where Copilot gets cheap,” when the more accurate framing is that F64 is where per-viewer Pro licensing gets cheap, and Copilot’s own cost is a completely separate, consumption-based line that scales with usage regardless of which SKU size you land on. An organization with two hundred report viewers and modest Copilot usage might genuinely benefit from an F64 capacity purely for the license consolidation, independent of whether Copilot ever gets turned on. An organization with heavy Copilot usage across a small number of power users, finance analysts drafting narrative variance reports all day, might be better served by a smaller designated Copilot capacity and leaving Pro licensing exactly where it is. These are two different decisions being made to look like one decision, and separating them is the actual budgeting exercise.

What This Means for a Dynamics 365 Reporting Rollout

For an IT Director or CFO evaluating Power BI Copilot against Dynamics 365 Finance, Supply Chain, or Customer Engagement reporting, start by quantifying how many people will actually draft Copilot-assisted narratives, distinct from how many simply view the resulting reports, since those two populations drive different cost levers entirely. From there, model consumption using the token rates above against your actual reporting cadence rather than a vendor’s generic estimate, since output-heavy use cases like automated commentary generation consume capacity differently than short, targeted Q&A against a semantic model. Finally, decide separately whether an F64-or-larger capacity makes sense for license consolidation, and treat that as independent from whichever capacity you designate for Copilot billing.

Fabric’s list pricing follows the capacity unit count linearly, so an F64 capacity costs roughly thirty-two times an F2 capacity’s pay-as-you-go rate, and Microsoft’s own reservation pricing page states that a one- or three-year commitment can reduce that rate by roughly 41 percent compared to pay-as-you-go. Given how directly usage scales with cost here, that reservation discount is worth pricing into any multi-quarter Copilot rollout plan rather than treating it as an afterthought once the pilot succeeds.

None of this makes Power BI Copilot a bad investment for a Dynamics 365 reporting program. It makes it a capacity planning exercise with its own governance questions, closer to provisioning compute than provisioning software seats. Organizations that treat it as the latter tend to either under-budget it or, more commonly, over-provision a capacity size for reasons that had nothing to do with Copilot in the first place. It’s the kind of distinction our team at Routeget Technologies walks clients through before a single dollar of Fabric capacity gets provisioned, since separating the licensing decision from the consumption decision up front is what keeps a Copilot rollout from turning into an unplanned line item six months later.


#PowerBICopilot #FabricCapacity #CopilotCostGovernance #DynamicsFinanceOps #EnterpriseAI #FinanceTransformation

Business Central Expense Management Reaches GA in October. The License-Free Path Isn’t Actually Free.

Finance director reviewing an expense report approval dashboard in a modern office

If your Concur or Expensify renewal is sitting in front of your CFO this quarter, the timing is inconvenient. Microsoft is about to ship native Business Central expense management, a module inside Dynamics 365 Business Central that had been dismissed by practitioners as a minor, checkbox-only feature when it first appeared on the 2026 release wave 1 plan back in April. It no longer looks minor. Between the original release plan entry and the general availability date now set for October 2026, Microsoft quietly attached an AI-driven Expense Agent to the module that covers most of the ground people assumed only a dedicated T&E platform could handle: receipt scanning, mobile capture, email submission, mileage calculation, and policy compliance checks that flag violations before an expense report ever reaches a manager. For an IT Director or finance leader weighing whether to sign another year of a third-party contract, that changes the question from “does Business Central do expenses now” to “is it ready enough to consolidate onto, and what will it actually cost.”

Finance director reviewing an expense report approval dashboard in a modern office

What changed since Business Central expense management was first announced

When Business Central’s expense reports feature first showed up on the release plan, at least one well-known practitioner in the ecosystem publicly predicted it would fall flat. His reasoning was straightforward: without receipt capture, mobile submission, or corporate card integration, a native module was never going to pull organizations away from Concur or Expensify, tools built around exactly those capabilities. That skepticism was reasonable at the time, because the initial description of the feature read like a manual, form-based expense report tool bolted onto the general ledger.

What shipped alongside it in preview is a different story. The Expense Agent, which Microsoft documents as a production-ready preview feature, performs the parts of the workflow that used to require a third-party app: it reads a receipt image or PDF, extracts merchant, amount, date, and category, calculates mileage reimbursement against a configured company rate, and groups related expenses into a report automatically. Submission works through a dedicated web app, a mobile app with camera capture and offline support, direct email to an organization’s expense mailbox, or a Copilot chat interface inside Microsoft Teams. None of that requires opening Business Central at all. What Microsoft’s current documentation does not describe, at least not yet, is automatic reconciliation against corporate card statement feeds, a feature dedicated expense platforms have offered for a decade and that larger organizations in particular tend to depend on. That gap is worth watching, not dismissing; it may simply not have been documented yet ahead of GA.

The workflow, and who actually needs a Business Central license

The module organizes expenses through a status flow that will look familiar to anyone who has used a modern expense tool: Open, Pending Approval, Released, Approved, Rejected, Processed for Payment, and Completed. An employee can enter mileage, add participants to a shared expense, itemize a single receipt into multiple categories, or split a hotel bill into refundable and non-refundable lines when part of it (the minibar, say) falls outside policy. A manager reviews and approves or rejects from within that same flow, and an accountant posts approved reports to generate Expense Ledger Entries and drive reimbursement, with posting accounts controlled through Expense Categories and Expense Posting Groups an administrator sets up in advance.

Employee capturing a paper receipt with a smartphone for expense report submission

The detail that deserves the most attention from a finance leader is licensing, because it does not follow the pattern most Business Central features do. An employee who only submits expenses, whether through the web app, email, or the Copilot chat interface, does not need a Business Central license at all. That sounds like a straightforward cost win until you read the next line: that access method draws on Copilot Credits instead. Anyone who needs to open Business Central itself to manage or approve reports needs at minimum a Team Member license, and posting the reports and processing payment requires Essentials or Premium. So the module has effectively three separate cost levers rather than one: a consumption-based charge for expense-only submitters routed through Copilot Credits, a per-user subscription cost for anyone touching the module inside Business Central proper, and the underlying Essentials or Premium tier required to post anything at all. None of that is disclosed as a flat number in Microsoft’s documentation, which does not publish a specific Copilot Credit consumption rate for expense processing the way it has for some AI Builder scenarios.

Why that licensing structure matters more than the feature list

A CFO comparing this against a Concur or Expensify renewal is not just comparing feature checklists. They are comparing a predictable per-seat SaaS cost against a hybrid model where the cost of casual expense submitters scales with Copilot Credit consumption, a metric most finance teams have no historical baseline for. An organization with 40 people who occasionally submit an expense report and five people in finance who approve and post them will have a very different cost profile than one with 400 field employees submitting receipts weekly through the mobile app, even though both fit inside the same license categories. Before treating this as a straight replacement decision, it is worth actually modeling that consumption, not estimating it, because Copilot Credits behave differently from a fixed per-user fee and can move with usage in ways a traditional T&E contract does not.

There is also a timing consideration that is easy to overlook. As of this writing, the module and its Expense Agent are still labeled a production-ready preview, meaning Microsoft considers it stable enough to run in production but reserves the right to change it, and it operates under supplemental preview terms of use rather than Business Central’s standard product terms. October 2026 is the stated general availability date, but Microsoft’s own release plan documentation carries the standard disclaimer that projected functionality and delivery timelines may change. Organizations with a Concur or Expensify contract expiring in the next renewal cycle should treat October as a target to validate against, not a date to build a migration plan around before it actually happens.

What to do before the next contract renewal

The practical path for a finance or IT leader facing this decision now is a short, deliberate evaluation rather than an early commitment in either direction. Set up the module in a sandbox environment, route a real slice of a month’s expense volume through the Expense Agent’s mobile and email submission paths, and track how many receipts require manual correction after the AI extraction step, since the documentation itself notes that users should expect to review and correct results rather than trust them blindly. In parallel, ask your Business Central partner or internal admin to estimate Copilot Credit consumption against your actual expense submission volume, not a generic average, since that number is the one piece of this decision Microsoft has left for each organization to work out on its own. If your current Concur or Expensify agreement has a shorter renewal term available, or a month-to-month bridge option, that flexibility is worth paying for this cycle specifically so the decision isn’t forced before GA lands and the Copilot Credit math has a real quarter of data behind it.

None of this means the module isn’t a legitimate option. For organizations with straightforward expense policies, modest transaction volume, and no dependency on corporate card feed reconciliation, native Expense Management removes a genuine integration cost and keeps expense data inside the same ledger as everything else. Routeget Technologies has walked several Business Central clients through exactly this kind of licensing and consumption modeling ahead of a platform consolidation decision, and the pattern holds: the module’s capability gap has closed faster than the ecosystem expected, but the cost model needs its own diligence before it replaces a contract that already works.


#BusinessCentral #ExpenseManagement #ERPLicensing #CopilotCredits #FinanceTransformation #SMBERP #DynamicsBusinessCentral

Business Central Accelerated Depreciation Reaches GA. The Real Decision Isn’t in the Setup Screen.

Finance office desk with a laptop, binders, and a plant, representing fixed asset depreciation recordkeeping

A controller at a mid-market manufacturer with a French subsidiary spends part of every quarter close doing something Business Central was never quite built to do natively outside that one country: running two depreciation schedules for the same fixed assets. One follows straight-line depreciation for consolidated financial reporting. The other follows an accelerated, tax-driven method required by local law, applied through a coefficient that increases with the asset’s useful life. The two schedules rarely agree, and reconciling the gap between them, quarter after quarter, in a spreadsheet that lives outside the ERP, is exactly the kind of manual process that turns a routine close into a source of quiet risk.

That gap is what Microsoft is closing with Business Central accelerated depreciation, a new capability that makes accelerated depreciation methods for fixed assets standard, general-purpose functionality rather than a country-specific add-on. The feature entered public preview on June 5, 2026, and Microsoft’s release plan lists general availability for October 2026, putting it in the same wave as several other core financial management updates, including new handling for withholding taxes and vendor-specific numbering for self-billing invoices. For finance leaders at Business Central customers with international operations, particularly anyone with entities subject to accelerated or declining-balance tax depreciation requirements, this is worth planning for now rather than discovering after the fact.

Finance office desk with a laptop, binders, and a plant, representing fixed asset depreciation recordkeeping

How Business Central Accelerated Depreciation Works

Business Central has supported multiple depreciation methods for years, including declining-balance calculations. What’s new is not a depreciation method in isolation, but a mechanism for running two depreciation views of the same asset side by side and automatically tracking the difference between them. Setup happens in two places. A depreciation book is configured to use an accelerated depreciation method, and the fixed asset card itself is where the acceleration coefficient and related settings get entered. From there, Business Central calculates the accelerated depreciation amount, the equivalent straight-line amount for the same period, and the variance between the two, posting all three to the appropriate general ledger accounts without any custom extension in the mix.

This will look familiar to anyone who has worked with Business Central’s existing France localization, where a very similar pattern already exists to satisfy French tax law: companies above certain size thresholds must track the difference between accounting depreciation and a faster tax depreciation schedule, using what the system calls a derogatory posting structure, with the variance flowing to dedicated derogatory accounts. The mechanics described for this new, generalized feature (an acceleration coefficient, an automatically calculated linear equivalent, a tracked variance, and inquiry pages showing annual depreciation, variance, and remaining book value) map closely onto that existing model. Whether or not the underlying code is literally shared, the design clearly draws from a pattern Microsoft already had working and tested in one jurisdiction, and is now making available as base functionality rather than something scoped to a single country’s localization pack.

That distinction matters for anyone evaluating this outside France. A business in the United States, India, or the UK, for instance, doesn’t operate under the same statutory requirement to track a tax-accelerated depreciation variance the way French entities do. But plenty of these organizations still want the option: a US subsidiary with MACRS-based tax depreciation running alongside GAAP book depreciation, or a private company that simply wants to accelerate cost recovery for internal planning purposes while keeping a clean straight-line view for lenders or investors, are both scenarios this feature could serve without anyone needing to install a country pack that assumes French tax law.

Abstract illustration of two diverging depreciation curves converging into a single reconciled sphere

The Business Case, in Concrete Terms

The immediate value is not abstract. Today, a company that wants to run accelerated depreciation alongside standard book depreciation, without the France localization applying, typically does it in a spreadsheet, in a bolt-on tax fixed-asset tool, or by approximating it through manual journal entries. Each of those approaches introduces the same three problems: someone has to remember to update the calculation every period, the numbers live outside the system of record, and reconciling the two views at close consumes hours that could go toward analysis instead of arithmetic. Native support inside Business Central removes the reconciliation step almost entirely, because the accelerated amount, the linear equivalent, and the variance are all calculated and posted automatically as part of the standard depreciation run.

There’s a second, less obvious benefit for organizations weighing platform decisions. Companies migrating off legacy systems such as Dynamics GP or NAV, or evaluating Business Central against alternative ERPs during a broader Dynamics 365 implementation, often assume that anything resembling statutory dual-book depreciation requires a heavier, F&O-tier platform or a bolt-on fixed-asset module. A capability like this narrows that gap, and it’s a reasonable data point for IT directors and finance leaders building the business case for a Business Central consulting engagement rather than a more expensive alternative.

What Finance Leaders Should Decide Before Turning It On

The setup itself, a depreciation book configuration plus a coefficient on the asset card, is not the hard part. The hard part is the policy decision that has to happen first, and it belongs with the CFO and controller, not with whoever configures the system.

The first question is which assets actually warrant an accelerated view, and why. If there’s no statutory requirement driving it, the acceleration coefficient becomes a matter of internal accounting policy, and that policy should be documented and applied consistently rather than set asset by asset based on whoever happens to be entering the fixed asset card that week. The second question, and arguably the more consequential one for finance teams that haven’t dealt with dual-book depreciation before, is what the tax-versus-book variance actually represents on the balance sheet. In jurisdictions where accelerated tax depreciation legitimately exceeds book depreciation, that gap is typically the source of a deferred tax liability, and finance teams new to running parallel schedules should loop in their tax advisor or external auditor before the first variance posts, not after it shows up in a quarterly review with no clear explanation.

Third, this is a case where the preview window is genuinely useful rather than a formality. With public preview available since June and general availability not expected until October, there’s real time to configure this in a sandbox environment, run it against a representative sample of fixed assets, and confirm the inquiry pages produce numbers that match what a manual parallel calculation would show, before it touches production data. Given how much else is shipping in the same core financial management wave, including changes to withholding tax handling that could interact with the same vendor and asset records, a sandbox validation pass is worth the time even for teams that don’t consider themselves early adopters.

Finally, IT and finance should jointly confirm whether this actually reduces total license or tooling cost. If a bolt-on fixed-asset or tax depreciation tool is currently in use specifically to solve this problem, this feature is a legitimate reason to reevaluate that contract, but only after the sandbox testing confirms the native functionality produces defensible, audit-ready numbers on its own.

None of this makes accelerated depreciation a feature every Business Central customer needs to touch. Most domestic, single-entity businesses running straight-line depreciation for both book and tax purposes will have no reason to configure it at all. But for finance teams already juggling a manual reconciliation between two depreciation views, whether because of a French entity, a multinational tax position, or an internal policy choice, this closes a gap that has existed in Business Central’s core financial management module for a long time. Routeget Technologies has walked clients through comparable dual-book depreciation setups during Business Central and legacy ERP migrations, and the pattern holds regardless of which system is involved: the software can automate the calculation, but only the finance function that owns the underlying accounting policy can decide what that calculation should actually produce.


#BusinessCentral #FixedAssetDepreciation #TaxBookReconciliation #FinanceTransformation #ERPTaxCompliance #ERPModernization

Dynamics 365’s Tax Data Migration Tool: What Actually Gets Automated

Enterprise IT consultant reviewing tax configuration data on a monitor, representing Dynamics 365 tax data migration review

A solution architect I’ll call by his actual role, not his name, spent three weeks last spring rebuilding tax configuration for a distributor operating across six US states and two Canadian provinces. The client had outgrown the standard sales tax engine years earlier but never had a project sponsor willing to fund the rework. Every tax code, every group, every item tax group had to be re-created by hand in the newer Tax Calculation service, cross-checked against the original ledger parameters, and validated transaction by transaction. It was the kind of work nobody budgets enough time for, because on paper it looks like data entry, and it is exactly the work Microsoft’s new Tax Data Migration capability is now trying to automate.

That is the exact problem Microsoft is now trying to solve with a preview capability inside Globalization Studio called Tax Data Migration. Rather than asking implementers to rebuild tax master data from scratch, the tool reads a legal entity’s existing standard sales tax setup and generates a working Tax Calculation feature version automatically. It will not replace the judgment a migration still requires, but it does remove a meaningful share of the mechanical rebuilding that used to eat the first few weeks of every one of these projects.

What Tax Data Migration actually converts

The migration reads four categories of standard sales tax master data and maps each into its Tax Calculation equivalent. Sales tax codes become tax codes. Sales tax groups become tax groups. Item sales tax groups become item tax groups. And critically, the general ledger parameters that used to control cash discount and cash discount timing behavior get converted into tax jurisdiction parameters, since Tax Calculation manages that logic at the jurisdiction level rather than the ledger level.

The origin field on each tax code also gets translated rather than copied verbatim. A tax code set to calculate as a percentage of the gross amount becomes “By Gross Amount” in the new model; percentage of margin becomes “By Margin”; amount per unit becomes “By Quantity,” and so on through the six origin types the legacy engine supports. None of this is exposed as a simple lookup table in the product; it is worth documenting for your own project file before you run the migration, because a few of the mappings (particularly “percentage of sales tax” becoming “tax on tax”) are not intuitive if you have not seen the conversion logic before.

Abstract visualization of tax data migrating from one table structure to another in Dynamics 365 Finance

Where the automation gets genuinely clever, and where it gets messy

The part of this feature that will actually save implementation time is variant handling. In real tax configurations, the same tax code frequently shows up in multiple sales tax groups with different behavior attached, one group where it is marked exempt, another where use tax applies. The standard engine tolerates this because the group, not the code, carries the override. Tax Calculation does not work that way, so the migration tool automatically splits a conflicting code into variants: the original code keeps its name, and each subsequent variant gets a numeric suffix appended.

This is also where technical teams need to slow down before trusting the output. The suffix assignment order is explicitly documented as nondeterministic, meaning you cannot predict in advance whether a given tax group ends up with the base code or the _1 variant, and if the original code name is already at Tax Calculation’s ten-character limit, the tool truncates the base name to make room for the suffix. A code your team recognizes on sight can come out the other side looking different enough that a quick visual check will not catch a misassignment. Budget time to open every variant and confirm which tax group it landed in rather than assuming the naming is self-explanatory.

There is a harder stop worth planning around too. If the combined character length of the tax codes attached to a single tax group, or a single item tax group, exceeds 1,000 characters, the migration cancels outright with an error rather than producing a partial result. For a tax group used across many countries or with dozens of narrow tax codes attached, this is not a hypothetical edge case; it is the kind of limit that shows up on the first attempt for exactly the complex, multi-jurisdiction entities where the automation would otherwise save the most time. If you hit it, the fix is manual: trim the tax group before running the migration again, which somewhat defeats the point of automating the exercise for that entity.

The cash discount conflict nobody should skip

One behavior deserves specific attention because it fails silently in the sense that matters: the process still completes successfully even when it can’t fully reconcile a setting. If a tax group’s cash discount treatment differs from the general ledger default, the tool completes the migration and simply throws a warning naming the affected groups, leaving it to the implementer to go build the correct tax jurisdiction rule by hand afterward. It is easy to read a green completion status, skim past a warning banner, and move on to validation testing, especially on a project where the migration ran late in a sprint. Treat any cash discount warning as a required follow-up task, not an FYI, and reference Microsoft’s tax jurisdiction cash discount setup documentation directly rather than guessing at the intended rule from the original ledger parameter alone.

Scope limits that shape how you plan the work

Three constraints matter more for project planning than for the mechanics of any single run. First, the migration operates on one legal entity at a time, scoped to whichever entity is currently selected, so a multi-entity F&O implementation still needs a migration pass per entity rather than a single global conversion. Second, there is no incremental sync: if tax master data changes after you generate a feature version, those changes are not reflected automatically, and picking them up means creating a new version or rerunning the migration from the current state rather than patching the existing one. That makes sequencing important. Run the migration once your legacy tax setup is genuinely stable, not while a parallel project is still adjusting sales tax groups. Third, Brazil and India are explicitly excluded from the feature, which will matter for any global rollout that includes those entities; plan on manual configuration there regardless of how well the automation performs elsewhere.

Where this leaves an implementation plan

None of this changes the fundamental decision of whether to move to Tax Calculation, and it should not be read as a shortcut around understanding how applicability matrices, registration number rules, and jurisdiction-level parameters actually work in the target state. What it does change is where a project’s early hours go. Instead of spending the first several weeks re-keying tax codes and groups that already exist somewhere in the standard engine, a team can generate a starting configuration in an afternoon and spend the time it saved on the work that actually requires expertise: validating applicability logic, building jurisdiction rules for the edge cases the tool flags, and testing real transactions against the converted setup before it goes anywhere near production. The feature is still in preview with no announced general availability date, and Microsoft’s own documentation is explicit that preview functionality isn’t intended for production use, so the responsible move right now is to run it in a sandbox, learn where your specific tax configuration triggers variants or warnings, and have that homework done before GA arrives rather than starting from zero once it does.

We’ve run this migration path on sandbox copies of a few clients’ production tax configurations at Routeget specifically to build a checklist of the mapping quirks and character-limit failures worth watching for, and the pattern holds across fairly different configurations: the tool gets you most of the way to a working feature version, and the remaining ten percent is exactly the part that requires someone who understands both the old engine and the new one.


#TaxDataMigration #TaxCalculationService #GlobalizationStudio #DynamicsFinanceOps #ERPTaxCompliance #FinanceTransformation

Dynamics 365 Project Operations Adds a Fix for Cash Advance Exchange Rate Variance

Finance controller reviewing a multi-currency expense reconciliation dashboard in a modern office

A controller at a global engineering firm closes out Q2 and finds forty-one employee vendor accounts sitting at small nonzero balances, a few cents here, a few dollars there, all tied to cash advances issued in one currency and expensed in another. None of it is fraud. None of it is even really an error. It is simply what happens when a consultant draws a 500 EUR travel advance in Frankfurt, spends it against invoices priced in EUR three weeks later, and the accounting system converts both legs to USD using two different exchange rates. That gap is cash advance exchange rate variance, and for years in Dynamics 365 Project Operations, closing it has meant a manual journal entry, a write-off, or a permanently open subledger line that audit eventually asks about.

For finance leaders running project-based businesses across borders, that is not a rounding error problem. It is a data quality problem that quietly distorts two things CFOs actually rely on: the accuracy of project margin reporting and the integrity of the month-end close. When exchange rate noise gets buried inside project cost lines instead of isolated as a currency gain or loss, a project that is performing exactly to budget can appear to be overrunning, or vice versa, purely because of when and where an employee happened to spend an advance.

Finance controller reviewing a multi-currency expense reconciliation dashboard in a modern office

Why This Has Been Hard to Fix Cleanly

The mechanics explain why this has persisted. A cash advance in Project Operations is tracked in the currency it was requested in, and the system has long supported reducing that advance automatically as expense reports are submitted against it. That part works fine when the advance and the expense are denominated in the same currency and settled close together. The trouble starts when they are not: an advance drawn in EUR against expenses ultimately reported in a mix of currencies, or an advance settled weeks or months after it was issued, during which the exchange rate has moved. Historically, the system had no dedicated mechanism to isolate that movement as its own transaction. The employee’s vendor account either carried a residual balance indefinitely or someone in accounts payable manually calculated and posted the variance by hand, entity by entity, advance by advance.

For a firm with a handful of international projects, that manual step is an annoyance. For one running hundreds of consultants across a dozen currencies, it becomes a recurring close-cycle task that scales with headcount and travel volume, and it is exactly the kind of manual, judgment-based adjustment that internal and external auditors tend to flag when they see it repeated month after month.

Close-up of an international business traveler's desk with foreign currency, receipts, and a laptop showing an expense dashboard

How the New Cash Advance Exchange Rate Variance Fix Works

Microsoft’s cash advance exchange rate adjustment capability, released to public preview on July 31, 2026, is built specifically to close this gap. Rather than settling a cash advance purely against accounting currency, the feature bases settlement on transaction currency and automatically detects, calculates, and posts the resulting realized foreign exchange gain or loss. The stated design goal is straightforward: an employee’s vendor account should net to zero once a cash advance is fully settled, with any currency movement broken out as its own recognized amount rather than absorbed silently into the balance.

A simple illustration makes the mechanism concrete. An employee draws a cash advance of 100 EUR, recorded at 140 USD under the exchange rate in effect that day. Three weeks later, the employee submits an expense report for the same 100 EUR, but the rate has moved and the accounting equivalent is now 150 USD. Under the new capability, the system recognizes a 10 USD realized foreign exchange gain, posts it to the configured FX gain account, and closes the vendor balance out to zero. No residual line, no manual calculation, and critically, no distortion of the project’s actual cost lines, since the currency movement is captured separately rather than folded into expense cost.

The feature also builds in the kind of traceability that finance and audit teams specifically ask for during control reviews. Each adjustment carries navigation back through related vouchers, from the original cash advance to the expense report that triggered settlement to the specific FX variance transaction, so a reviewer can trace the full chain rather than reconstructing it from disconnected general ledger entries.

What This Actually Changes for Finance Leaders

The practical benefit is less about the accounting mechanics themselves and more about what they stop contaminating. Once currency variance on cash advances is automatically isolated, project profitability reporting gets meaningfully cleaner, because cost lines reflect actual project spend rather than a blend of spend and unrelated exchange rate movement. That matters more than it sounds, particularly for firms that price fixed-fee international engagements and rely on margin data to make staffing and pricing decisions on the next similar project. A margin figure that has been quietly absorbing FX noise for two years is not a small reporting inconvenience; it is a data integrity problem sitting underneath real business decisions.

There is also a straightforward labor and close-cycle argument. Every manual FX variance calculation that a firm’s shared services or accounts payable team performs by hand is time that does not scale, and it is exactly the category of adjustment most likely to be done inconsistently across regions or entities when it is left to individual judgment rather than a system-enforced rule. Automating it does not just save hours, it removes a source of inconsistency between how one controller in one country handles a variance and how another controller in a different entity handles the same situation.

Rollout Considerations Before Enabling It

This is a preview capability as of this writing, which carries the usual caveat that behavior may still change before general availability, and CFOs evaluating it should treat that as a real constraint on timing rather than a formality. Two prerequisites matter before the feature can even be turned on: the “mapping cash advances to expense lines” capability must already be enabled in the environment, and there can be no partially mapped cash advances outstanding at the time the new feature is activated. That second condition is not trivial for an organization with a large volume of open advances; it effectively requires a cleanup pass through existing cash advance records before flipping the switch, which is worth scoping as its own short project rather than assuming it happens automatically. The feature also requires a minimum platform version, Dynamics 365 Finance release 10.0.49 or later, so version currency is a gating question worth confirming with IT before this goes anywhere near a finance steering committee agenda.

There is a policy conversation worth having alongside the technical rollout, too. Realized FX gains and losses need to land in accounts that align with how corporate accounting already classifies currency movement elsewhere in the business, and treasury or corporate accounting should confirm that mapping rather than leaving it to whichever team configures the feature. For organizations operating under both GAAP and IFRS reporting in different entities, it is worth a direct conversation about whether the automated posting behavior matches existing policy for realized versus unrealized FX treatment before this runs against live cash advances rather than after.

The sensible sequencing looks like a pilot in one entity with meaningful cross-currency travel volume, ideally one that has visibly struggled with recurring FX write-offs, run in parallel with the existing manual process for a full close cycle before cutting over more broadly. That gives finance leadership a real before-and-after comparison rather than a leap of faith, and it surfaces any gaps in how the automated posting interacts with an organization’s specific chart of accounts before the feature is relied upon across every entity at once. Firms that have worked with implementation partners such as Routeget Technologies on other finance automation rollouts tend to find the same pattern holds here: the capability itself is straightforward, but the sequencing around data cleanup, policy alignment, and a genuine pilot period is what determines whether it lands as a quiet improvement or a source of new reconciliation headaches six months from now.

Currency variance on cash advances was never a large dollar figure on its own. Its real cost has always been the noise it introduces into numbers that finance leaders use to make decisions, and the manual effort spent chasing it down every close. Closing that gap cleanly is a small technical change with an outsized effect on how much confidence a CFO can place in project-level financial data.


#ProjectOperations #CashAdvanceReconciliation #ExchangeRateVariance #ExpenseManagement #ProjectAccounting #FinanceTransformation

Dynamics GP End of Life: The Deadline That Actually Matters Isn’t 2029

Finance executive reviewing an ERP migration timeline and dashboard on a boardroom screen

A CFO at a mid-market distribution company pulled up Microsoft’s own lifecycle page during a recent budget meeting and pointed to a single date: December 31, 2029. Three years out. The room relaxed, the Dynamics GP migration got pushed to next year’s capital plan, and everyone moved on to the next agenda item. That reaction is common, and it is also the most expensive assumption a finance organization can make about Dynamics GP end of life, because the date printed on Microsoft’s support page and the date that actually determines your migration cost have very little to do with each other.

What Microsoft Has Actually Published

The published timeline is straightforward enough on its face. Microsoft stopped selling new perpetual Dynamics GP licenses on April 1, 2025, and stopped selling new subscription licenses on April 1, 2026, a milestone that has already passed as of this writing. Mainstream support, which covers product enhancements, hotfixes, and the annual regulatory and tax updates that keep payroll and compliance functions running, ends on December 31, 2029. Extended support, which is limited to security patching, runs until April 30, 2031, after which Microsoft stops renewing Service Plans entirely and organizations cannot add new named users even under an existing perpetual license.

The detail that gets lost in the headline date is the year-end update schedule. The final Dynamics GP year-end update, the one that carries payroll tax tables and statutory reporting changes, ships in December 2029. Any organization still processing payroll or filing statutory reports on GP for the 2030 tax year is doing it without vendor-supplied compliance updates. For a finance team, that is not a software problem anymore. It is an audit and regulatory exposure problem, and it arrives well before the 2031 security cutoff most people assume is the real wall.

Planning Around the Dynamics GP End of Life Timeline, Not the Calendar

Here is where the practical math diverges from the published dates. Implementation firms that track the remaining GP install base have started making a specific argument in public analysis of this transition: a realistic Dynamics GP to Business Central migration, for any organization with meaningful manufacturing, multi-entity, or ISV complexity, takes nine to eighteen months from initial discovery to go-live. That is not a technology estimate so much as a change-management one, and it assumes a partner with available bandwidth and a project team that isn’t fighting for attention against a dozen other clients running the identical calculation at the identical time.

That last part is the actual constraint. Thousands of organizations are still on Dynamics GP, and a meaningful share of them are working from the same 2029 anchor date. If a large portion of that population waits until 2028 to start looking for a migration partner, the market for consultants who have done a GP-to-BC conversion more than once gets tight precisely when demand peaks, and both project cost and timeline suffer for whoever arrives late. None of this shows up in Microsoft’s lifecycle documentation, because it isn’t a Microsoft constraint. It’s a services capacity constraint, and it behaves the way capacity constraints always do: predictably, and badly for latecomers. Treat that as informed industry judgment rather than a vendor-confirmed figure, but it lines up with what most organizations experience whenever a large installed base is forced toward a shared deadline.

What the Migration Tool Actually Moves, and What It Doesn’t

Microsoft’s own GP Company Migration Configuration tooling handles a fair amount of the data conversion automatically, and it is worth understanding the scope before anyone assumes this is a lift-and-shift exercise. On the financial side, it converts fiscal periods into Business Central accounting periods, maps the chart of accounts with GP segments becoming BC dimensions, and brings over summary GL balances for both open and historical years. On the master data side, it migrates customer and vendor records with their addresses, inventory items with costing method and lot or serial tracking intact, checkbooks with unreconciled transactions, and outstanding receivables and payables at their remaining balance. Open purchase orders come across with remaining quantities, and 1099 vendor information migrates for tax years starting in 2024.

What it explicitly does not do matters just as much. Posted transaction history beyond what’s needed to support open balances stays behind. Unit of measure schedules don’t migrate, because Business Central doesn’t have an equivalent concept and only carries individual units of measure. Undeposited cash receipts have to be deposited in GP before the migration runs, and fully received or fully invoiced purchase order lines don’t come across at all. Historical years also land in Business Central still open, and someone has to close them manually afterward rather than assuming the conversion handled it.

None of that is a flaw in the tooling. It’s a reminder that the tool moves data, not business logic, and for organizations with any manufacturing footprint, that distinction is the whole ballgame. Bills of material, routings, production scheduling, shop-floor barcode workflows, and the EDI connections built up over a decade of GP customization don’t show up as rows in a migration mapping table. They have to be redesigned, either as native Business Central configuration or as extensions, and that redesign work, not the data conversion itself, is what consumes most of the nine-to-eighteen-month window described above.

Finance and IT team reviewing an ERP migration project timeline on a large office display

Building the Business Case Before the Window Narrows

A few decisions are worth making now rather than after the next budget cycle. First, inventory every ISV module and third-party add-on currently attached to Dynamics GP, since vendor investment in that ecosystem is already shrinking as those partners redirect their own roadmaps toward Business Central and other platforms, and a module that works fine today may not have a maintained successor by the time your migration starts. Second, decide deliberately how much transaction history actually needs to live inside Business Central versus a low-cost historical archive, since dragging every year of GL detail forward adds conversion effort without changing anything about how the business operates going forward. Third, treat the subscription licensing cutoff as a practical planning input rather than a footnote: because new subscription sales already stopped in April 2026, any organization that hasn’t already secured its Business Central licensing path needs that conversation now, not as a line item to revisit later.

It’s also worth resisting the instinct to replicate GP’s chart of accounts and segment structure exactly as it exists today. Business Central’s dimension model works differently from GP’s segment approach, and a migration is a rare opportunity to simplify a chart of accounts that has usually accumulated more complexity than the business actually needs. Carrying forward every workaround from the old system just because it’s familiar tends to recreate the same reporting friction in a new platform.

The Deadline That Actually Governs Your Timeline

The number that should drive a migration decision isn’t December 31, 2029. It’s the point at which your organization can still secure an experienced implementation partner, complete a realistic discovery-to-go-live cycle, and close out the project before the broader GP install base creates a capacity bottleneck that Microsoft’s support calendar has nothing to do with. In our own conversations with finance and IT leaders working through this decision, the organizations that end up with the smoothest transitions are consistently the ones that started evaluating options well ahead of any hard deadline, because the parts of the project that actually take time, process redesign, ISV replacement, and chart-of-accounts cleanup, are the same parts that no amount of urgency can compress once the clock is closer to running out.

Setting an internal decision point in the next quarter or two, and working backward from a 2027 or 2028 go-live rather than a 2029 support cutoff, is a more honest way to plan than trusting a date on a lifecycle page to tell you when to act.


#DynamicsGP #BusinessCentralMigration #GPEndOfLife #ERPModernization #FinanceTransformation #CloudMigration

The Power Automate RPA Licensing Math That Breaks Most Finance Automation Rollouts

Finance operations team monitoring automated workflow dashboards in a modern control room

A finance operations director we worked with last quarter had a good problem: her three-bot pilot for invoice matching had worked exactly as promised. Exceptions dropped, the AP team stopped re-keying vendor data, and the CFO wanted it rolled out across the whole shared services center by the next close cycle. Then IT came back with a licensing quote roughly eight times higher than what the pilot had cost per month, and the rollout stalled in budget review for six weeks while everyone tried to figure out what had changed.

Nothing had changed technically. What changed was the license type, and Power Automate RPA licensing is exactly where a surprising number of finance automation programs lose momentum right after they prove themselves.

Power Automate RPA Licensing: Attended Pricing Is the Pilot Price, Not the Production Price

Most Power Automate pilots run attended, meaning a real person is logged into the workstation and the desktop flow executes while they’re at their desk, often triggered manually or from a scheduled prompt during business hours. Attended automation is licensed through Power Automate Premium at $15 per user per month, and that single per-user cost is genuinely all it takes to build and run desktop flows on a registered machine, with access to premium connectors, process mining, and a healthy daily action allowance built in.

That price is why so many pilots clear budget approval without much friction. Fifteen dollars a month per analyst is a rounding error against the labor hours it replaces, and it’s the number finance teams anchor on when they start sizing a broader rollout.

The problem is that production finance operations rarely stay attended. Month-end close doesn’t wait for someone to be logged into a specific machine, and neither does an overnight AP batch or a weekend bank reconciliation run. The moment a bot needs to run unattended, meaning on a schedule or a trigger with nobody present to log in and supervise it, Microsoft requires a Power Automate Process license (the plan formerly marketed as “per flow”), priced at $150 per bot per month if you supply and register your own machine, or a Hosted Process license at $215 per bot per month if you want Microsoft to provision and manage the virtual machine instead. Attended and unattended aren’t tiers of the same product; they’re licensed as genuinely separate capabilities, and a pilot built on the cheap one tells you almost nothing about what the expensive one will cost.

Finance operations analyst reviewing an automation workflow diagram on a monitor

Concurrency Is the Multiplier Nobody Models in a Pilot

The second gap is even easier to miss, because it doesn’t show up until someone asks how many things need to happen at once. A single Process or Hosted Process license grants one unattended bot capable of one desktop flow run at a time, with a daily ceiling of 250,000 actions. That’s usually plenty of headroom for a single automation running serially through a queue.

Finance operations at scale rarely stays serial, though. During a close cycle, a shared services team might need five invoice-processing automations running in parallel to clear a backlog before a reporting deadline, not one automation running five times faster. Each concurrent execution requires its own license; Microsoft allows stacking up to ten Process licenses against a single flow definition for higher-volume scenarios, but the cost scales linearly with concurrency, not with automation count. A team that budgeted for “the AP bot” as a single line item, based on pilot behavior where one instance handled everything sequentially, will find that peak-period parallelism during close is exactly the scenario that multiplies the bill.

This is worth raising explicitly with finance leadership before the rollout budget goes to the board, because it’s the single most common reason an approved RPA business case comes back for revision. The question to ask isn’t “how many bots do we need,” it’s “how many need to run at the same moment at our busiest point in the month,” and the answer to that question is what actually drives the license count.

Hosted Machines Change Who Owns the Infrastructure Risk

There’s a third decision buried in that $150 versus $215 per bot spread that has nothing to do with automation logic and everything to do with who’s on the hook for infrastructure. A standard Process license assumes your organization registers and maintains the machine the bot runs on: a real or virtual Windows endpoint that someone patches, secures, and keeps available. For an IT team already running a mature VM management practice, that’s a marginal addition to existing work.

For a finance-led automation initiative without dedicated infrastructure support, though, that machine becomes an unbudgeted ownership problem. Microsoft’s Hosted Process model addresses this directly: Hosted Machine Groups run on Azure infrastructure provisioned from a custom VM image through Azure Compute Gallery, with dynamic load balancing across the group and automatic reprovisioning during maintenance windows, and credential management shifts from static usernames and passwords to secrets held in Azure Key Vault rather than a spreadsheet somebody has to remember to update. None of that requires a dedicated RPA infrastructure team to operate day to day.

The sixty-five-dollar-per-bot premium for Hosted Process is, in effect, the price of not needing that team. Whether that trade makes sense depends entirely on whether the automation program is going to stay a handful of finance workflows or grow into a broader shared-services capability that justifies its own operational ownership. Organizations that guess wrong in either direction end up either paying for managed infrastructure they had the staff to run themselves, or trying to bolt VM governance onto a finance team that was never set up to own it.

Budgeting the Rollout, Not the Pilot

None of this means Power Automate is a poor fit for finance automation; the platform’s architecture guidance for scaling RPA operations is specifically built around exactly these production patterns, with capacity planning, committed and maximum bot counts, and utilization thresholds designed for high-volume periods like quarter-end processing and seasonal order backlogs. The issue isn’t the platform. It’s that the pilot’s economics and the production rollout’s economics are different products with different pricing logic, and treating them as the same line item is what turns a successful proof of concept into a stalled budget conversation.

Before a finance automation pilot goes to the board for rollout funding, it’s worth walking through three questions with whoever owns the license budget. First, will production runs actually be unattended, and if so, has the Process or Hosted Process cost been modeled instead of the Premium per-user rate the pilot used. Second, what does peak concurrency look like during the busiest close or reconciliation window, since that number, not the total automation count, determines the license count. Third, does the organization want to own the machine infrastructure or pay Microsoft to manage it, and is that decision being made deliberately rather than defaulting to whichever option the pilot happened to use.

Getting those three answers before the budget request goes out doesn’t just prevent an awkward six-week delay. It’s the difference between an RPA program that scales predictably alongside the finance function’s actual workload and one that keeps getting re-approved a bot at a time because nobody modeled what production would really cost. We’ve walked several finance operations teams through exactly this exercise before their rollout budgets went to committee, and the pattern is consistent: the teams that model concurrency and hosting decisions up front rarely get sent back for revision, and the ones that don’t, almost always do.


#PowerAutomate #RPALicensing #FinanceTransformation #ERPGovernance #DigitalTransformation #EnterpriseAI