Selling an upsell creates work — a dinner to cook, a basket to stock, a mid-stay clean. The fulfillment layer hands that work to the right person automatically, tracks whether they said yes, and pays them when it's done. It also covers the biggest recurring job of all: the turnover clean after every checkout.
Everything lives under Communication → Tasks, in five panes: Tasks, History, Checklists, Contacts, and Setup.
To send your cleaner and team their own automatic messages, such as a heads-up for every new booking or a reminder before a checkout, see Team Automations.
For turnover cleans, a checklist sets out the rooms and steps with a photo of how each should look, and your cleaner sends their own photos back step by step. See Cleaning Checklists with Photos.
Add the people who do the work — cleaners, chefs, provisioners, handymen, drivers — under Tasks → Contacts. Each contact has a phone, WhatsApp, and/or email, the roles they cover, how they prefer to be reached, and an optional default rate per job. If you already keep contacts on your listings (the guest-facing "who to call" list), Import from listings pulls them in with one click.
Contacts never need a Haven login. Everything they do happens over text, WhatsApp, email, and a private link.
Messages on a contact's row opens every message between you and that person, across all their jobs, with a box to write to them.
Need a cleaner? Find a cleaner at the top of the roster opens the Haven pro network, a directory of vetted turnover cleaners. The button appears once more than 10 cleaners are listed in the network. Adding one from their profile puts them on your roster and, if you tick listings, makes them the default turnover cleaner there; they are paid to their own Stripe account. Contacts who have a Haven pro account show a Haven pro badge. See Hire a Cleaner from the Haven Network.
A task is one unit of work: one sold upsell line, one turnover clean, or a one-off job you create yourself. The first two are created automatically:
If the upsell (or listing) has a default fulfiller, the offer goes out immediately: a text/WhatsApp/email with the job, the property, the date, the pay, and a deadline to respond (2 hours by default — configurable under Tasks → Setup). The fulfiller replies Y to accept, N to decline, or opens the link to see the full details and respond there.
Tasks are grouped by whose move it is: Needs you (nobody assigned, a payout to approve, a problem reported), Waiting on a reply, Scheduled, Done, and Cancelled. Each row gives the job, the listing, when it is due, who is on it, and how far along the checklist is.
Click a task to open it. The sheet holds everything about that job and every action on it:
Handing an accepted job to someone else withdraws it from the first person, who is told it is off. Their link stops working.
The inbox keeps finished and cancelled tasks for 30 days. Everything older is in History.
Tasks → History keeps every finished task on every listing for good: turnover cleans, upsell jobs, and one-off tasks. Each row gives the date, the listing, who did the job, the guest whose stay it followed, and how many photos, notes, and problems it carries, with the first few photos showing. Rows are grouped by month, newest first. Click one to open the full task with its checklist report.
When an insurer, an OTA's damage team, or a guest dispute asks what the place looked like, filter History to the listing and the dates of the stay, then:
golden-presidio_2026-09-10_make-the-bed_03.jpg).manifest.txt that lists when each photo reached Haven, which area and step it was for, who did the job, and any note or problem written with it.Times are when the photo reached Haven. Photos taken without a signal are sent when the connection returns, so a few may be stamped minutes after they were taken.
Approve records that you looked at a finished job and were happy with it. Send back opens the job again: you write what needs fixing, the person gets your note by text or email, and their job page shows it at the top. Pay for a sent-back job waits until it is finished again.
Neither is required. A finished job you never review stays done.
New task creates a job that is not tied to a booking or an upsell: a deep clean, a repair visit, a delivery to meet. Only the name is required. Listing, due date, instructions, pay, and a checklist are optional, and choosing a person sends the offer straight away.
A card appears on Home → Overview when a contact finishes a job, when nobody could be reached or everyone declined, when a payout needs you, when a problem is reported, and when a contact writes back with something other than Y, N, or DONE. Each opens the task. A contact can also text PROBLEM followed by what is wrong to file a problem report without opening the link. Two optional text alerts, for a finished task and a reported problem, are under Settings → Account & Profile → Notifications.
Every task can carry two sets of photos:
These are photos for the task as a whole. On a task with a checklist, each step carries its own reference photo and its own photo back; see Cleaning Checklists with Photos.
A link that was declined, expired, or withdrawn shows the job's name and status and nothing else.
Under Tasks → Setup:
The checklist a listing's cleans use is set under Tasks → Checklists.
Rates resolve in order: a rate you set on the task itself (in the task's Pay section, or when assigning), else the rule's rate, else the contact's default rate. No rate means no payout — the task still works, money is just handled outside Haven.
When a task with a rate is marked done, a payout is created. Approve it from the task (or turn on auto-pay to skip the approval step). Auto-pay holds back when a checklist photo you asked for is missing or a problem is open, and asks you to look first. To hold every payment until you have approved the job, turn on Wait for me to approve each finished job before the pay goes out under Tasks → Setup. The charge goes on your saved card and the money is transferred to the fulfiller's own Stripe account — they set that up once, through a private link, with the same Stripe onboarding you used. This transfer pays the person who did the job from your card and does not send the guest's upsell payment to another bank. Haven does not support Stripe Global Payouts and does not pay upsells to a different bank than the stay.
If they haven't set up payouts yet, the payout waits and they get the setup link automatically. If you have no card on file, the payout waits and tells you. A failed charge can be retried. Paid is paid — Haven never claws back a completed payout.
New to Haven?
Haven is the direct booking platform these guides are written for — a branded site, secure payments, and guest relationships you own. Build yours free.
Free to build · No credit card · Private until you publish