Skip to main content

Microsoft Dynamics 365

Sync contacts from Microsoft Dynamics 365 (Dataverse) into your event pipeline, push leads back from Pana, and optionally receive inbound updates via webhooks.

What you get​

  • Import Dynamics 365 contacts (with email) as leads on a chosen Pana event.
  • Connect using your Dynamics 365 environment URL (for example https://yourorg.crm.dynamics.com).
  • Limit how many contacts to import (all, 100, 200, or a custom number).
  • Optional auto-sync to a default event on a schedule.
  • Push to Dynamics 365 from the Leads page — single lead or bulk.
  • Copy a webhook URL for inbound contact updates.

Microsoft Dynamics 365 is one connection per workspace. Workspace admins enter the environment URL, then approve access with Microsoft.


Before you start​

  • Access to a Dynamics 365 / Dataverse environment.
  • Your Environment URL (also called the organization or instance URL).
  • Permission in that environment to authorize the Pana app.
  • At least one event in Pana to attach synced contacts to.
  • Workspace admin access in Pana.

Find your environment URL​

In the Power Platform admin center (or Dynamics 365), open your environment and copy the URL. It usually looks like:

https://yourorg.crm.dynamics.com

You can paste the host with or without https:// — Pana adds https:// if needed.


Connect Microsoft Dynamics 365​

  1. Go to Settings → Integrations.
  2. Find Microsoft Dynamics 365 under CRM.
  3. Click Connect.
  4. Enter your Dynamics 365 Environment URL.
  5. Continue and sign in with Microsoft.
  6. Approve access to your Dynamics environment.
  7. Return to Pana; the card shows as connected.

Sync contacts​

  1. On the Dynamics 365 card, click Sync leads.
  2. Select a Pana event.
  3. Optionally set an import limit.
  4. Optionally enable Use this event for automatic sync.
  5. Start the sync.

Sync runs in the background. Contacts without an email are skipped. Existing leads matched by Dynamics ID or email are updated.


Fields Pana adds to Dynamics 365​

When you connect, Pana sets up these fields on Dynamics 365 Contacts so you never have to create them by hand. Every push fills them with the lead's current values, alongside first name, last name, email, phone, job title and company.

Dynamics 365 fieldTypeWhat Pana writes
Lead SourceChoice (Dynamics' own) or textAlways Pana Events, so leads from Pana are easy to identify. When your Contact table has a Lead Source choice, Pana adds a Pana Events option to it.
Event NameTextThe event the lead is mapped to.
Event Lead Interest LevelChoice — Cold, Warm, HotThe lead's interest level from Pana.
Event Lead TagsChoices — Exhibitor, Sponsor, Investor, Partner, High Priority, Decision Maker, Urgent, VIPThe lead's tags. A lead marked as a decision maker always carries Decision Maker.
Event Conversation NotesMultiple lines of textThe latest note on the lead. Each push replaces it with the newest note.
Next Follow-up DateDate and timeWhen the lead is due a follow-up, with the time of day.
LinkedIn ProfileURLThe lead's LinkedIn profile URL.
Pana Lead URLURLA link back to the lead in Pana.

New columns use your environment's publisher prefix and are published straight away. The lead's company is set as the contact's Company Name (parent account): Pana links an existing account with that name or creates one. If a field with one of these names already exists, Pana reuses it instead of creating a duplicate — so reconnecting is always safe. Empty values are never sent, so a push never clears something typed in Dynamics 365.

Creating columns needs the connecting user to have the System Customizer or System Administrator role. Without it, pushes still create and update contacts with the standard fields; reconnect after granting the role and the columns are created.

Edits made in Dynamics 365​

Event Lead Interest Level, Event Lead Tags, Event Conversation Notes, Next Follow-up Date and LinkedIn Profile come back with the contact, so edits made in Dynamics 365 show up on the Pana lead — on every contact sync, and live through the Dynamics webhook (see Webhooks). This works for leads that came from Dynamics 365 and for leads captured in Pana and pushed to Dynamics 365.

  • A note changed in Dynamics 365 joins the lead's notes thread as the newest note.
  • Company comes back too: the name of the contact's Company Name account (a parent contact is ignored).
  • Tags Pana does not provision are left on the lead untouched; Decision Maker keeps the lead's decision-maker flag in step.
  • An empty field in Dynamics 365 never clears the lead.
  • Lead Source, Event Name and Pana Lead URL are set by Pana and are not read back.

Re-create the fields​

Connecting creates the fields, and a push quietly re-creates a missing one (at most once an hour). To re-run it right away — after someone deleted a field, or after you grant the System Customizer role — call:

POST /api/v1/integrations/microsoft-dynamics-365/provision-fields/
{ "workspace_id": "<workspace id>" }

The response lists the fields created and reused, and any errors Dynamics 365 returned. Existing fields are reused, never duplicated.


Push leads to Dynamics 365​

Single lead​

  1. Open Leads.
  2. On a lead row, use Push to Dynamics 365 (or Microsoft Dynamics 365).
  3. The lead must have an email address.

Bulk push​

  1. Select one or more leads in Leads.
  2. Use the Dynamics push action from the toolbar.

Webhooks​

Click Copy webhook on the connected card to copy:

https://eventsapi.pana.space/api/v1/integrations/webhooks/microsoft-dynamics-365/{workspace_id}/

Pana registers this webhook in Dynamics for you when you connect: it adds a Pana Events contact sync webhook (a service endpoint with a secret key) and two asynchronous steps that call it whenever a contact is created or updated. From then on, contact edits in Dynamics reach the Pana leads linked to them within moments — standard fields and event fields alike. Pana checks the secret key on every call and ignores anything without it.

Registering the webhook needs the connecting user to have the System Administrator or System Customizer role, and the Pana API to be reachable over https. If it could not be registered at connect, run it again with:

POST /api/v1/integrations/microsoft-dynamics-365/register-webhook/
{ "workspace_id": "<workspace id>", "webhook_base_url": "https://<your Pana API>" }

Registering again is safe: the existing webhook is updated rather than duplicated. To stop live updates, delete Pana Events contact sync under Plug-in Registration (or Service Endpoints) in your Dynamics environment.


Disconnect​

Turn off the toggle on the Microsoft Dynamics 365 card. Existing leads in Pana are kept; live sync stops.


Troubleshooting​

IssueWhat to try
Environment URL requiredEnter the full org URL (for example https://yourorg.crm.dynamics.com) before continuing OAuth.
Connected to wrong environmentDisconnect, reconnect, and paste the correct environment URL.
No events in the sync dialogCreate an event under Events first.
Contacts skippedContacts need an email address in Dynamics.
Consent / access deniedAsk a Dynamics admin to grant consent for the app in your Microsoft tenant.
Push failedConfirm the lead has an email and that Dynamics is still connected.