Step types
One rule per slot
Rules are evaluated inorder. For each slot, the first enabled rule whose targeting matches the stay wins, and every later rule for that slot is skipped.
This makes ordering meaningful. A specific rule must be above a general rule, or it never applies:
damage_waiver and agreement use different slots, so both can apply.
Creating a rule
Call Create Verification Rule to add arrival details to every stay. Omittargeting to match every stay:
requiredFields must be a subset of the collected fields. The API rejects eta when collectEta is false.
The following rule adds a deposit for long stays:
The other six step types
The other six step types
Agreement. A document to sign, with no charge attached. Pricing an agreement is rejected; use Damage waiver. A signature that can carry a price. Mandatory fee. Same shape as a deposit but non-refundable, so no Additional questions. Question Other guests. Set ID check. Collects an identity document. It requires
damage_waiver instead.model is flat or per_night. capInCents limits a per-night total and must be at least amountInCents.releaseDelayDays.id values must be unique within the rule. Select questions need at least two options. Other question types take no options.minGuests, maxGuests, or both. maxGuests is limited to 50. A rule supports a maximum of 20 fields. Each field needs a unique id.title and instructions. It also supports requireContactPhoto and autoApprove.Targeting
Every criterion you set uses AND logic. Empty or omittedtargeting matches every stay.
exclude_returning_guests drops the rule for guests who stayed before. This is useful for one-time identity checks.
Reordering
Reorder Verification Rules takes every rule in the workspace. Include each currentexpected_updated_at value:
Editing and deleting
Update Verification Rule cannot changestep_type. The supplied config must match the existing step type.
Edit uploaded agreement and waiver documents in the app.
Delete Verification Rule is permanent. Existing stays keep collected data, but new stays do not receive the step.
Priced rules include
security_deposit, mandatory_fee, and damage_waiver with a nonzero price. When a workspace has an active template, these rules require Stripe before you enable them. You can create them before the workspace has an active template.