All case studies

Internal tools / Admin & orchestration

Account Provisioning Console

An internal approval console that turns a pending account request into fully provisioned, default-configured accounts — with one approval and a live view of every step.

ProvisioningApproval WorkflowAutomation

Live demo — click around

Account Provisioning Console
AQ
Pending

8

Processing

2

Completed

147

Failed

3

Rejected

11

Interactive prototype with representative sample data.

The challenge

Onboarding a batch of customer accounts into a tenant is repetitive, error-prone, and easy to get inconsistent: someone has to create each account, remember to apply the right default settings, and activate them — all while another person waits. Requests also need a gate (who's allowed to approve?) and a paper trail (what was approved, by whom, and did it actually succeed?). Doing this by hand doesn't scale and offers no visibility when a step silently fails.

Our approach

I built an approval console where account-provisioning requests arrive automatically (e.g. via webhook) and land in a Pending queue. An authorized approver reviews a request in a detail drawer and either rejects it with a reason or approves it — which kicks off a Step Functions orchestration that authenticates, creates the accounts, applies default settings, and activates them. The UI streams step-by-step progress live and records every action to a history and audit trail, so the same screen handles the decision, the automation, and the accountability.

How it works

1

Requests arrive and queue up

New account-provisioning requests are ingested (e.g. via webhook) and stored in DynamoDB, then surfaced in the Pending tab with tenant, account count, plan, requester, and time.

2

Only authorized approvers get in

Access is gated by Azure MSAL single sign-on on the frontend and an API Gateway custom authorizer on the backend, so every request to the ~14 Go Lambda handlers is checked before it runs.

3

Approver reviews in a detail drawer

Selecting a row opens the request detail, where the approver can reject with a reason or approve to proceed.

4

Approval triggers the orchestration

On approve, an AWS Step Functions state machine runs the four-stage flow: Authenticate, Create accounts, Apply defaults, Activate — auto-creating the accounts with their default settings.

5

Progress streams back live

The console shows the orchestration advancing through each of the four steps in real time, so the approver sees exactly where a run is and when a stage fails.

6

Everything is counted and logged

Status cards track Pending, Processing, Completed, Failed, and Rejected, and a history/audit trail preserves what happened for every request.

Tech stack

SvelteKit 2Svelte 5Azure MSAL SSOAWS Lambda (Go)AWS Step FunctionsAmazon DynamoDBAPI Gateway custom authorizerAWS SAM / CloudFormation

Results

The console replaces manual, one-by-one account setup with a single reviewed approval that fans out into an automated, observable orchestration — giving approvers a clear decision point, live progress on every provisioning run, and a full audit trail. Because provisioning applies default settings consistently through the same state machine every time, outcomes are more uniform and failures become visible instead of silent. (Portfolio case study; quantitative impact figures should be supplied by the project owner.)

Avg. approval-to-active time

Accounts provisioned per run

Manual setup time saved per request

Provisioning success rate

Requests processed to date

Metrics to be populated with the project owner’s real figures.

Ready to Start Your AI Journey?

Let's build AI solutions that save time, reduce costs, and help your business grow. Book a consultation today.

Book a Consultation Talk to an Expert