Getting started
Add your villa on Bukavilla
Sign up directly from the Bukavilla home page — no Airbnb import needed. You add your villa with a short wizard, and you're running a free direct-booking site under your own subdomain in under five minutes.
Open bukavilla.com on any device — phone, tablet, or laptop.
Tap "List your villa — it's free." The onboarding wizard opens.
Enter your email. We send a one-tap sign-in link — no password.
Open the link on the same device. You land back in the wizard, signed in.
Add your first villa: name, city, bedrooms, bathrooms, max guests. The wizard handles the rest of setup with you.
When the wizard finishes, you land on the dashboard with your villa created, ready for photos and pricing.
Getting started
Set up your brand identity
Your subdomain (yourname.bukavilla.com) carries your villa name, logo, colors, and a hero photo. This is what guests see first.
Open Dashboard → Brand.
Upload your logo (PNG with transparent background works best, 400×400 minimum).
Pick an accent color — this is the color of every button and link on your guest-facing site.
Choose a font pairing. The default (DM Serif Display + Inter) reads as refined hospitality.
Add a cover image — wide-format hero shot of your best villa, 1920×1080 or larger.
Tap Save. Your subdomain updates instantly.
Getting started
Add another villa
Once you're in the dashboard, every additional villa is a one-form add. All your villas share your brand subdomain and dashboard.
Dashboard → Listings → Add villa.
Fill in the villa name as you want guests to see it.
Set bedrooms, bathrooms, and max guests. Be accurate — guests filter by these.
Save. You'll land on the new villa's edit page where photos, pricing, and the rest happen.
Per-villa setup
Upload photos
Photos are the single biggest conversion lever. Order them so the first photo sells the villa in one glance.
Dashboard → Villas → your villa → Details → Photos.
Drag photos in from your file picker. We auto-downscale anything over 1920px wide.
Drag-to-reorder. The first photo is your hero — make it count.
Aim for 15–25 photos. Cover: exterior, living room, every bedroom, kitchen, bathroom, pool, views.
Per-villa setup
Description, amenities, and house rules
Write a description that tells the story of a stay — not a feature list. Amenities and rules are picked from a structured catalog so guests can filter.
Dashboard → Villas → your villa → Details.
Description: 3-4 paragraphs. Lead with what makes the villa special; close with the neighborhood vibe.
Tag amenities — pool, wifi, AC, kitchen, parking. This drives every search filter.
Set house rules — pets, smoking, events, quiet hours. Guests confirm these before booking.
Per-villa setup
Set the location with a Google Maps link
Paste a Google Maps URL — we extract latitude and longitude server-side so guests see your villa pin on the search map.
Open Google Maps and find your villa. Drop a pin on the exact location.
Tap Share → Copy link.
Paste into Dashboard → Villas → your villa → Details → Location URL.
Save. The pin moves on the public villa page within seconds.
Pricing
Base nightly price and cleaning fee
Your base price is the floor. Per-date overrides and length-of-stay discounts stack on top of it. Cleaning is a flat fee added once per booking.
Dashboard → Villas → your villa → Pricing.
Set Base nightly in your local currency (IDR for Bali, USD if you settle in dollars).
Set Cleaning fee — a flat per-booking charge guests see at checkout, not per night.
Save. Search-result cards update immediately.
Pricing
Per-date overrides
Charge more for peak weekends, less for low-season midweek. Override individual dates from the calendar grid.
Dashboard → Villas → your villa → Pricing → Calendar.
Click a date (or drag to select a range).
Enter the override price and confirm. The cell turns gold to indicate "custom."
Clear an override anytime — the cell reverts to base.
Pricing
Length-of-stay discounts and direct-booking promo
Reward longer stays with weekly and monthly discounts. Reward direct bookers with a percent off compared to OTAs.
Dashboard → Villas → your villa → Pricing → Discounts.
Early bird: % off for bookings made N days ahead. Most owners use 30 days / 10%.
Last minute: % off for bookings within N days. Stack at 7 days / 15%.
Weekly: % off for stays ≥7 nights. Monthly: % off for stays ≥28 nights.
Direct booking discount: % off the headline rate for guests who book on Bukavilla vs. Airbnb. This is your moat.
Pricing
Channel markup for Booking.com and VRBO
OTAs take a commission (Booking.com ~15%, VRBO ~5-10%). Mark up the price you push to those channels so your net per night is comparable to direct.
Dashboard → Villas → your villa → Pricing → Channel markup.
Set Booking.com markup — typically the same percent as their commission, e.g. 15%.
Set VRBO markup — usually 5-10%.
Save. The markup applies at push time only — guests on Bukavilla still pay your base rate.
Calendar & availability
Block dates manually
Use the all-villas calendar for personal stays, maintenance, owner reservations. Blocks stay private — guests just see "unavailable."
Dashboard → Calendar.
Click a date cell (or drag to select a range) on the villa you want to block.
Pick "Block dates" and confirm. The cells turn dark gray.
Unblock by clicking the dates again and choosing "Unblock."
Calendar & availability
Sync your Airbnb calendar
Pull Airbnb bookings every 15 minutes via iCal. One-way: an Airbnb booking blocks your Bukavilla calendar, never the other way around.
In Airbnb: Calendar → Availability → Export calendar. Copy the .ics URL.
In Bukavilla: Dashboard → Villas → your villa → Calendar → Import calendar.
Paste the URL and save. First sync runs within 60 seconds.
Verify by checking a few imported dates appear blocked in your Bukavilla calendar.
Calendar & availability
Export your Bukavilla calendar to OTAs
A read-only iCal feed of your Bukavilla bookings + blocks. Paste this into Airbnb, Booking.com, or VRBO to keep them in sync the other way.
Dashboard → Villas → your villa → Calendar → Export feed.
Copy the .ics URL. Treat it as a secret — anyone with the link can see your booked dates.
Paste into the OTA's import-iCal field (e.g. Airbnb → Calendar → Import calendar).
If you ever need to invalidate the URL, rotate it from the same panel.
Channel integrations
Install the Channel Sync extension
A Chrome extension that drains pricing and bookings from Airbnb directly into Bukavilla — bypassing iCal's limitations. Required for two-way sync.
Dashboard → Integrations → Channel Sync.
Tap "Install" — Chrome Web Store opens.
Add to Chrome, then click the extension icon to pair with your account.
Log into Airbnb in the same browser. The extension drains pricing every 24 hours and bookings every 15 minutes.
Channel integrations
Push prices and blocks to Booking.com
With the extension installed, Bukavilla pushes your nightly prices and date blocks to your Booking.com extranet every 24 hours.
Make sure Channel Sync extension is installed and you're logged into Booking.com extranet in Chrome.
In Bukavilla: Dashboard → Villas → your villa → Channel → Booking.com URL. Paste your extranet URL.
The extension picks up the linked villa and starts pushing within 24 hours.
Set channel markup (see Pricing) so you net the same per night despite their commission.
Channel integrations
VRBO push (coming soon)
VRBO's iCal import is unreliable — we're building extension-driven price push to bypass it. Your VRBO markup is saved and will apply once it ships.
In Bukavilla: Dashboard → Villas → your villa → Channel → VRBO URL. Paste your VRBO property URL.
Set VRBO channel markup on the Pricing tab.
Sit tight — the integration ships in the coming weeks.
Payments
Get paid through Stripe Connect
Stripe Connect lets guests pay you with a card. Money lands in your bank in 2-5 days. Bukavilla never holds funds — Stripe pays you directly.
Dashboard → Payments → Stripe.
Tap "Set up" — Stripe's Express onboarding opens.
Provide business info, bank details, and ID verification. Takes 10 minutes.
When Stripe approves you (usually same day), the "Card payment" rail turns on automatically.
Payments
DOKU for Indonesian villa owners
DOKU is the Indonesian payment processor for QRIS, OVO, GoPay, DANA, ShopeePay, and BCA virtual accounts. Pairs perfectly with IDR-priced villas.
Sign up for DOKU at doku.com (requires an Indonesian business / PMA entity).
In Bukavilla: Dashboard → Payments → DOKU.
Paste your DOKU client ID and secret key. Toggle "Enable DOKU."
Guests will see "Pay with DOKU" at checkout — they pick QRIS, OVO, etc. and money lands in your DOKU dashboard.
Payments
Direct payment methods — bank, PayPal, Wise
Beyond card and DOKU, you can list direct payment methods: bank transfer, PayPal, Wise, Zelle, even crypto. Guests follow your instructions outside of Bukavilla.
Dashboard → Payments → Direct methods.
Tap "Add method" and pick the kind (bank transfer, PayPal, Wise, etc.).
Fill in the account details. These are stored encrypted and shown only to guests at checkout.
Guests pick the method at checkout, follow your instructions, and confirm payment in the inbox.
Payments
The "Discuss with host" inquiry flow
When a guest can't use any configured payment method, they hit "Discuss with host" — a request that hits your inbox with the booking details pre-filled.
Guest taps "Discuss with host" → composes a request → hits Send.
You get a push + email + inbox message. Reply with how they should pay.
Guest confirms payment from the booking detail page. You get notified and confirm receipt to lock the booking.
Dates are held for 48 hours while you negotiate — if no agreement, the hold expires.
Inbox & messaging
Guest inbox
Every guest interaction — inquiries, bookings, refund requests — lives in one inbox. Threads carry the booking context so you never lose the chain.
Dashboard → Inbox.
Tabs filter by source: guest messages (Bukavilla), platform support (us reaching out), refund requests.
Click a thread to open the conversation. Reply inline — guests get an email + push.
Threads carry the booking detail in the right pane (or below on mobile) — you always see check-in dates, total, and payment status.
Inbox & messaging
Saved replies
Templates for messages you send repeatedly — check-in instructions, wifi password, area tips. Pick from a dropdown when composing.
Dashboard → Inbox → Saved replies.
Tap "Add template." Pick a category (general, booking confirmation, check-in reminder, checkout instructions).
Write the body. Use merge fields like {{guest_name}}, {{check_in_date}}, {{villa_name}}.
Save. When replying to a guest, tap the template dropdown and the body fills in with merged fields.
Inbox & messaging
Automated guest messages
Saved replies can auto-send on a schedule — booking confirmation, 24 hours before check-in, checkout instructions. Defaults are on for every villa.
Dashboard → Inbox → Saved replies. Filter by category "Check-in reminder."
Edit the body to match your villa's check-in flow. Set "When to send" to "24 hours before check-in" or pick a custom time.
Save. Future bookings auto-receive the message at the right moment.
Turn off automation for a category by deleting the template — platform defaults stop firing too.
Inbox & messaging
WhatsApp deep-link CTAs
Set your WhatsApp number in the brand editor and guests see a "WhatsApp host" button on your villa page. Tapping opens WhatsApp with a Bukavilla-branded message pre-filled — no Cloud API costs.
Dashboard → Brand → WhatsApp number.
Paste your number in international format (+62...).
Save. The WhatsApp button appears on every villa page under your brand.
Guest taps → WhatsApp opens with their dates, villa, and a polite intro pre-filled.
Inbox & messaging
Invite managers and co-hosts
If you work with a team — co-host, on-property manager, cleaner — invite them with scoped access. Managers can edit listings and reply to guests but not touch payment routing.
Dashboard → Team → Invite.
Enter their email and pick a role: Manager (most access), Cleaner (operations only), Viewer (read-only).
Optionally scope them to specific villas — useful if a manager only handles one property.
They get an invite email and join after one click.
Bookings & money
Booking states explained
Every booking is in one of three states: pending (awaiting payment confirmation), confirmed (dates blocked, guest notified), or cancelled (refunded or expired).
Dashboard → Bookings.
Pending bookings auto-confirm when payment lands (Stripe/DOKU) — no action needed.
Direct-payment pending bookings need you to confirm receipt from the inbox thread.
Cancelled bookings unblock dates immediately. Refund processing runs in the background.
Bookings & money
Refunds and cancellations
Guests request refunds from the booking detail page. The cancellation policy you set at booking time determines what they're entitled to.
Set the cancellation policy per villa (Flexible / Moderate / Strict / Super Strict) on the Details tab.
Guest requests refund → you get a push + email with the policy quote.
Open the booking → tap Approve. Stripe/DOKU processes the refund automatically.
You can approve a partial or above-policy amount manually for goodwill.
Bookings & money
Earnings dashboard
Confirmed-booking revenue rolled up for owner-side reporting. Bukavilla doesn't hold money — these are your numbers for the books.
Dashboard → Earnings.
Monthly chart shows confirmed revenue (cancelled bookings are excluded).
Per-villa breakdown lets you see which properties earn most.
Export to CSV for your bookkeeper.
Bookings & money
Free bookings and platform billing
Your first 3 bookings are free. After that, Bukavilla charges a small flat fee per confirmed booking — much less than OTA commissions.
Dashboard → Billing.
See how many free bookings you have left.
When you cross 3, set up payment for platform fees. You'll get an email a week before.
Cancelled bookings refund your free-booking count — they don't penalize you.
Advanced
Welcome book
A guest-facing landing page with check-in instructions, wifi, house tips, and a curated list of nearby spots. Sent automatically with the booking confirmation.
Dashboard → Villas → your villa → Welcome book.
Fill in wifi network + password, check-in instructions, and house notes.
Add "Local picks" — restaurants, beaches, surf spots. Categorized for guests to browse.
Guests get a link in the booking confirmation that opens the welcome book on their phone.
Advanced
Concierge TV display
A read-only fullscreen display for the villa's smart TV — your photos, weather, local picks, and a "scan to view our other villas" QR. Browser-based, no install.
Dashboard → Villas → your villa → Concierge.
Pair the TV by opening the displayed URL on the TV's browser.
Pick a slideshow source — villa photos or curated concierge photos.
Guests scan the QR to view your other villas, or tap the welcome-book link.
Advanced
PMS integration (Hostaway)
If you already run a PMS like Hostaway, plug it in and Bukavilla becomes another channel — reservations import, availability syncs both ways, the PMS stays the system of record.
Dashboard → Integrations → PMS.
Pick your PMS (Hostaway supported today, Guesty deferred).
Paste your API credentials. We test the connection live.
Map your PMS units to Bukavilla villas. Reservations start importing within an hour.