Tutorial / Using Zapier

Update Salesforce (or any CRM) based on events in Arrows

Update Salesforce (or any CRM) based on events in Arrows

When there’s onboardings happening in Arrows, you often want to keep track of that action in your CRM. Maybe that’s where you run reports, or you want to expose onboarding status to other team members.

Here’s how to update data in your CRM (we’ll use Salesforce in this example) based on events happening in Arrows.

For our example, we’ll update an onboarding record attached to a Salesforce Account when a specific task is completed in an Arrows onboarding plan.

The steps of the Zap will be as follows

  • Trigger Zap when task is done in Arrows
  • Only continue if task name matches the task we’re looking for
  • Find Arrows Customer the task is for
  • Find record in Salesforce
  • Update record in Salesforce to reflect new state

Setting up the Arrows Zapier integration

The first step is making sure you have a Zapier account! After you have an account, click this link to add the official Arrows integration to your account:

https://zapier.com/developer/public-invite/123347/1e96fa087e866d14304202fe2d96be40/

/images/resources/tutorials/updating-salesforce/add-app.png

Trigger Zap when task is done in Arrows

Once you’ve added Arrows to your Zapier account, create a new Zap. Search for Arrows, and choose it as the trigger.

/images/resources/tutorials/updating-salesforce/choose-arrows.png

You’ll be presented with the option to choose what event you’d like the Zap to be triggered on. Arrows can trigger a Zap whenever a phase or task is completed. For this example we’ll choose task completion.

/images/resources/tutorials/updating-salesforce/choose-event.png

After choosing your event type you’ll be asked to sign in to Arrows.

/images/resources/tutorials/updating-salesforce/arrows-sign-in.png

Arrows authenticates Zapier using an API key. When you click “Sign in to Arrows” you’ll be prompted with a form to enter that API key.

/images/resources/tutorials/updating-salesforce/zapier-api-key.png

Like the form says, your API key can be found on your Arrows organization page at https://app.arrows.to/organization#api The Arrows API and Zapier are not available on the free trial or lowest tier plan.

/images/resources/tutorials/updating-salesforce/arrows-api-key.png

Copy your API key and paste it into the Zapier pop up. You’ll be returned to your in-progress Zap and be able to continue to the next step.

/images/resources/tutorials/updating-salesforce/choose-account.png

Now that your Arrows account is connected to your Zapier account, Zapier will test the event you’ve chosen. Critically, you have to have a task or phase that has been completed in your account for the Zapier test to find anything.

/images/resources/tutorials/updating-salesforce/test-trigger.png

Clicking “Test trigger” will call out to Arrows and return some data of a previous task that was completed within your account.

/images/resources/tutorials/updating-salesforce/test-trigger-success.png

Our Arrows trigger is now complete!

/images/resources/tutorials/updating-salesforce/trigger-complete.png

The next step is to set up what happens when this trigger fires.

Only continue if task name matches the task we’re looking for

Since the Task Done event will fire for all tasks that are completed in Arrows, we need to filter down which task we want to update our CRM on. We can do this by adding a Zapier Filter action (highlighted on the right side).

/images/resources/tutorials/updating-salesforce/filter-action.png

With the filter added, we’ll specify what we’re testing the name string against. In this case we’ll check if the task name contains “Schedule onboarding call”.

The Zap will test against the example event from the first task. This means it might be helpful to create an example project in Arrows where you check off a task with the name you’d like to test against. Zapier will fetch the most recent task, so checking off an example task with the right name will let you test the filter fully.

/images/resources/tutorials/updating-salesforce/filter-settings.png

Since the task done from our example trigger matches our filter, our Zap informs us it would have continued when we test it.

/images/resources/tutorials/updating-salesforce/filter-success.png

Find Arrows Customer the task is for

Now that we know the task that’s completed is the one we’re looking for, we’ll look for any extra info we want in Arrows. In this case we’ll retrieve the name of the customer who completed the task.

Add an Arrows action after your filter, and select Find Customer as the action event.

/images/resources/tutorials/updating-salesforce/find-customer.png

Search for the customer based off of the ID included in the task done event.

/images/resources/tutorials/updating-salesforce/search-for-customer.png

Test the action, and you can see we now get the customer information back.

/images/resources/tutorials/updating-salesforce/customer-response.png

Now it’s time to update our CRM…

Find record in Salesforce

After the find customer action, search for and add a Salesforce action. Note that the Salesforce Zapier integration is a premium integration, so you’ll need a paid Zapier subscription to access it.

/images/resources/tutorials/updating-salesforce/choose-salesforce.png

Select “Find Record” as the event action since we need to find the record in Salesforce before we can update it.

/images/resources/tutorials/updating-salesforce/sfdc-find-record.png

Next we’ll have to connect our Salesforce account to Zapier. Click the “Sign in to Salesforce” button.

/images/resources/tutorials/updating-salesforce/sign-in-to-sfdc.png

This will create a popup where you begin the authorization process. Select “production” environment.

/images/resources/tutorials/updating-salesforce/salesforce-environment.png

You’ll then be asked to sign in to your Salesforce account.

/images/resources/tutorials/updating-salesforce/salesforce-login.png

And grant the required permissions to Zapier.

/images/resources/tutorials/updating-salesforce/salesforce-allow-access.png

You’ll then be returned to Zapier where you can select the Salesforce account you just authorized.

/images/resources/tutorials/updating-salesforce/sfdc-post-auth.png

In our example we’ll be looking for a custom Salesforce record called “Onboarding” that shares a name with our Arrows customer. You’ll want to search for whatever record you’re looking to update at this step.

/images/resources/tutorials/updating-salesforce/onboarding-record-search.png

Test this action and you should get the Salesforce record back.

/images/resources/tutorials/updating-salesforce/sfdc-search-result.png

Now for the final step—updating the Salesforce record we just found.

Update record in Salesforce to reflect new state

Add a new Salesforce Zap action, and choose the action event of “Update Record”.

/images/resources/tutorials/updating-salesforce/update-record.png

Choose the type of object you’d like to update (in our example, our custom Onboarding object), and select the ID from the previous step for the Record to Update field.

/images/resources/tutorials/updating-salesforce/update-record-fields.png

Zapier will then call out to Salesforce and add the fields of the object you’re updating. In our case this includes a dropdown for “onboarding stage”, a property on our custom Salesforce onboarding record. We’ll update this dropdown to the value we’d like to update the record to: “Onboarding Call Scheduled”.

/images/resources/tutorials/updating-salesforce/update-dropdown.png

You’ll update your record to whatever new value you want it to have when this specific task is completed in Arrows.

Now test this final step in the Zap.

/images/resources/tutorials/updating-salesforce/update-record-success.png

Zapier will report back that the record was updated, and if you open Salesforce you should see that that record was properly updated there as well.

/images/resources/tutorials/updating-salesforce/salesforce-updated.png

Turn on the Zap

Jump back to Zapier and you should see multiple places where you can turn on your Zap. Go ahead and flip that switch!

Now in our example, whenever a task named “Schedule onboarding call” is completed in Arrows, the Zap will find our custom Salesforce onboarding record, and update the state to “Onboarding Call Scheduled”. The specifics of what fields your Zap is modifying will likely vary, but we’re now successfully sending data out of Arrows and updating our CRM! Depending on what Zapier plan you’re on, there will be a small delay between the event happening and the Zap running.

Don’t hesitate to email benedict@arrows.to if you have any questions or suggestions on this guide or the Zapier integration!

Looking for a tutorial that doesn't exist?
Email help@arrows.to to request one! We'll add it ASAP.

Need help? Email our CEO: dz@arrows.to

© 2021 Arrows. All rights reserved.