Automating Project Creation with Workflows
This is the moment where everything you’ve set up starts working for you.
Workflows allow OnRamp to automatically create projects when something meaningful happens in your CRM — like a deal closing or an account becoming implementation-ready.
No manual handoffs.
No “did someone start onboarding?”
Just the right project, created the right way, every time.
What Is a Workflow (in OnRamp Terms)?
A Workflow answers one simple question:
When should OnRamp create a project — and how should it be configured?
It listens for events in your CRM, then tells OnRamp exactly what to do when those conditions are met.
Think of Workflows as the bridge between:
Your CRM data
Your playbooks
Your onboarding execution
A Workflow is built as a series of cards on a canvas, starting with the trigger and ending with the Create project card. This article walks through each card in order.
Before You Start
Connect your CRM. Workflows run on a Salesforce or HubSpot connection. If the connection has lapsed, the trigger card shows a Reconnect needed tag and the Workflow can’t be set up until it is restored.
Build your playbook first. A Workflow creates projects from a playbook, so the playbook (and its data fields, automations, roles and merge fields) should already exist.
Create a Workflow from the Workflows page. Until you publish it, nothing runs.
Set Up Your Trigger
What it does
The trigger connects your CRM to OnRamp.
When a record meets your defined criteria, the Workflow runs and begins configuring a project.
How to set it up
Select your CRM
Choose Salesforce or HubSpot. If only one CRM is connected to your OnRamp account, it is selected for you.Pick the triggering object
This is the kind of CRM record that starts the Workflow. Examples:Salesforce Opportunity
HubSpot Deal
Contact, Company, Case or another object your CRM exposes
Choose a label field
The field OnRamp uses to name each captured record, so runs are easy to recognize later.Define the trigger rules
Add one or more conditions on fields of the triggering object. A record starts the Workflow only when it matches every rule. Examples:Stage = Closed Won
Deal Type is not empty
💡 Tip: Keep trigger conditions narrow to avoid unwanted project creation.
💡 Tip: If a field you need isn’t in the list, use the re-sync button beside the label field to reload the object’s fields from your CRM. Nothing is changed in your CRM. For HubSpot custom properties, see HubSpot Custom Field API Names for Workflow Triggers.
Result
Every time a record meets your conditions, it flows through the Workflow — no manual work required.
Configure the Playbook
What it does
The Create project from playbook configuration card tells OnRamp how to proceed when a trigger fires.
Each branch can either:
Select a Playbook → continue and create a project
Stop → end the Workflow without creating a project
This gives you precise control over when onboarding should begin.
How to set it up
Select a default playbook
This is the fallback playbook if no other rule applies.(Optional) Add conditional branches
Use CRM data to vary behavior based on real-world scenarios. Every branch other than the default needs at least one condition.Example:
If Deal Type = Enterprise → Use Enterprise Implementation playbook
If Deal Type = Standard → Use Standard Onboarding playbook
Use “Stop” intentionally
Any branch — including the default — can be set to Stop, as long as at least one other branch still has a playbook. A Workflow that can never create a project can’t be saved that way.Review each branch preview
Make sure the correct playbook (or Stop behavior) appears for each condition.
💡 Tip: The first matching condition always wins. Place your most specific rules first.
Why “Stop” Matters
Using Stop is not a failure — it’s a guardrail.
It helps you:
Prevent projects from being created too early
Enforce readiness or validation checks
Keep your project list clean
Avoid unnecessary cleanup later
Sometimes, the correct automation outcome is not creating a project.
Result
When a record matches the trigger, the Workflow either creates a correctly configured project or exits intentionally. If something can’t be resolved along the way (for example, a required owner can’t be found), the run is marked Error and shows you which step failed. See After You Publish below.
Add Conditional Modules
After playbook selection, you can dynamically add modules to a project based on CRM data.
What it does
Conditional Modules allow you to extend a playbook without duplicating it.
Example:
If Opportunity Type = New Business → Add Welcome to OnRamp module
Else → Skip it
You can:
Add multiple condition blocks
Use multiple rules per condition
Add multiple modules per condition
Set a start offset (days) for each module you add
Drag condition blocks and modules to reorder them
Why This Is Powerful
This lets you support multiple onboarding paths with:
One playbook
Cleaner logic
Easier long-term maintenance
Result
Projects feel tailored — without exploding your playbook library.
Define the Project Name
Clear naming keeps projects organized and searchable.
How to set it up
Combine text and merge fields. Available merge fields include the playbook name, project start and end dates, the project owner’s first name, last name and email, and the account name.
Example:
{Account Name} | {Playbook Name}Preview before saving.
Map the Project Account
Link each project to the correct account (customer).
How to set it up
From the trigger object (default): choose the field that identifies the account on your CRM record. OnRamp uses that ID to find the matching customer, and creates a new customer if there isn’t one. For HubSpot, use the account association on the record.
Fixed: pick one existing customer to attach every project to.
How OnRamp matches an existing customer is controlled by the Workflow’s Account Matching setting (see Workflow Settings below).
Test and confirm resolution before you publish.
Assign the Project Owner
Automatically assign responsibility.
Options
From the trigger object: pull the owner from a CRM field. Map the owner’s email (and optionally first and last name) so OnRamp can match them to a user.
Fixed: assign a consistent owner
The owner can be set differently for each branch, so an Enterprise deal and a Standard deal can have different owners. For a step-by-step example, see Workflows: Assigning Project Owners Based on Deal Data.
Result
Every project has a clear owner from day one.
Adjust Project Dates
How it works
Defaults come from the playbook
Set the start date and end date independently. Each one is either:
An offset in days from the day the project is created, or
A date field from the trigger object (for example, a deal’s Close Date or Go-Live Date)
An end-date offset can’t be shorter than the playbook’s own duration
Dates apply to every project the Workflow creates, regardless of which branch matched
For a walkthrough, see Workflows: Mapping Project Start and End Dates from CRM Data.
Add Internal Users
Automatically include teammates.
Options
Fixed users: pick specific teammates
From the trigger object: look up a teammate from a CRM user field, matched by email
Once users are added, assign them to the playbook’s internal roles. Use Assign user to all to put one person on every role.
Result
The right internal team is added automatically.
Add Customer Users
Invite customer contacts automatically.
Options
Single lookup field
Related records (for example, the contacts associated with a deal)
As with internal users, you can then assign each customer user to the playbook’s customer roles.
Result
Customers are added instantly and correctly.
Assign eSign Signers
Route signature steps to the right people.
⚠ Only appears if the playbook (or a module you add conditionally) contains eSign steps.
How to set it up
Each eSign step in the project is listed with its module and task
For every signature, choose a recipient type and, optionally, the specific user
Result
Signature requests go to the right signers without anyone reassigning them by hand.
Set Project Value
Optionally include financial context.
How to set it up
Map a numeric CRM field (for example, Deal Amount)
Or use a fixed value, entered in the playbook’s currency
Result
Projects include value data for reporting.
Map Data Fields
Populate playbook data fields automatically. Each field can be a fixed value or come from the trigger object.
⚠ Only appears if the playbook includes Data Fields.
For account-level fields, see Mapping Account Data Fields in Workflows. For fields that hold a user, see Mapping USER data fields from your CRM in Workflows.
Result
Projects launch with context already filled in.
Configure Automations
Run playbook automations automatically by telling each automation which CRM field supplies its data.
⚠ Only appears if automations exist on the playbook.
💡 Tip: If an automation fails after a project is created, see Troubleshooting Workflow Project Automation Errors.
Result
Projects launch with automation already running.
Configure Merge Fields
Personalize project content with CRM data. Each merge field can be a fixed value, a system value (a field from an OnRamp object) or come from the trigger object.
⚠ Only appears if merge fields exist.
Result
Projects feel custom-built at scale.
Choose a Project Portal
Decide which customer portal the project uses. By default, projects use the playbook’s portal. You can override that with any published portal from Portal Studio.
⚠ Only appears if your organization uses Portal Studio, and only Super Admins and Creators can change it.
Choose Project Creation Mode
Decide how projects go live.
Options
Create automatically: the project is created as soon as the Workflow runs
Wait for approval (recommended while testing): the run pauses with a Pending Approval status. Open the run in the Runs panel and approve it to create the project, or decline it to discard it.
Result
Projects are created exactly when — and how — you intend.
Workflow Settings
Open Settings in the left panel of the Workflow to review how it behaves across runs.
Processing Mode: how often the same CRM record can start the Workflow
Only process external objects 1 time (default): a record is processed once
Process external objects many times: the record starts the Workflow every time it matches
Process external objects until successful: the record is retried until a run succeeds, then not again
Account Matching: Match by ID or name (default) links an existing customer by CRM ID, then falls back to the account name; Match by ID only links only on a CRM ID match. In both cases a new customer is created if nothing matches.
Failure alert recipients: teammates who are emailed when a run fails, at most once per clock hour each
After You Publish
Publish makes the Workflow live. From there:
Test with Debug. Pick a real CRM record and choose Preview to see exactly what the Workflow would do without creating anything, or Run and Create Records to create a real project (it is tagged as a debug run). You can also ignore the trigger rules to test a record that doesn’t match yet. Debug runs against your saved draft, so you can test before you publish.
Edit safely with drafts and versions. A published Workflow is read-only. Choose Edit from vN to work in a draft, then Publish when you’re ready. The Versions panel lists the draft and every version that has been in use.
Watch your runs. The Runs panel lists every record the Workflow has processed. Search by object, filter by date range and by status (Created, Success, Pending Approval, Declined or Error), and open a run to see the result of each step. An errored run can be re-run once the underlying problem is fixed.
Review the Activity log for changes to the Workflow itself.
Pause and resume. Pausing stops incoming records from being processed. For Salesforce Workflows, OnRamp also tries to remove the trigger from your CRM; resuming puts it back.
Duplicate a Workflow to start a new one from the same setup. See Duplicating a Workflow.
For guidance on building Workflows that stay dependable as your playbooks and CRM change, read Designing Reliable Workflows.
