hp✳SELECTED WORK / 01 Back to work
PRODUCT ENGINEERING / INTERNAL OPERATIONSAKUALITA

Akualita.

Letter Management & Business Travel

Two applications.
Built from daily work.

I proposed a letter management system during my internship, then built a connected application for business travel. Both began with a manual process the team needed to improve.
TWO APPLICATIONS. A SHARED REFERENCE.
01 / PERSURATAN

Request.
Approve.
Issue a number.

ONE OF MANY LETTER TYPESSPPD
NUMBERED ON APPROVAL
Requests · Status · Departments
02 / BUSINESS TRAVEL↗

Budget.
Travel.
Settle.

SPPD · 047

  1. 01 Budget & review
  2. 02 Travel & expenses
  3. 03 Settlement
TWO APPLICATIONS / CONNECTED BY AN APPROVED SPPD

How the applications connect. Illustrated workflow with a sample letter reference.

MY ROLE
Sole developer
Discovery through maintenance
THE BUILD
Next.js · TypeScript
Supabase / Postgres
BUSINESS TRAVEL STATUS
In testing with Finance
Case study snapshot · September 2026

The brief was a website.
The opportunity was in operations.

My internship at Akualita initially focused on website development. While working with internal operations, I noticed that employees requested letters through WhatsApp. Secretaries recorded those requests in spreadsheets and calculated letter numbers manually.

I proposed a Letter Management application to bring that work into a single place. Building it also created a connection to another manual process: business travel, coordinated through Google Forms and WhatsApp.

  1. NOTICE

    Find the work happening between messages and spreadsheets.

  2. PROPOSE

    Turn an operational problem into a product the team can use.

  3. DELIVER

    Build, present, and refine it with the people doing that work.

Every letter request.
One place to follow it.

Letter Management brings employee requests, secretary approvals, automatic numbering, status tracking, and department management into one application.

01 / Letter Management
Akualita Letter Management admin dashboard with request statuses, letter types, department administration, and a recent-request table
Persuratan · Admin dashboard and letter requests.
BEFORE

Messages and a manual log.

Requests arrived through WhatsApp. Secretaries recorded them in spreadsheets and calculated the next letter number by hand.

WITH THE APPLICATION

A request everyone can follow.

Employees submit and track requests directly. Secretaries review them in a centralized dashboard, with numbering handled by the system when a request is approved.

  1. 01

    Submit a request

    Choose the issuing company and letter type. Required fields adapt to the selected type.

  2. 02

    The secretary reviews

    Approve the request or reject it with a reason. Employees can follow its status.

  3. 03

    The number is issued

    Approval creates the official number. Rejected requests do not consume a number.

Number sequences are separate for each company, issuing division, and year. A cancelled number is not reused.

From a form and a chat.
To a coordinated workflow.

Business travel was previously handled manually through Google Forms and WhatsApp, involving the requester (PIC), Finance, SPV Finance, the GM, the cashier, and General Affairs.

I built a second application to bring requests, budgets, approvals, payments, and settlement into one workflow. The system calculates routine amounts, routes work by role, and checks completeness; the responsible people still make the decisions.

In testing with Finance · September 2026

02 / Business Travel
Akualita Business Travel monitoring screen with test requests, role-specific next actions, budgets, and statuses from draft through settlement
Perjalanan Dinas · Monitoring and next actions during testing with Finance.

The next action.
In the right hands.

After the SPPD letter is approved, the travel application coordinates the work across six roles. Each stage makes the next responsibility visible.

A SHARED REFERENCE
APPROVED SPPD047 / SAMPLE
  1. 01Linked travel request
  2. 02Finance → SPV → GM
  3. 03Disbursement & expenses
  4. 04Settlement & closure
1 LETTER = 1 TRAVEL REQUESTILLUSTRATED WORKFLOW

An approved letter opens the next step.

The secretary approves the SPPD travel letter and its official number is issued. Its owner can then use it to start a travel request.

One approved letter belongs to one travel request. The number carries through, without being typed again.

Needs first. Numbers with Finance.

The requester describes the trip and selects what is needed. Finance prepares the budget, then SPV Finance and the General Manager review it.

Prices remain open to updates until the GM approves the budget. Correction requests return to Finance.

Different roles. A shared record.

The cashier disburses the approved personal allowance. General Affairs handles bookings, while actual expenses and supporting documents are recorded.

Each role has a clear responsibility within the same travel record.

Complete the evidence. Close the trip.

The requester submits actual expenses and supporting evidence. Finance, SPV Finance, and the GM review the settlement before the record is closed.

Missing documents hold submission. Outstanding out-of-pocket claims must be decided before the GM closes the trip.

Clear ownership.
Room for correction.

An approval flow needs to handle the moment something comes back. Corrections from SPV Finance or the GM return to Finance, then go through SPV Finance and the GM again.

Each budget decision records who acted, their note, and the total at that moment. Changes between reviews remain visible.

Interactive walkthrough / budget approval

Every return has a way forward.

Workflow illustration
Choose a scenario

Next and Previous move through the selected scenario.

Current step

  • Finance

    Prepare & correct

    Acting role
  • SPV Finance

    Review & return

    —
  • GM

    Final approval

    —

Step 01In review

Needs become a budget.

The requester provides the trip details and a checklist of needs. Finance checks the request, completes the budget, and sends it for review.

Standard review. Step 1 of 4. Finance: Needs become a budget.

A simplified view of the budget flow. Each decision leaves a record of who acted, when, and which budget they reviewed.

Two kinds of money.
Two separate paths.

The initial design offset approved out-of-pocket expenses against the unused allowance. Finance asked for separate records to fit its bookkeeping. I revised the workflow around that requirement.

01 / PERSONAL ALLOWANCE

Return the full
unused balance.

Allowance received
Rp1.200.000
Actual spending
Rp950.000
Returned to the company
Rp250.000
02 / OUT-OF-POCKET CLAIM

Reimburse through
a separate payment.

Transport paid personally
Rp120.000
Claim review
Approved
Reimbursed to the requester
Rp120.000

Illustrative amounts only. An approved claim does not reduce the allowance balance that must be returned.

A clear point to lock the budget.

Master prices can update open budgets until GM approval. Entries explicitly marked as manually priced are excluded from master-price updates. Once approved, that budget is locked, while the decision history keeps the amounts seen by each reviewer.

With the Akualita team at the office
THE PEOPLE BEHIND THE OPERATIONS

An idea I proposed.
A product I owned.

As the sole developer, I handled product discovery, requirements, system design, full-stack development, deployment, and maintenance. I carried the letter system from an idea I proposed into an application the team could use.

I presented the letter system directly to the director and the people who would use it daily, incorporating their feedback. For Business Travel, discussions and role-by-role testing with Finance shaped the approval and settlement rules.

DISCOVER

Observe the manual process, gather requirements, and propose the solution.

BUILD

Design the system, implement both applications, and handle deployment.

REFINE

Present to stakeholders, test by role, incorporate feedback, and maintain the product.

WHAT CHANGED IN PERSURATAN

Requests are visible.
Numbers are automatic.

Employees can submit and follow requests in the application. Secretaries manage approvals from one dashboard and no longer calculate letter numbers manually.