Self check-in is the feature that turns a rental into a business you can run from another city. It is also the feature behind most of the worst stories: a code sent to an unpaid guest, a lockbox emptied by a previous one, a family standing outside a locked door at midnight with a host who is asleep. This guide covers the hardware choices, the one decision that matters more than the hardware, and the runbook we use when a code fails.
What self check-in means on Airbnb
Airbnb lets a host mark a listing as self check-in when guests can enter without meeting anyone: a lockbox, a keypad, a smart lock, a building staff member who has the guest's name, or a smart lock opened from the guest's phone. The badge is searchable, and for late arrivals it is often the deciding filter. It also carries a promise: that when the guest arrives at the door, the door opens.
Lockbox, keypad, or smart lock?
| Lockbox | Keypad lock | Connected smart lock | |
|---|---|---|---|
| Cost | Lowest | Moderate | Highest, plus a hub or subscription |
| One code per stay | No, one key for everyone | Yes, set by hand or by rule | Yes, programmed remotely |
| Works without internet | Yes | Yes | Usually, with a fallback code |
| Knows who entered and when | No | Some models | Yes |
| Failure mode | Key not returned, box forced | Battery flat, code typed wrong | Hub offline, app account locked |
A lockbox is fine for one unit you can reach in ten minutes. Past that, the inability to change the code per stay is the problem: every former guest still has the key. A keypad lock with a per-stay code is the sensible middle for most portfolios. Connected locks add remote programming and an entry log, at the price of another system that can be offline on the night you need it. Whatever you buy, keep a mechanical key with a trusted neighbour or building staff. Batteries die on Fridays.
The decision that matters more than the lock: when the code goes out
The code is not information. It is access to a building where other people live. So the question is not "how do I send it automatically" but "what must be true before it sends". Two conditions, both checked at the moment of sending:
- The stay is paid. For an Airbnb booking that means Airbnb has collected. For a direct booking paid by bank transfer or cash, it means a person has looked at the proof and marked it verified. Not uploaded. Verified.
- The guest is verified. Airbnb's own verification for Airbnb bookings; your ID check for direct ones, recorded against the booking.
The trap is checking these at configuration time instead of send time. A guest can book, pass both checks, then dispute the payment two days before arrival. A rule that decided last week and fires today will let them in. The rule has to re-evaluate when it fires, and if either condition fails, hold the message, say why, and put it in front of a person. Our automation is built exactly that way; thedoor codes and ID checks page describes the dual gate, and the agent rules that may send a code but may never weaken the gate. If you automate with anything else, ask it one question: what happens if the payment is reversed after the rule was set up?
Timing that works
- Confirmation: tell the guest self check-in exists and that the code arrives separately on the day. Do not include it.
- Morning of arrival: directions, building entrance, parking. Still no code.
- One to two hours before check-in time: the code, the unit number, the validity window, and a one-line "reply here if it does not open". Sent on WhatsApp and in the Airbnb inbox, so there is a copy the platform can see.
- Check-out time: the code stops working. If your lock cannot expire codes, change it that day.
Guests arriving early will ask for the code early. Answer with the cleaning finish time, not the code; the code follows the clean, because a guest walking in on a cleaner is a bad review for both of you. Theguest app shows the code, Wi-Fi, and house notes in one place once it is released, which ends the "can you resend the code" messages.
Where guest ID verification fits
For direct bookings, verification is yours to do, and in many cities it is a legal registration requirement. The practical flow: ask for the ID at booking, not at the door; store it against the booking with a verified-by name and time, not in a chat thread; and let the code release read that record. For Airbnb bookings, rely on Airbnb's verification and follow its current policy on any additional request, which varies by region. The principle is the same either way: the person or rule that releases the code should be able to see, on the booking, that verification happened.
The runbook for "the code does not work"
It will happen. The difference between a two-minute fix and a one-star review is whether the person answering has a script and access.
- Minute 0: acknowledge. "On it, give me two minutes." Silence is what guests remember.
- Minute 1: confirm the basics. Right building, right door, right unit number. Code typed fully, then the confirm key if the lock has one. Codes with a leading zero get mistyped constantly.
- Minute 2: check the record. Was the code actually released, and to this guest? A run history that shows which rule sent what, when, and to which number answers this in seconds. If it was held, the hold reason says why, and clearing it sends the code immediately.
- Minute 3: issue a new code. On a keypad or connected lock, set a fresh one and send it. Do not reuse the master code in a chat message.
- Minute 5: mechanical fallback. The neighbour, the building staff, the key in the safe. This is why the spare key exists.
- Afterwards: write it down. Flat battery, offline hub, mistyped code, wrong unit. A note against the property stops the same failure repeating on the next arrival.
Running self check-in from another city
Everything above assumes nobody is at the property, which is the point. What makes it work remotely is not the lock but the records around it: a booking that carries payment status, ID status, and code status; a rule that reads all three at send time; a run history a colleague can read at midnight; and a cleaner's task board that says the unit is ready. When those exist, self check-in scales to as many doors as you like. When they do not, it scales to exactly the number of doors you can drive to.