Portfolio

Claimed Listing

Tech Stack: 6
Purpose: Assign custom post to the claimant and sync data
Explanation: After a course operator claims their listing, we need to trigger some workflows within WordPress to assign the Gravity Forms ownership to the claimant. This scenario also completes creates folders in Google Drive for later use, updates the master spreadsheet and updates the CRM for an onboarding email sequence. The last module includes a webhook that triggers another scenario. I used this process to reduce the friction to the person on the other end by hiding the normal email verification process into a welcome email with their login information.

Claimed Listing Read More »

Referral Program

Tech Stack: 4
Purpose: Assign dynamic commissions based on referral of golf courses.
Explanation: Because commissions vary by state, it didn’t make sense to give the same amount across the country. Rather than create different forms for each state, I created this scenario to award commissions based on the number of golf courses active in the state.

Referral Program Read More »

Campaign Updater

Tech Stack: 3
Purpose: Find hot leads and clear email inbox
Explanation: Similar to the previous scenario, this one tracked opens and clicks from a chrome extension. Triggered hourly, it will search for emails with certain words, parse the email, update the appropriate lead sheet, and then archive the email. I can reduce the upkeep on this scenario by improving on the router logic and combing all the email modules into a single instance as the last arm of the router.

Campaign Updater Read More »

Email Tracker

Tech Stack: 1
Purpose: Track email open counts to determine warm/hot leads
Explanation: In another scenario, we email golf courses and implant a webhook pixel into the email to track opens. Those webhooks are tallied into a Google Sheet and then this scenario totals the opens by email and adds the information to our main database sheet where we can relabel them as warm or hot leads by opens.

Email Tracker Read More »

Dynamic Pricing

Tech Stack: 3
Purpose: Live pricing as offers are added or removed
Explanation: Triggered by the Golf Course Edits scenario, this scenario counts the number of golf courses per state per category (used to determine the correct templates in WordPress). Counts are used to determine pricing for each state and update custom fields so that information is available in real time to customers so they can make educated buying decisions. I can improve this scenario by reducing the number of branches by mapping the dynamic prices to a variable.

Dynamic Pricing Read More »

Golf Course Edits

Tech Stack: 7
Purpose: Update and sync information across platforms when edits submitted
Explanation: Golf courses or admins can revise their offers or business details via Gravity Forms. We use Make to sync that data across WordPress, Google Sheets, and Airtable for a display map and then, if they change their offer status, change the status of the post to match different templates. The last module triggers a scenario to count courses and determine pricing. I could improve this scenario by mapping variables for the Gravity Form fields and use if-contains logic to reduce the number of branches

Golf Course Edits Read More »

Code Registration

Tech Stack: 7
Purpose: Validate registration codes from gifts and 3rd party vendors
Explanation: Codes are sold from our website and through 3rd parties vendors. Because we wanted to lower the friction on the consumer end and lower customer service requests, we organized codes ahead of time and direct registration forms based on prefixes or number ranges. This removed the need to ask the consumer where their code was purchased, and many times it was a gift so they didn’t know. Branches utilize different templates for membership cards.

Code Registration Read More »

Full Purchase

Tech Stack: 12
Purpose:Complete order processing workflows
Explanation: This scenario is triggered by another scenario that sorts orders by ProductID. In this case, the buyer purchased either a digital or physical membership card. They’re assigned the correct role in WordPress, shipping information is printed, if applicable, or a custom digital membership card created for them. Information is also synced with the CRM, spreadsheets and Facebook Custom Conversions. For digital memberships, we built in a backup image processor when our original vendor had an outage.

Full Purchase Read More »