Setup D365 Sales with Dual-Write to Finance and Operations – Part 2

And let’s get to the Solution setup part!

In Part 1, we created a Dynamics 365 Sales environment and added Finance and Operations to it – all from the Power Platform Admin Center. Now, let’s set up Dual-Write so your Accounts flow to Finance and Operations as Customers.

Here’s how I set it up –

1. Setup Dual-Write

  1. Back in Power Platform Admin Center, open the environment, go to Resources > Dynamics 365 apps and click Install app. Install the Dual-write packages one at a time, waiting for each to show Installed: first Dual-write core solution, then Dual-write Application Core Solutions (legal entities, currencies), and then Dual Write Finance and Extended Solutions – this one has the Customers V3 map we need for Accounts.
    Dual-write core solution, Application Core Solutions and Finance and Extended Solutions installed - the orchestration solution failed
    Note: I first tried the all-in-one Dual-write application orchestration solution, but it failed with Cab file required for importing solution with name Dynamics365FinanceAndOperationsAnchor, even after a retry. Microsoft now ships these as separate packages – so install those instead.
    Error details for the Dual-write application orchestration solution: Cab file required for importing solution Dynamics365FinanceAndOperationsAnchor
    Tip: Don’t start the next package until the previous one shows Installed – each one builds on the one before, and running them in parallel in the same environment can make the installs fail. For me, the Dual-write core solution took about 20 minutes, so plan for some waiting time here.
  2. Now open Finance and Operations and go to Workspaces > Data management and click the Dual-write tile. Since Sales and Finance and Operations are in the same environment, it’s already linked – no linking wizard like the old Lifecycle Services days.
    Dual-write tile in the Data management workspace in Finance and Operations
  3. Before applying any maps, check which legal entities are linked. Click Environment details > Legal entities. In my case, only dat was linked, but the Contoso demo data lives in USMF. So click Add Legal Entity, select USMF and Save. Keep Skip initial writes for newly added legal entities checked if you only want new records to sync.
    Adding the USMF legal entity to the Dual-write link
  4. Click Apply solution, select Dual-write application core entity maps and click Apply. Once it’s applied, you’ll see the table maps listed with a status of Not running.


    Troubleshooting: In my environment, Apply solution came up empty with the error Failed to get solutions containing entity maps … StatusCode=NotFound, and Add table map failed with Failed to get publishers available to user. Here’s what I checked:
    – I ran Health check on the Dual-write page – all 15 checks passed (core solution, orchestration components, app users, plugins, API Hub connection and business unit).
    – Since this was a unified environment where the Dual-write link was created automatically during provisioning, I used Reset link to recreate the connection under my own account – choosing the current Dataverse environment and the dat and USMF legal entities. The reset completed successfully (15/15 checks passed).
    Reset link to Dataverse summary with dat and USMF legal entities and 15 of 15 checks passed
    – Even after the reset, Apply solution returned the same NotFound error – which points to the Dual-write service side rather than the setup. If you hit the same error, raise a support ticket with Microsoft and include the Session ID and Root Activity ID from the error. I’ll update this post once it’s resolved.

So what’s actually going wrong?

At this point everything looks healthy – all three Dual-write packages are installed, the link shows both legal entities, and the Health check passes 15/15 – but Apply solution still returns Failed to get solutions containing entity maps … StatusCode=NotFound. So what gives?

“Apply solution” doesn’t read those entity maps from your environment – it calls a Dual-write backend service that returns the list of solution maps for your two linked environments. A NotFound from that service means the call reached it but it had nothing to hand back – the environment pair isn’t registered on the service side yet, even though the solutions are physically installed in Dataverse.

In my experience this comes down to one of a few things, and it’s worth checking them in this order:

  1. The link was created by provisioning, not by you. On a unified environment, the Sales + Finance and Operations link is set up automatically. The account that created it owns it, and other admins can get NotFound / “Failed to get publishers available to user” until they re-create it. Reset link (which I did above) is meant to fix this – it did put the link under my account, but the service still returned NotFound, so for me it wasn’t the whole story.
  2. The environment pair is still catching up on the service side. A freshly provisioned Finance and Operations environment (mine finished only hours earlier) can take a while before the Dual-write service recognises the pair. A NotFound that persists right after setup, then clears on its own, usually points here.
  3. App registrations / dual-write app users. The Health check lists the two app users and app IDs that let Dataverse and Finance and Operations call each other. If one of those is missing or not consented at the tenant level, the backend call can’t authenticate and returns NotFound rather than a clear auth error.

Since the Health check passed and the Reset didn’t clear it, my case looks like a service-side registration delay (reason 2). The fix there is time plus a Microsoft support ticket with the Session ID and Root Activity ID from the error. I’ll update this post with the map and test steps once Apply solution returns the solutions.

Hope this was helpful!

Here are some more posts you want to check out –

  1. Deploying Project Operations Core vs Integrated with ERP
  2. Environment Groups in Power Platform Admin Center
  3. Preferred Solution in Dataverse | Power Platform Admin Center
  4. Enable Copilot for Dynamics 365 Sales environment

And some popular Power Automate posts –

  1. Select the item based on a key value using Filter Array in Power Automate
  2. Select values from an array using Select action in a Power Automate Flow
  3. Call a Flow from Canvas Power App and get back response | Power Platform
  4. Asynchronous HTTP Response from a Flow | Power Automate

Thank you!

Setup D365 Sales with Dual-Write to Finance and Operations – Part 1

While Setting up Dual-Write with Project Operations is a no-brainer, often times – setting this up with other applications like D365 Sales needs to take a different route.

If you are using Dynamics 365 Sales and want your Accounts, Contacts and Products to flow to Finance and Operations, Dual-Write is the way to do it. And with the new Power Platform Admin Center experience, you don’t need Lifecycle Services anymore – everything starts from PPAC.

Here’s how I set it up end to end –

1. Create the Sales Environment

  1. In Power Platform Admin Center, go to Manage > Environments and click on + New. Give it a Name, select the Type as Sandbox and the Region – I’ve selected United States here. Then, expand Change default settings, set Add a Dataverse data store? to Yes and click Next.
    New environment pane in Power Platform Admin Center with Dataverse data store set to Yes
  2. On the Add Dataverse pane, select the Currency (I’ve chosen USD), Security group as None (since this is a sandbox for demos) and enter a URL of your choice. I’ve given it the same name as the environment. Keep the URL short – the Finance and Operations Provisioning App needs it to be 19 characters or less.
    Add Dataverse pane with USD currency, no security group and custom URL
  3. Now, set Enable Dynamics 365 apps? to Yes and in Automatically deploy these apps, select Sales Enterprise.
    Enable Dynamics 365 apps set to Yes with Sales Enterprise selected
  4. Note: Don’t try to select Sales Enterprise and Finance together here – PPAC doesn’t allow it, you’ll get an error saying the app ‘Finance’ cannot be provisioned with other apps. We’ll add Finance and Operations once Sales is ready.
  5. Click Save and the environment will start Preparing.
    D365 Sales with DW environment in Preparing state

2. Add Finance and Operations to the Sales Environment

Once the Sales environment is Ready, we’ll add Finance and Operations to the same environment. You’ll need to install the Finance and Operations Platform Tools first, and then the Finance and Operations Provisioning App. I’ve covered these steps in detail in this post – Deploying Project Operations Core vs Integrated with ERP.

  1. First, make sure your Sales environment shows as Ready.
    D365 Sales with DW environment in Ready state
  2. Open the environment, go to Resources > Dynamics 365 apps and click Install app. Select Dynamics 365 Finance and Operations Platform Tools and click Next. You may see this app listed more than once – any of them works.
    Dynamics 365 Finance and Operations Platform Tools selected in the install list
  3. Agree to the terms and click Install. You’ll see a banner that the installation has started.
    Finance and Operations Platform Tools installation started banner
  4. Once Platform Tools shows Installed, click Install app again and select Dynamics 365 Finance and Operations Provisioning App (again, you may see it listed more than once). Click Next and confirm – this opens the Provisioning App setup in a new tab.
    Finance and Operations Provisioning App selected in the install list
  5. On Settings, I’ve ticked Enable Demo Data for Finance and Operations – this gives us sample customers and products to test Dual-Write with. Leave Developer Tools unchecked unless you need them.
  6. On Version, select the latest version available to you and click Next.
  7. Review, agree to the terms and click Install. As the screen says, this can take a couple of hours but Dataverse (and your Sales app) stays available during the installation.
  8. Once the installation completes, the environment page shows a Finance and Operations URL next to the Environment URL. Click it to open Finance and Operations – same environment, same Dataverse as your Sales app.
    D365 Sales with DW environment showing the Finance and Operations URL and details

That’s the environment ready with both Sales and Finance and Operations. In Part 2, we’ll set up Dual-Write and see Accounts from Sales flow into Finance and Operations as Customers.

Hope this was helpful!

Here are some more posts you want to check out –

  1. Deploying Project Operations Core vs Integrated with ERP
  2. Environment Groups in Power Platform Admin Center
  3. Preferred Solution in Dataverse | Power Platform Admin Center
  4. Enable Copilot for Dynamics 365 Sales environment

And some popular Power Automate posts –

  1. Select the item based on a key value using Filter Array in Power Automate
  2. Select values from an array using Select action in a Power Automate Flow
  3. Call a Flow from Canvas Power App and get back response | Power Platform
  4. Asynchronous HTTP Response from a Flow | Power Automate

Thank you!