Technology

Cloud-native.
AI-augmented.
Built to hand off.

Every technology decision at Zali2Bali is made against one filter: does this work as well for client number fifty as it does for client number one? That question eliminates a lot of attractive shortcuts.


Architecture principles

Not tool choices. Constraints.

One master, many clones

The GoHighLevel master snapshot is the single most important architectural decision. Build once, clone per client. No bespoke builds that depend entirely on the founder's memory.

Official channels only

We don't build on workaround tools that evade platform detection. Every WhatsApp integration uses an official BSP. Workarounds create technical debt that becomes a client-retention risk.

AI as copilot, human as pilot

AI handles the immediate-response and qualification layer. Humans handle anything involving payment, complaint resolution, or judgment the model shouldn't be trusted with alone.

Isolation over convenience

Every client is a separate sub-account. Shared infrastructure is convenient — until one misconfiguration touches every client simultaneously.

Documented over tribal

Every workflow is built with a Build Brief, every client delivery runs a QA checklist, every process has a written SOP. The system should survive a founder being unavailable.


Reference architecture

How a guest inquiry becomes a booked stay.

Every client's system is a configuration of this architecture, not a one-off build. Tier differences determine which layers are active and how sophisticated each step is.

01 Guest message
WhatsAppInstagram DMWebsite form
02 API layer
WhatsApp BSP (official)Meta Graph APIWebhook
03 Intelligence layer
Growth/Scale
Amazon Bedrock LLMKnowledge base RAGIntent classification
04 Automation layer
GoHighLevel WorkflowsMake.com / n8nAWS Lambda
05 CRM & data
GHL Sub-account (per client)Contact + Opportunity createdTask assigned to staff
06 Output
Instant guest replyStaff notificationBooking confirmation

Technology stack

What we build with and why.

AI & Intelligence

Amazon BedrockPlanned

Foundation model access for natural-language guest qualification and FAQ handling — via AWS-managed API, not self-hosted inference.

LLM-powered agentsIn use

Conversation flows that understand free-form guest text, extract intent, and route accordingly — not keyword matching.

Knowledge base RAGIn use

Per-client FAQ and property-policy knowledge bases that ground every AI response. No improvised answers on pricing or policy.

Automation & Integration

GoHighLevel (GHL)In use

CRM, workflow automation, and pipeline management for every client. Master-snapshot model: built once, cloned per client via GHL's native snapshot feature.

WhatsApp Business APIIn use

Official BSP integration — not the consumer app. Enables multi-agent routing, automation, and webhook connectivity that the free app cannot provide.

Make.com / n8nIn use

Middleware for complex cross-platform workflows — connecting WhatsApp, CRM, Instagram, and custom webhook endpoints.

Meta Graph APIIn use

Instagram DM integration to unify social and messaging inquiries into a single CRM pipeline.

Cloud Infrastructure (AWS)

Amazon EC2 / ECSPlanned

Compute for webhook handlers and automation middleware as client count scales beyond what serverless alone handles efficiently.

AWS LambdaPlanned

Event-driven serverless functions for AI model calls, CRM webhooks, and per-client automation triggers. Scales to zero between guest inquiries.

Amazon S3 + CloudFrontPlanned

Static asset delivery and media storage for client booking websites. CDN distribution ensures fast load times for international guests.

Amazon RDSPlanned

Relational database for multi-tenant client metadata, audit logging, and performance reporting as the client base grows.

Amazon SESPlanned

Transactional email for automated booking confirmations, follow-up sequences, and monthly performance reports to clients.

AWS CloudWatchPlanned

Monitoring and alerting for automation failures, unusual response-time spikes, and per-client system health.

AWS Secrets ManagerPlanned

Secure credential storage for per-client WhatsApp BSP tokens, API keys, and CRM integration credentials.

Amazon Route 53Planned

DNS management for client booking websites and the Zali2Bali platform domain.

AWS IAMPlanned

Fine-grained access control between service components — no shared credentials, no over-permissioned roles.

Amazon ECRPlanned

Container registry for Docker images used in automation middleware and webhook processing services.

Delivery & Web

Cloudflare PagesIn use

Static hosting and global CDN for the Zali2Bali website and client booking sites. Workers for edge-side logic.

Next.js 15In use

Framework for all web properties — server components, static generation, and edge-compatible deployment.

Cloudflare R2In use

Object storage for media assets without egress costs — important for a multi-client model with villa photography.

Security & Compliance

WhatsApp official BSPIn use

All WhatsApp integration uses an officially registered BSP — no third-party workaround tools that risk account suspension.

Data isolationIn use

Every client runs in a separate GHL sub-account. No cross-client data access, no shared credentials.

Credential managementPlanned

AWS Secrets Manager for API keys; no credentials in code repositories or environment variables in production.

Data & Analytics

Cloudflare AnalyticsIn use

Privacy-friendly website analytics without cookie consent requirements — important for Bali's international guest base.

GHL ReportingIn use

Per-client monthly performance dashboards — response time, inquiry volume, lead-to-booking conversion.

AirDNA market dataIn use

Referenced for market sizing, competitor occupancy benchmarking, and client audit conversations.


Why AWS

AWS is the infrastructure layer that scales with the business, not ahead of it.

Zali2Bali starts small by design — serving individual villa management companies in Bali. But the architecture is built for the second phase, where dozens of clients run simultaneously with automated delivery, and the founder's attention isn't the binding constraint on each build.

AWS solves that transition point cleanly. Lambda means webhook processing costs nothing between guest inquiries and scales automatically during peak season. Bedrock means we get production-grade foundation model access without managing GPU infrastructure. RDS and Secrets Manager mean the multi-tenant data model is sound before the client base reaches the size where a shared-credential incident would be catastrophic.

The planned AWS integration isn't infrastructure for its own sake — it's the specific services that solve the specific bottlenecks that emerge at 20, 50, and 100 clients. We know what those bottlenecks are because we designed the delivery process first and the infrastructure second.


Infrastructure built for scale. Delivered at startup speed.

Every client system goes live in under two weeks and runs on the same architecture we use for Zali2Bali itself.

Talk to us