I'm always excited to take on new projects and collaborate with innovative minds.

Website

https://krafton.my.id

Social Links

HELLO, I'M KRAFTON NOTGAR

Engineering Software.
Powering Intelligent Systems.

Software Engineer Specialties: Data Engineering, Forward Deployed Engineering, Security Engineering, Financial Technology, Cloud & Infrastructure

I'm Krafton Notgar, a software engineer based in Tanzania, building scalable applications, intelligent data pipelines, secure financial platforms, and production-ready infrastructure. I turn complex business challenges into reliable engineering solutions.

Based in Dar es Salaam, Tanzania Building for Africa and beyond.
~/krafton/systems running
Software Engineer


 

capabilities

Engineering Across the Stack and Beyond.

From application logic to production infrastructure, I design, build, integrate, and secure technology that solves real business challenges.

01

Software Engineering

Designing and developing reliable applications, APIs, SaaS platforms, and enterprise systems built for performance and long-term scalability.

  • Backend
  • Frontend
  • APIs
  • SaaS
  • Distributed Systems
02

Data Engineering

Building Python-powered data pipelines, processing workflows, integrations, and analytical foundations that turn raw information into usable business intelligence.

  • Python
  • Pandas
  • SQL
  • ETL
  • Automation
03

Financial Technology

Engineering payment integrations, transaction workflows, reconciliation systems, and secure financial infrastructure.

  • Payments
  • Reconciliation
  • Ledgers
  • APIs
04

Forward Deployed Engineering

Working directly with business requirements to design, integrate, deploy, and optimize practical software solutions in real operating environments.

  • Deployment
  • Integration
  • Automation
  • Enterprise
05

Security Engineering

Strengthening applications and infrastructure through secure architecture, access controls, monitoring, and security-focused engineering practices.

  • Application Security
  • API Security
  • Monitoring
06

Cloud & Infrastructure

Deploying and operating reliable systems using containerization, automated delivery pipelines, observability, and modern infrastructure practices.

  • Docker
  • Kubernetes
  • CI/CD
  • Linux
  • Cloud



 

selected work

Systems I Have Engineered

A curated selection of platforms, integrations and infrastructure. Each project page has the full details.

View all projects
Live Backend Engineering Data Engineering & Analytics Cybersecurity & Security Analysis API & Systems Integration Infrastructure & Observability

SportSlotBooking

Sportslot Booking is a worldwide sports booking and facility management platform that helps players easily book sports fields, courts, and venues online while enabling facility owners to increase earnings, manage revenue, track income, handle commissions, and...

Software Engineering SaaS Engineering Payment Engineering Database Engineering API Development Booking System Architecture Financial Systems Engineering Full-Stack Development

  • PHP
  • Laravel
  • MySQL
  • JavaScript
  • HTML5
  • CSS3
  • Bootstrap
  • REST APIs
  • Payment Gateway Integration
  • Git
  • GitHub
  • cPanel
Live Software Engineering Backend Engineering Frontend Engineering Data Engineering & Analytics AI Engineering & Automation Cloud & DevOps Engineering Cybersecurity & Security Analysis API & Systems Integration Communication Systems Engineering

AstraCall — Cloud Communications & AI Platform

A cloud communications platform bringing business SMS, OTP verification, voice calling, and AI voice agents into one workspace, with developer APIs and usage-based wallet...

Communication Systems Engineering SaaS Engineering Backend Engineering Frontend Engineering API Integration AI Automation Database Engineering Cloud Deployment Application Security

  • Node.js
  • Express.js
  • React
  • Material UI
  • MariaDB
  • Docker
  • Traefik
  • WebSockets
  • REST APIs
Live Frontend Engineering Payment & Fintech Engineering Cloud & DevOps Engineering

TeePay Website

The public website for TeePay at teepay.me: a fast, animated marketing site that explains mobile money payments for African businesses, with live pricing and admin-manage...

Frontend Engineering Motion & Interaction Design Web Performance SaaS Engineering

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • shadcn/ui
  • Motion
  • WebGL
  • Python
  • FastAPI
  • Docker
  • Nginx
Live Software Engineering Frontend Engineering AI Engineering & Automation Payment & Fintech Engineering API & Systems Integration Forward Deployed Engineering

TeePay Developer Docs

The developer documentation for TeePay's payments API: quickstarts, a full API reference, signed webhooks, hosted checkout, payouts and MCP tools so AI agents can create...

API Infrastructure Developer Experience Payment Engineering Technical Writing AI Integration (MCP)

  • Next.js
  • React
  • TypeScript
  • MDX
  • OpenAPI
  • Tailwind CSS
  • Shiki
  • Docker
  • Nginx
Live Software Engineering Backend Engineering Frontend Engineering Data Engineering & Analytics Cloud & DevOps Engineering Cybersecurity & Security Analysis API & Systems Integration Distributed Systems Engineering Infrastructure & Observability

TeePay Merchant Dashboard

The workspace where African businesses take mobile money payments, send payouts and run their money in one place — payment links, pages, invoices, Control Numbers, analyt...

Payment Engineering Fintech Engineering Full-Stack Engineering Distributed Systems Risk & Fraud Engineering Security Engineering Data Engineering SaaS Engineering

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • shadcn/ui
  • Python
  • FastAPI
  • SQLAlchemy
  • Go
  • PostgreSQL
  • Redis
  • RabbitMQ
  • Docker
  • Nginx
  • Prometheus
  • Grafana
  • OpenTelemetry
  • Jaeger
Live Software Engineering Backend Engineering Frontend Engineering Data Engineering & Analytics Payment & Fintech Engineering API & Systems Integration

Vibration5 — Integrated Booking & Ecommerce Platform

A platform combining appointment bookings, online shopping, digital consent forms and customer notifications in one checkout experience.

Software Engineering Backend Engineering Frontend Engineering Ecommerce Engineering Booking Systems Payment Integration Database Engineering

  • PHP
  • Laravel
  • CMS
  • Blade
  • JavaScript
  • jQuery
  • Bootstrap
  • HTML
  • CSS
  • Git
  • cPanel
Live Software Engineering Backend Engineering Frontend Engineering Database Engineering API & Systems Integration Infrastructure & Observability

Paradise Zanzibar

A travel and hospitality platform connecting accommodation enquiries, personalised trip planning, property management, tour scheduling, invoicing, and online payments for...

Software Engineering Backend Engineering Frontend Engineering Database Engineering API Integration Payment Engineering Workflow Automation

  • PHP
  • MySQL
  • Blade
  • JavaScript
  • jQuery
  • Vue.js
  • Sass
  • Laravel Mix
  • REST APIs
  • Pesapal
  • RapidAPI


 

philosophy

Beyond Writing Code.

I approach engineering by understanding the problem first, designing the right architecture, and building systems that remain reliable beyond deployment.

  1. Step 01

    Understand the Problem

    Start with the real operational challenge, not just the requested feature.

  2. Step 02

    Engineer for Reliability

    Prioritize maintainability, performance, security, and predictable system behavior.

  3. Step 03

    Design for Growth

    Build architecture that supports evolving requirements without unnecessary complexity.

  4. Step 04

    Own the Deployment

    Think beyond development to monitoring, troubleshooting, and production operations.


 

toolkit

My Engineering Toolkit

Languages, frameworks, platforms, and infrastructure technologies I use to build and operate modern systems.

  • Production experience

Programming Languages

  • Python
  • Go — Production experience
  • PHP
  • JavaScript
  • TypeScript
  • SQL
  • Mojo

Backend & Frameworks

  • Laravel
  • FastAPI
  • Node.js
  • Express
  • Django
  • REST APIs
  • GraphQL

Frontend & Mobile

  • React
  • Next.js
  • Vue.js
  • Angular
  • Tailwind CSS
  • Flutter

Data Engineering

  • Pandas
  • NumPy
  • PostgreSQL
  • MySQL
  • MongoDB
  • Redis
  • ETL pipelines
  • Excell — Production experience

Messaging & Distributed Systems

  • RabbitMQ
  • Apache Kafka
  • Protocol Buffers

Cloud & Infrastructure

  • Docker
  • Kubernetes
  • Nginx
  • Linux
  • Terraform
  • AWS
  • Google Cloud

Monitoring & Observability

  • Prometheus
  • Grafana
  • OpenTelemetry
  • Jaeger

Security & Identity

  • OAuth 2.0
  • OpenID Connect
  • RBAC
  • Keycloak
  • HashiCorp Vault


 

experience

Experience Built Through Real Engineering.

Working across software development, business systems, data engineering, integrations, and production infrastructure.

Software Engineer @ Krafton.dev

Present Founder / Personal venture Current Dar es Salaam, Tanzania

Independent engineering practice designing, building and deploying software, data and payment systems for businesses.

Responsibilities

  • Requirements discovery and solution architecture
  • Backend and API engineering
  • Payment integrations and reconciliation
  • Deployment and production support

Freelance Software Engineer @ Client projects

Present Freelance Current Tanzania · Remote

Websites, business systems and integrations delivered for clients such as DM Consultancy Tanzania, Masha Global Link and SportSlot.

Responsibilities

  • Custom web platforms
  • Business process automation
  • Third-party integrations
  • Hosting and maintenance
  • Laravel
  • JavaScript
  • MySQL
  • Nginx

collaborations

Some of Organizations & Projects I've Worked With

Real projects. Real business challenges.

Organizations worked with
15+
Personal venture Products I've built
19+
Industries served
12+
Years of experience
4+

Listed organizations reflect work relationships, not endorsements.


 

case studies

How the Engineering Came Together

Live Case study

E-Commerce Platform

  • Laravel 12
  • MySQL
  • Blade
  • Bootstrap 5
  • JavaScript
  • Shopify Admin API
  • Stripe
  • Pesapal
  • RapidAPI
  1. The business challenge

    Fumba Store needed one commerce experience across its storefront, Shopify catalog, customer product requests, invoices, and several payment methods. Keeping product and order information consistent between systems was especially important: a change made in one place had to appear correctly wherever customers or staff viewed it.

  2. Engineering approach

    I extended a Laravel-based commerce platform with focused plugins for Shopify synchronization, product requests, payments, and operational tools. I designed the integrations around explicit mappings, webhook processing, staff review, and reconciliation commands, with safeguards for payments already in progress.

  3. Solution architecture

    The Laravel storefront and admin panel use MySQL as the local commerce database. Shopify webhooks update mapped catalog, draft-order, and order records. Stripe and Pesapal handle online payments, while callbacks and reconciliation workflows update payment and invoice status. Customer product requests enter an admin review queue before pricing, publication, or invoicing.

  4. Technologies involved

    Laravel 12 power the application and background jobs. MySQL stores catalog, order, invoice, and synchronization data. Blade, Bootstrap, and JavaScript provide the storefront and admin interfaces. The platform integrates with Shopify’s APIs, Stripe, Pesapal, and a shopping search API.

  5. Outcome

    The platform connects product discovery, staff-assisted requests, invoicing, and checkout in one workflow. Staff can review requested products, synchronize Shopify changes, and investigate payment or order mismatches using dedicated admin screens and reconciliation tools. Customers receive a consistent storefront and hosted payment experience.

  6. Lessons learned

    A successful webhook response does not guarantee that two systems now agree. Reliable commerce integrations need clear source-of-truth rules, observable processing, safe retries, and a way to reconcile missed updates. Preserving customer-facing details—such as images, delivery estimates, and invoice links—matters as much as updating the totals.

Live Case study

SportSlotBooking

  • PHP
  • Laravel
  • MySQL
  • JavaScript
  • HTML5
  • CSS3
  • Bootstrap
  • REST APIs
  • Payment Gateway Integration
  • Git
  • GitHub
  • cPanel
  1. The business challenge

    The sports facility industry continues to face operational challenges caused by manual booking processes, fragmented payment collection, limited financial visibility, and inefficient facility management.

    Many sports facilities rely on phone calls, WhatsApp conversations, and handwritten records to manage reservations. These traditional methods can lead to overlapping bookings, missed revenue opportunities, scheduling conflicts, and difficulties tracking customer payments.

    Facility owners also face challenges managing multiple sports grounds, monitoring peak and off-peak demand, handling partial payments, and reconciling transactions received through different payment channels.

    From the customer's perspective, discovering available sports facilities, comparing prices, and reserving suitable playing times can be unnecessarily complicated.

    The engineering challenge was to design and develop a scalable, multi-sport booking platform capable of connecting players with sports facilities while providing operators with centralized booking management, financial tracking, and operational control.

    Sportslot Booking was developed to address these challenges through a unified digital ecosystem supporting sports facility discovery, reservations, payment management, and business operations.

  2. Engineering approach

    Sportslot Booking was engineered using a modular software architecture designed to separate customer-facing booking experiences from facility management and administrative operations.

    The development process focused on creating a reliable booking engine capable of managing multiple sports, facilities, time slots, pricing structures, and customer reservations.

    A centralized booking workflow was designed to validate facility availability, prevent conflicting reservations, and support consecutive time-slot selection.

    The system also incorporates flexible payment management, allowing bookings to be recorded with full or partial payments while tracking outstanding balances.

    A key engineering priority was establishing financial transparency between platform administrators and facility operators.

    Payment records distinguish between funds received by the platform and payments collected directly by facility owners. This supports commission calculations, financial reporting, and withdrawal management.

    Separate administrative and partner dashboards provide role-specific access to bookings, financial information, facility configurations, and operational tools.

    The platform was structured for future expansion into additional sports, geographic markets, and integrations without requiring major changes to its core architecture.

  3. Solution architecture

    Sportslot Booking follows a modular, database-driven web application architecture built around the Laravel ecosystem.

    The architecture consists of several interconnected components:

    1. Customer Booking Interface

    Provides sports facility discovery, availability searches, slot selection, booking creation, and payment interactions.

    2. Booking Management Engine

    Handles booking validation, time-slot availability, consecutive slot selection, scheduling rules, and reservation conflict prevention.

    3. Facility Management Module

    Enables facility operators to configure sports grounds, manage availability, establish pricing, create reservations, and monitor booking activity.

    4. Payment and Financial Tracking

    Records booking amounts, partial payments, outstanding balances, payment recipients, platform commissions, and financial settlement information.

    5. Partner Dashboard

    Provides facility owners with booking management tools, revenue summaries, payment tracking, and withdrawal-related information.

    6. Administrative Dashboard

    Offers centralized oversight of facilities, bookings, financial transactions, commissions, and partner operations.

    7. Database Layer

    Uses relational database structures to maintain relationships between customers, sports facilities, booking slots, payment records, and financial reporting data.

    8. Access Control

    Separates administrative, facility operator, and customer responsibilities through role-based application permissions.

    The architecture emphasizes modularity, financial traceability, maintainability, and support for future platform growth.

  4. Technologies involved

    Backend Engineering:
    PHP, Laravel, Laravel MVC Architecture, RESTful API Design

    Frontend Engineering:
    JavaScript, HTML5, CSS3, Bootstrap, Blade Templates, Responsive Web Design

    Database Engineering:
    MySQL, Relational Database Design, Database Migrations, Data Validation, Query Optimization

    Booking Infrastructure:
    Time-Slot Scheduling, Availability Management, Booking Conflict Validation, Dynamic Pricing, Reservation Management

    Financial Engineering:
    Payment Gateway Integration, Partial Payment Tracking, Commission Calculation, Revenue Reporting, Financial Reconciliation

    Software Architecture:
    Modular Application Development, Role-Based Access Control, Service-Oriented Application Design

    Development and Deployment:
    Git, GitHub, Composer, cPanel, Linux Hosting, Application Configuration

    Business Intelligence:
    Booking Analytics, Revenue Monitoring, Partner Financial Reporting, Operational Dashboards

  5. Outcome

    Sportslot Booking resulted in the development of a centralized digital platform designed to simplify sports facility reservations and improve operational visibility for facility owners.

    The platform brings together sports facility discovery, online booking workflows, availability management, payment tracking, and administrative reporting.

    Players can explore available sports facilities and select suitable booking times through a structured reservation interface.

    Facility operators gain access to dedicated dashboards for managing schedules, monitoring reservations, updating facility information, and reviewing financial activity.

    The financial management architecture provides visibility into booking values, amounts collected, outstanding balances, platform commissions, and payments received by different parties.

    The project also established a modular foundation for supporting multiple sports categories and expanding into additional markets.

    Sportslot Booking demonstrates the application of software engineering principles to a real-world marketplace problem, combining reservation systems, financial workflows, database architecture, and multi-user business operations.

    The platform continues to provide opportunities for further development, optimization, and commercial expansion.

  6. Lessons learned

    Developing Sportslot Booking provided valuable engineering experience in building marketplace platforms that combine reservation management, financial operations, and multi-role application architecture.

    One of the most important lessons was understanding that a booking platform requires more than a calendar and payment interface.

    Reliable reservation systems must account for concurrent booking attempts, scheduling conflicts, partial payments, cancellations, and operational changes.

    Another important lesson involved financial data integrity.

    Booking revenue, actual payments received, outstanding balances, platform commissions, and withdrawable funds represent different financial concepts and must be tracked independently.

    The project reinforced the importance of designing clear financial records rather than relying on simplified revenue calculations.

    Building separate administrative and partner dashboards also demonstrated the importance of role-based permissions, data isolation, and consistent business logic across different application interfaces.

    The development process strengthened practical knowledge of modular Laravel architecture, relational database modeling, payment workflows, application security, and scalable system design.

    Most importantly, Sportslot Booking demonstrated how engineering decisions directly influence business operations, financial transparency, user experience, and the long-term maintainability of a digital platform.

Live Case study

AstraCall — Cloud Communications & AI Platform

  • Node.js
  • Express.js
  • React
  • Material UI
  • MariaDB
  • Docker
  • Traefik
  • WebSockets
  • REST APIs
  1. The business challenge

    Businesses often manage voice calls, SMS, verification messages, and automation through separate provider dashboards. This creates fragmented workflows and makes it harder to track usage, control access, and integrate communication into other applications.

    The challenge was to adapt an existing communications application into a cohesive platform with consistent branding, customer controls, developer access, and dependable deployment.

  2. Engineering approach

    I worked incrementally across the backend, customer interface, provider callbacks, and deployment configuration.

    I introduced shared messaging logic for dashboard and API requests, with request validation, wallet reservations, idempotent retries, and delivery-state tracking. Automatic OTP generation added expiry, attempt limits, and single-use verification.

    For voice communication, I extended number management, browser calling, IVR routing, and AI call flow integrations. Feature permissions let administrators enable selected capabilities for individual users.

    Security work addressed authentication, authorization, webhook verification, sensitive configuration handling, file access, and outbound request validation.

  3. Solution architecture

    A React customer interface communicates with a Node.js and Express backend. MariaDB stores customer accounts, permissions, balances, messaging records, call configuration, and integration state.

    Server-side adapters connect the application to SMS and telephony providers. Provider callbacks update delivery and call records, while WebSockets support relevant real-time voice workflows.

    Docker isolates the application and database. Traefik routes domain traffic and manages HTTPS certificates. Persistent volumes retain uploaded media and theme settings across application rebuilds.

    Connected Apps provides a foundation for customer-approved workspace connections with Karflow, using scoped access and reciprocal connection verification.

  4. Technologies involved

    Node.js and Express power the application backend, with React and Material UI providing the customer interface. MariaDB supports persistent application data.

    Stripe supports card checkout for configured purchases.

    Docker, Traefik, and Let’s Encrypt support deployment and HTTPS. REST APIs, WebSockets, signed callbacks, and idempotency controls connect the platform’s components.

  5. Outcome

    AstraCall is publicly available at astracall.cc with a dedicated brand, a responsive marketing website, and customer authentication pages.

    The deployed platform includes messaging APIs, automatic OTP workflows, configurable SMS purchasing and message limits, voice management, and administrator-controlled feature access.

    Deployment checks verified the updated frontend, database migrations, HTTPS, and persistent theme selection. Fourteen automated checks passed across SMS settings, security, and Connected Apps. These checks establish specific functional safeguards; they do not represent a comprehensive security audit or a production-scale load test.

  6. Lessons learned

    Communication integrations require careful handling of asynchronous events. A provider accepting a request does not mean a message was delivered or an action completed.

    Idempotency and transactional balance updates are essential when retries can create duplicate messages or charges. Provider-specific call identities and callback formats also need explicit handling.

    Persistent configuration matters as much as application code: theme settings, uploaded files, and credentials must survive rebuilds. Incremental deployments and rollback backups helped introduce changes while preserving existing services.

Live Case study

TeePay Developer Docs

  • Next.js
  • React
  • TypeScript
  • MDX
  • OpenAPI
  • Tailwind CSS
  • Shiki
  • Docker
  • Nginx
  1. The business challenge

    Developers in Africa often find payment documentation thin, out of date or locked behind sales calls. For TeePay to win builders, a developer needed to go from zero to a confirmed payment quickly, with examples that actually match the live API.

  2. Engineering approach

    The docs were treated as part of the product. The API reference is generated from the same OpenAPI specification the API uses, guides are written in MDX next to real request and response examples, and every example uses the real field names, statuses and webhook headers. The docs state clearly what is not available yet (for example sandbox money movement) instead of hiding gaps.

  3. Solution architecture

    - Next.js app using Fumadocs with MDX content and an OpenAPI-driven API reference.
    - Syntax-highlighted, copyable code samples (cURL, Node.js) and webhook signature verification examples.
    - Sections for environments, authentication, idempotency, errors, webhooks, payments, Control Numbers, payouts and AI/MCP.
    - A custom "hacker" visual layer (code rain, custom cursor, motion buttons) that respects reduced-motion settings.
    - Deployed as its own container behind Nginx at docs.teepay.me.

  4. Technologies involved

    Next.js, React, TypeScript, MDX, OpenAPI, Tailwind CSS, Shiki, WebGL, Docker, Nginx.

  5. Outcome

    A public, searchable documentation site at docs.teepay.me that walks a developer from an API key to a verified, webhook-confirmed payment, documents MCP tools for AI agents, and stays consistent with the live API because the reference is generated from the specification.

  6. Lessons learned

    - Generate the reference from the spec; hand-written references drift.
    - Say what isn't available yet — developers trust honest docs.
    - One clear end-to-end example (one request, start to finish) does more than many fragments.

Live Case study

Vibration5 — Integrated Booking & Ecommerce Platform

  • PHP
  • Laravel
  • CMS
  • Blade
  • JavaScript
  • jQuery
  • Bootstrap
  • HTML
  • CSS
  • Git
  • cPanel
  1. The business challenge

    Vibration5 needed to support service bookings and retail purchases without making customers complete separate checkout journeys. The platform also needed editable service pages, consent collection for selected treatments and a practical dashboard for staff.

    A central challenge was keeping bookings, product orders, payment records and customer communications consistent when a cart contained both services and physical products.

  2. Engineering approach

    I extended an existing Laravel and CMS application, building on its ecommerce, administration and content editing capabilities.

    I connected appointments to ecommerce order lines and aligned the confirmation workflow around the contents of each checkout. I also built editable service category pages, product tag filtering and online consent forms with server-side validation.

    Verification included targeted standalone regression checks for booking email behaviour, order total preservation, consent rendering, product tag assignments and address migrations, alongside browser layout checks at multiple viewport widths.

  3. Solution architecture

    The presentation layer uses Blade templates, configurable shortcodes and responsive styling for service pages, product listings and checkout.

    The booking module manages services, practitioners and appointment records. Booking references connect appointments to ecommerce order lines, allowing products and services to share a cart and payment summary.

    The confirmation workflow reads the order contents and adds appointment information and relevant consent links to the order email. Checkout bookings reference the order payment, preserving the combined order lines and total.

    The consent module validates submissions, stores encrypted response payloads and provides permission-controlled review screens. Signed links associate relevant consent forms with bookings.

    Database migrations introduce new fields and configuration changes, while the cPanel deployment script runs migrations, publishes theme assets and clears application caches.

  4. Technologies involved

    PHP and Laravel support the application logic, validation, models, migrations and notification workflows. CMS provides the administrative interface, ecommerce foundation, content management and email template configuration.

    Blade, JavaScript, jQuery, Bootstrap and custom CSS support the storefront and responsive interactions.

    Laravel encrypted casts protect consent response payloads, and signed URLs support booking-linked consent forms.

    Git and cPanel deployment scripts support releasing application changes and refreshing published assets.

  5. Outcome

    The implementation supports product-only, booking-only and mixed-cart purchases with confirmation content tailored to each case.

    Staff can maintain service category content, assign product tags and review consent responses through the administration interface. Customers can filter products and complete relevant consent forms online.

    Checkout confirmation logic preserves the combined order total and avoids sending a separate customer booking confirmation for cart purchases. Targeted local regression checks passed; production email delivery and complete checkout behaviour require verification in the deployed environment.

  6. Lessons learned

    Combining bookings and ecommerce requires agreement across order lines, payment records, appointment status and customer communication. Updating an email template alone cannot resolve inconsistent checkout totals.

    Existing CMS customisations and published asset caches also need attention: saved email templates can retain older wording, and outdated stylesheets can hide frontend fixes.

    Configurable content sections give staff more control over routine updates, while migrations make structural changes repeatable. Focused regression checks help verify important behaviours, but they complement rather than replace testing against the deployed database, payment provider and mail configuration.

Live Case study

Paradise Zanzibar

  • PHP
  • MySQL
  • Blade
  • JavaScript
  • jQuery
  • Vue.js
  • Sass
  • Laravel Mix
  • REST APIs
  • Pesapal
  • RapidAPI
  1. The business challenge

    The business needed to manage accommodation enquiries, personalised travel requests, property submissions, tours, and payments through a connected workflow.

    Different services required different information and pricing rules. Accommodation depended on dates, occupancy, inventory, and seasonal rates, while tours and safaris needed separate adult and child prices.

    The platform also needed to distinguish supplier costs from customer selling prices, support property-manager approvals, and keep future tour commitments visible to the operations team.

  2. Engineering approach

    I extended the platform around the business's operational workflows: collecting structured travel requirements, reviewing requests, preparing invoices, managing properties, and scheduling services.

    I separated supplier guide prices from customer market prices so invoice generation could use selling prices without exposing internal costs. External accommodation data required explicit room mappings and date-specific rate handling.

    I added configurable administration settings, permission-controlled management screens, request diagnostics, and responsive customer forms to support ongoing changes without repeatedly editing application code.

  3. Solution architecture

    A Laravel application connects the public website, customer accounts, property-management workspace, and administration dashboard.

    Relational records store properties, rooms, availability, trip requests, service prices, invoices, and payment information. Tour and safari services have identifiable catalogue entries with separate adult and child supplier costs and selling prices.

    External accommodation integrations associate provider room identifiers with local rooms and retain rate information for the requested stay. Payment processing connects the application to Pesapal through server-side requests and callback handling.

    The administration workflow connects request review, invoice preparation, and tour scheduling, while role-based permissions control access to operational tools.

  4. Technologies involved

    PHP for application logic, validation, and routing; MySQL for relational data; Blade, JavaScript, jQuery, Vue.js, and Sass for interface development; Laravel Mix for frontend assets; REST APIs for external accommodation data; and Pesapal for payment integration.

  5. Outcome

    The platform provides a connected workspace for travel enquiries, property operations, service pricing, invoicing, and tour scheduling.

    Structured requests give staff clearer information for preparing travel proposals. Separate supplier and market prices support customer-facing invoice calculations, while room mapping and seasonal availability support accommodation pricing workflows.

    Configurable public price visibility allows the business to switch between displaying room prices and an enquiry-led experience.

  6. Lessons learned

    Travel pricing needs clear boundaries between nightly rates, full-stay totals, supplier costs, and customer selling prices.

    External room names are insufficient for reliable matching; explicit identifier mappings are essential. Conditional forms also need matching server-side validation so customers are asked only for information relevant to their selected services.

    Operational tools benefit from structured service records, clear approval states, and useful diagnostics. These foundations also make later automation easier to build and maintain.


 

contact

Have a Complex Problem Worth Solving?

Whether you're building a software platform, integrating business systems, engineering data pipelines, or strengthening production infrastructure, let's discuss the challenge.


 

Your experience on this site will be improved by allowing cookies. Cookie Policy