Automation & Digital Systems

Automated LMS Enrollment and User Provisioning Workflow

Designed and implemented a form-driven workflow that creates WordPress learner accounts when needed, assigns purchased LearnDash courses, and delivers automated access instructions using Google Forms, Google Sheets, Apps Script, the WordPress REST API, Zapier, and LearnDash

Role
Workflow Designer and LMS Administrator
Status
Implemented in live operations
Environment
WordPress and LearnDash LMS
Google Apps ScriptZapierWordPress REST APILearnDashGoogle WorkspaceProcess Automation

Reduced a repetitive multi-step LMS administration process to one authorized form submission

Project Overview

I handled manual learner account creation and course assignment for clients who needed registration assistance. Each verified enrollment required direct work inside the LMS before the learner could begin.

The Manual Process

  1. 01

    Receive a verified enrollment

  2. 02

    Open WordPress

  3. 03

    Search for or create the learner

  4. 04

    Open the learner profile

  5. 05

    Identify the purchased course

  6. 06

    Assign LearnDash access

  7. 07

    Confirm enrollment

  8. 08

    Provide login guidance

The Challenge

The process created repeated administrative work, slower fulfillment, dependency on LMS backend access, and a risk of inconsistent handoffs between payment confirmation, enrollment, and learner guidance.

Design Objective

I wanted a controlled staff-facing interface that reduced backend work while retaining human payment verification. Automation begins only after an authorized staff member confirms the enrollment.

Solution Architecture

A form submission creates a traceable request, provisions the learner account when needed, enrolls the user, and closes the loop with confirmations.

Key Technical Decisions

Email as learner identifier

A consistent lookup key supports existing-account checks and new-user provisioning.

Course IDs in readable selections

Recognizable course labels also contain the matching LearnDash course ID.

Formula-based ID extraction

The response sheet extracts the course ID before passing it into enrollment.

REST API account creation

Apps Script creates WordPress subscriber accounts when no learner exists.

Existing and new users

The workflow supports both paths before course access is assigned.

Automated access guidance

Emails provide login or password-setting instructions and notify administrators.

My Contribution

  • Mapped the manual process and designed the form and sheet structure.
  • Researched and configured the integrations and course-ID transformation.
  • Used AI assistance to draft the initial Apps Script.
  • Configured and tested the WordPress API connection and built the Zapier workflow.
  • Tested new-user and existing-user scenarios, configured LearnDash notifications, and maintained the live workflow.

Outcome and Operational Value

  • Transformed a repeated backend process into one authorized submission.
  • Reduced manual WordPress and LearnDash navigation.
  • Created a consistent learner onboarding experience.
  • Allowed staff to initiate enrollment without performing the full backend process.
  • Provided automatic learner and administrator confirmation.
  • Retained a timestamped request log.

Selected Screenshots

What Worked and What I Would Improve

What worked

A familiar form gave staff one controlled entry point, while connected systems handled account checks, provisioning, enrollment, logging, and communication consistently.

What I would improve

  • Add explicit payment-status validation and Submitted, Completed, and Failed states.
  • Send direct error alerts and add idempotency and duplicate-run protection.
  • Use deterministic sequencing between account creation and enrollment.
  • Adopt safer secret storage and least-privilege API credentials.
  • Handle exact API errors and expose actionable failure information.
  • Use a course reference table instead of parsing IDs from labels.
  • Replace the free-text learner name with structured name fields.

Reflection

“This was my first end-to-end workflow automation. It showed me that the work I enjoy most is not simply completing administrative tasks faster, but redesigning the underlying process so systems can perform repetitive work consistently. It also taught me that a successful automation must be secure, observable, maintainable, and designed around the people using it.”
Back to Projects
© 2026 Ken Gilmer P. Macawili. All Rights Reserved.
0%