Deploy a Flow from VS Code

You clicked Copy Flow XML in the Config Library - here's how to get that flow into your Salesforce org with VS Code and the Salesforce CLI. This is the developer path; if you'd rather not touch a code editor, build the flow by hand with the Flow Cheat Sheet or use the in-app Setup Wizard.

What this does: the copied XML is a ready-made Screen Flow that embeds the MultiDatePick component, already wired to a sensible set of objects and fields. You deploy it once, then rename a few API names to match your org. Total time is about 15 minutes the first time, a couple of minutes after that. Every Boolean property the wrapper exposes is stamped explicitly in the XML, so the flow behaves the same as the demo on the config's page (blank Booleans in Flow read as null, not false, and would silently disable features otherwise).

1. What you need

Three free tools - install once and you're set for every future deploy:

  • Visual Studio Code - the code editor.
  • Salesforce Extension Pack - adds the SFDX commands to VS Code. Install it from the Extensions panel (search "Salesforce Extension Pack").
  • Salesforce CLI (sf) - the command-line tool the deploy runs through. Confirm it's installed by running sf version in VS Code's terminal.

2. One-time setup

Skip this section if you already work in an SFDX project connected to your org.

A Authorize your org

Connect VS Code to your Salesforce org. Open the Command Palette (Ctrl/Cmd + Shift + P) and run SFDX: Authorize an Org - or from the terminal:

sf org login web --alias myorg

A browser opens; log in and approve. Use a sandbox or Developer org first, not production.

B Open or create a project

If you have an SFDX project, open its folder in VS Code (File → Open Folder). If not, create one:

sf project generate --name multidatepick-flows
cd multidatepick-flows

Then open that folder in VS Code. You should see a force-app/main/default/ structure in the Explorer panel.

3. Import the copied XML

1 Create the flow file

In the Explorer, expand force-app/main/default/ and open (or create) the flows folder. Add a new file named after your config, ending in .flow-meta.xml - for example On_Call_Rotation.flow-meta.xml. The name becomes the flow's API name, so use letters, numbers, and underscores only.

Or create it straight from VS Code's integrated terminal:

# Windows (PowerShell)
New-Item force-app/main/default/flows/On_Call_Rotation.flow-meta.xml -ItemType File -Force
# macOS / Linux
mkdir -p force-app/main/default/flows && touch force-app/main/default/flows/On_Call_Rotation.flow-meta.xml

2 Paste and save

Paste the XML you copied from the Config Library into the new file and save (Ctrl/Cmd + S).

3 Deploy to your org

Right-click the file in the Explorer and choose SFDX: Deploy Source to Org - or run this in the terminal:

sf project deploy start --source-dir force-app/main/default/flows/On_Call_Rotation.flow-meta.xml

Watch the Output panel for Deploy Succeeded. If it reports a field or object error, that's expected - the next step fixes it.

4. Finish in Flow Builder

4 Swap in your object and field names

In your org, go to Setup → Flows and open the flow you just deployed. Look for the elements and notes marked >>> UPDATE - those point at the object and field API names the sample assumed. Change each one to match your own object, date field, and lookup. Then Save and Activate.

That's it - drop the flow on a page, a button, or run it directly, and members can start selecting dates.

Command recap:
sf org login web --alias myorg                 # authorize once
sf project generate --name multidatepick-flows  # only if you need a new project
sf project deploy start --source-dir force-app/main/default/flows/YOUR_FLOW.flow-meta.xml
Stuck on the CLI? Salesforce's CLI setup guide covers install and login in detail.