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 verified staff submission creates a traceable request, checks whether the learner already has an account, provisions one when needed, assigns the correct LearnDash course, and closes the loop with learner and administrator confirmations.

Human checkpoint: Payment and enrollment readiness are verified before submission; this workflow does not process payment.

Stage 1

Request Intake

Human action

Authorized Staff

Confirms payment and enrollment readiness, then submits one controlled request.

Data collection

Google Form

Collects the learner name, email, and selected-course information.

Request record

Google Sheets

Records the timestamp and submitted fields, then supplies structured automation data.

Stage 2

Account Provisioning

Automation

Apps Script

Validates the submission, extracts the LearnDash course ID, and uses email as the lookup key.

Account check

WordPress REST API

Checks whether the learner email belongs to an existing WordPress account.

Decision

Does the learner account already exist?

Yes

Reuse existing account

No

Create WordPress subscriber account

Converged path

Resolved learner account

Both paths continue with one learner account ready for enrollment.

Stage 3

Enrollment & Confirmation

Integration

Zapier

Continues the connected workflow with validated learner and course information.

Enrollment result

LearnDash

Assigns the correct course to the resolved learner account.

Notification

Confirmation

Sends learner access guidance and administrator confirmation, closing the loop.

Sanitized workflow: credentials, private endpoints, authentication details, and learner information are intentionally excluded.

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

Sanitized eLearning enrollment form with learner, course, payment status, and notes fields
Authorized enrollment form
Sanitized learner enrollment confirmation email with password setup and course access buttons
Workflow and confirmation evidence

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%