From incoming information to usable records.
I developed tools for reservation entry, insurance document collection, refund correspondence, and ACH receipt processing at Hawaii Life. I also wrote the operational guides that explain the workflows, checks, and handoffs.
Building from the operating process
I work inside Hawaii Life’s reservation and accounting processes while developing the tools around them. Source information often arrives in email or a report, while the next action belongs in a spreadsheet, document store, or Escapia record. I build the connections between those systems and write the instructions that explain how to use them.
The work spans AI-assisted extraction, browser automation, Apps Script interfaces, Python document processing, and illustrated documentation. The implementations share a concern: keeping the source, the prepared record, and the status of the action understandable.
Reservation emails into Escapia
AI-assisted workflows extract booking information from email and prepare the fields needed for reservation entry and updates. Channel-specific parsers handle Airbnb, Booking.com, Marriott/HVMI, and direct bookings, rather than treating their different rates and fees as interchangeable.
JavaScript browser automation carries prepared information into Escapia. Exact property matching, financial reconciliation, and saved-state checks connect the entry to the source and help the workflow resume from its actual state. Payments and other final financial submissions remain with a person.
Parser QA covers 66 spreadsheet cases. That validation sits alongside the operating checklists, which define the order of actions, exceptions, and handoffs for each booking route.
Insurance records and document ingestion
An Apps Script workbench brings property insurance records, renewal outreach, and certificate collection into one workflow. A responsive upload portal gives owners a focused route to provide documents, while unit validation, upload checks, and duplicate detection help keep those files attached to the right record.
The implementation connects Drive storage with Sheets synchronization. Personalized owner correspondence explains what to provide and where to upload it; staff review remains part of the process.
Refund reports and reliable batches
Refund report ingestion prepares guest-specific Gmail drafts and pairs them with supporting receipts in Drive. Recipient mapping and batch labels keep the prepared notices together for accounting review.
I expanded the system with compressed, chunked storage and SHA-256 integrity checks to support larger report batches while preserving existing reports and completed correspondence. The workflow prepares communication; refund approval and payment execution remain in the accounting process.
Read the Refund Builder case study →
ACH receipts into review packets
A recurring Python pipeline assembles multipage receipts, uses OCR to identify supporting information, matches vendors, and reconciles payment totals. Validated packets and manifests feed an Apps Script queue for Gmail drafts.
The document-processing toolchain combines qpdf, Ghostscript, and Tesseract. Its 34 automated processor tests cover the pipeline’s validation behavior. Packet preparation supports review and correspondence; it does not submit payments.
Guides that carry the process forward
I authored nine illustrated operational handbooks totaling more than 300 pages across reservations, accounting, refunds, and insurance. The guides combine annotated screenshots, linked references, decision paths, and exception handling with shorter references for returning to a task.
Writing the instructions also makes the software’s responsibilities explicit: which information it needs, how a status changes, what must be checked, and when a colleague takes over. That detail helps keep automation and the day-to-day process aligned.
Internal guides and systems contain operational information. Public case studies describe the work without exposing customer records or private application links; writing samples and walkthroughs are available on request.